Inicio / Wikis / Cursos gratis / PHP y MySQL para gentes de letras - Base de datos, includes y formularios

PHP y MySQL para gentes de letras - Base de datos, includes y formularios

(16 opiniones)
Curso gratis creado por Coder. Extraido de: http://www.tomatoma.ws/subsecciones.php?forum_id=27&catid=22&todos=1
08 de Marzo de 2006
Diseño de bases de datosPHP

12 - Base de datos, includes y formularios

TEMA 12 BASES DE DATOS, INCLUDES Y FORMULARIOS


INTRODUCCIÓN
En el tema 11 vimos como podíamos manipular los datos guardados en una base de datos para mostrarlos en nuestras páginas y os prometí que íbamos a hacer las mismas cosas pero utilizando formularios. En realidad no es necesario, puesto que a lo largo de los temas que hemos ido viendo, habéis visto lo suficiente como para que pudierais hacerlo vosotros mismos; de hecho estuve pensando ponerlo como un ejercicio, pero quizá así sea más fácil.

Así que nos vamos a montar una pequeña aplicación web para nuestros refranes:

1º.- Mostraremos nuestros refranes en una página
2º.- ofreceremos la posibilidad de editar o borrar cada refrán
3º.- Tendremos la posibilidad de añadir más refranes a nuestra base de datos.

Para ello vamos utilizar nuestra base de datos, formularios para editar los refranes e introducir nuevos, e includes que nos permitirán situar pequeños trozos de código en otro archivo y “llamarlo” cuando lo necesitemos, ahorrándonos de esta forma tener que escribir el mismo código varias veces.

Ya hemos visto en los temas anteriores el funcionamiento de las bases de datos y de los formularios con php por eso vamos a empezar con los includes que nos van a ahorrar mucho trabajo y en el tema 13 abordaremos los formularios.

En un principio lo había puesto todo en un solo tema, pero se hacía demasiado largo, por ello lo he dividido en dos.

¿ QUÉ SON LOS INCLUDES Y COMO FUNCIONAN?
Los includes permiten incluir el contenido de otro archivo en el script con el que estamos trabajando. Esto nos permite “modularizar” nuestro código de forma que no tengamos que escribir lo mismo una y otra vez en cada una de nuestras páginas. Digamos que podemos hacer páginas que son como una manta de patchwork.

Lo mejor es verlo con un ejemplo. Veamos nosotros para nuestros refranes vamos a crear:

Una página principal con un título, un menú y un pie de página. Index.php
Una página secundaria desde la que añadir un refrán nuevo: nuevo.php
Otra página secundaria desde la que editar/modificar un refran: modificar.php

Así que tenemos 3 páginas y 3 elementos comunes: el menú, el título y el pie de página. Para evitarnos tener que reescribir el menú, el título y el pie de página en cada uno de nuestros tres archivos, vamos a guardarlos en archivos aparte que luego incluiremos en nuestros archivos

Así tendremos los siguientes archivos:

Index.php
Modificar.php
Nuevo.php

Y

Titulo.inc
Menú.inc
Pie.inc

CREANDO LOS TROZOS QUE VAMOS A INCLUIR
Tenemos que tener en cuenta que lo que hacemos es cortar nuestro código en « trozos » que luego tenemos que unir entre sí y deben formar un código legible. Tendríamos una tabla de disposición más o menos así:




Así que el código de nuestra página completa quedaría más o menos así:

Código:
<html>
<head>
<title>El Refranero</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<table width="100%"  summary="tabla de disposicion">
  <tr>
  <td colspan="2"><div align="center"><img src=/img/refranero.gif" width="191" height="72" alt="el Refranero"></div></td>


  </tr>
  <tr>
    <td width="24%"><h3>Men&uacute; </h3>
      <ul>
        <li><a href="refranes.php">Ver refranes</a></li>
        <li><a href="nuevo.php">A&ntilde;adir Refran</a></li>
      </ul></td>
    <td width="76%">Contenido contenido contenido</td>
  </tr>
  <tr>
    <td colspan="2">Pie de p&aacute;gina copyright y esas cosas</td>
  </tr>
</table>
</body>
</html>
De aquí vamos a separar el menú, el título y el pie de página en 3 archivos separados que luego incluiremos en nuestro archivo principal.

1.- titulo.inc
En título.inc vamos a incluir todos aquellos elementos comunes de la parte superior de nuestro archivo. Es decir:

Código:
  <td colspan="2">

   <div align="center">
<img src=/img/refranero.gif" width="191" height="72" alt="el Refranero">

   </div>
</td>

Y lo guardaremos como titulo.inc

2.- Menú.inc
En este archivo vamos a incluir todos aquellos elementos que forman parte del menú:

Código:
    <td width="24%"><h3>Men&uacute; </h3>
      <ul>
        <li><a href="refranes.php">Ver refranes</a></li>
        <li><a href="nuevo.php">A&ntilde;adir Refran</a></li>
      </ul></td>

3.- Pie.inc
Aquí por supuesto pondremos los elementos que forman parte del pie de página y los guardaremos como pie.inc

Código:
    <td colspan="2">Pie de p&aacute;gina copyright y esas cosas</td>

COSIENDO LOS TROZOS PARA COMPONER LA COLCHA.
Bien ahora ya tenemos nuestros trozos y estamos listos para componer nuestra index.php para ello, necesitamos el armarzón de la página, e incluir con php el código que hemos separado. Para incluir un archivo dentro de otro utilizamos la sintaxis include(archivo);

Veamos nuestra página:

Código:
<html>
<head>
<title>El Refranero</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<table width="100%"  summary="tabla de disposicion">
  <tr>
  <td colspan="2">
<div align="center">
   <img src=/img/refranero.gif" width="191" height="72"   alt="el Refranero">
</div>
</td>
  <tr>
    <td width="24%"><h3>Men&uacute; </h3>
      <ul>
        <li><a href="refranes.php">Ver refranes</a></li>
        <li><a href="nuevo.php">A&ntilde;adir Refran</a></li>
      </ul></td>

    <td width="76%">Contenido contenido contenido</td>
  </tr>
  <tr>
    <td colspan="2">Pie de p&aacute;gina copyright y esas cosas</td>
  </tr>
</table>
</body>
</html>


Si quitamos el título e “incluimos” el archivo que acabamos de crear nos quedaría así:

Código:
<html>
<head>
<title>El Refranero</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<table width="100%"  summary="tabla de disposicion">
  <tr>
<?php include('titulo.inc'); ?>
  </tr>
  <tr>
    <td width="24%"><h3>Men&uacute; </h3>
      <ul>
        <li><a href="refranes.php">Ver refranes</a></li>
        <li><a href="nuevo.php">A&ntilde;adir Refran</a></li>
      </ul></td>
    <td width="76%">Contenido contenido contenido</td>
  </tr>
  <tr>
    <td colspan="2">Pie de p&aacute;gina copyright y esas cosas</td>
  </tr>
</table>
</body>
</html>


Ahora vamos a quitar el menú e incluir nuestro archivo:

<html>
<head>
<title>El Refranero</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<table width="100%"  summary="tabla de disposicion">
  <tr>
<?php include('titulo.inc'); ?>
  </tr>
  <tr>
<?php include('menu.inc'); ?>

    <td width="76%">Contenido contenido contenido</td>
  </tr>
  <tr>
    <td colspan="2">Pie de p&aacute;gina copyright y esas cosas</td>
  </tr>
</table>
</body>
</html>

Y por ultimo quitamos el pie de página e incluimos el nuestro:

Código:
<html>
<head>
<title>El Refranero</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<table width="100%"  summary="tabla de disposicion">
  <tr>
<?php include('titulo.inc'); ?>
  </tr>
  <tr>
<?php include('menu.inc'); ?>

    <td width="76%">Contenido contenido contenido</td>
  </tr>
  <tr>
<?php include('pie.inc'); ?>
  </tr>
</table>
</body>
</html>

Este archivo que acabamos de crear, lo vamos a guardar como plantilla php, porque las tres páginas que vamos a crear en nuestro proyecto van a tener exactamente la misma estructura.

Bien Ahora que ya tenemos nuestra plantilla vamos a crear la página index de nuestra pequeña aplicación para ver y añadir refranes. Abrimos la plantilla y la guardamos como index.php,

Dónde pone “Contenido contenido contenido”, lo cambiamos por Bienvenido a nuestro refranero popular, podrás ver todos los refranes que hayamos incluido. Además podrás añadir tus propios refranes.




Si subimos a nuestro servidor los archivos: titulo.inc, menú.inc pie.inc e index.php nos encontraremos con algo parecido a la imagen.

EL PATH
Ahora ya tenemos nuestras plantillas preparadas y nos vamos a ahorrar repetir mucho código lo cual nos va a venir muy bien e incluso nos va a permitir aumentar la seguridad de nuestra aplicación.

En los ejemplos que hemos puesto, el archivo que íbamos a incluir estaba siempre situado en la misma carpeta que el script con el que estábamos trabajando, por eso a la hora de configurar el include lo hacíamos así:

Código:
<?php include('titulo.inc'); ?>

Sin embargo, lo realmente útil es poner todos nuestros “trozos” en un mismo repositorio de forma que tengamos las cosas ordenadas.

Así que nos creamos la carpeta “includes” y metemos todos nuestro retales ahí. Lo malo es que ahora tenemos que decirle al script dónde están nuestros retales, y para eso necesitamos saber el path.

El path no coincide con la URL, la URL sirve para acceder a un documento desde fuera, desde internet, pero nuestros archivos tienen que saber dónde están físicamente los “retales”.

Recordemos que un servidor de internet es un ordenador y en la mayoría de las cuentas, estaremos compartiendo ese ordenador con otras muchas personas, cada una de las cuales tendrá su “path”.

El path se lo váis a tener que preguntar a vuestro proveedor, aunque normalmente suele venir en las F.A.Q. y en la documentación que te dan al principio.

Para decirle a nuestro script dónde está nuestro directorio. En una cuenta normal tendremos asignado un directorio raíz en el que habrá varias carpetas, por ejemplo:

Mail
ftp
public-html

Los archivos que forman nuestra web estarán en el directorio público. Lo normal es que el path sea:

Código:
/home/nombre_de_usuario/public

o algo por el estilo, eso se lo tendréis que preguntar a vuestro proveedor. Una vez dentro de nuestro directorio público el resto del path dependerá de cómo hemos organizado nosotros nuestras carpetas.

Por ejemplo, que en nuestro directorio raíz hemos creado un directorio llamado “includes” y supongamos que nuestro nombre de usuario sea “usuario”. Nuestro path quedaría así:


Código:
/home/usuario/public/includes

y nuestro script quedaría

Código:
<?php include('/home/usuario/public/includes/titulo.inc'); ?>

¿CÓMO PUEDEN MEJORAR LOS INCLUDES LA SEGURIDAD?
Cómo hemos visto en nuestro directorio raíz en el servidor, tenemos una serie de carpetas y sólo una de ellas es la que contiene nuestros archivos públicos, aquellos a los que se puede acceder desde Internet con un navegador.

Podemos mejorar nuestra seguridad, simplemente colocando aquellas partes de nuestro código más sensibles, fuera de esta carpeta pública. Es decir quitando de la carpeta pública nuestros logins y contraseñas.

Para ello sólo tendríamos que crearnos una carpeta fuera de la carpeta public y poner los datos de conexión ahí:

Código:
<?php include('/home/usuario/privado/conectar.inc'); ?>

Nota: No todos los ISP’s te permiten crear carpetas fuera de tu parte pública. Tendrás que consultarlo.
Valora este capítulo: (16 opiniones)
Autor y licencia de 'PHP y MySQL para gentes de letras - Base de datos, includes y formularios'
Coder Extraído de: http://www.tomatoma.ws/subsecciones.php?forum_id=27&catid=22&todos=1

Creative Commons License
Esta obra está bajo una licencia de Creative Commons.
Este contenido ha sido recopilado por el equipo de Wikilearning. Todo el contenido recopilado se ha obtenido respetando y comunicando en nuestro site la licencia de cada fuente.
Wikilearning tiene permiso expreso por escrito de los autores para publicar los contenidos que ha extraído de otras webs, incluyendo su uso comercial.

Opiniona sobre 'PHP y MySQL para gentes de letras - Base de datos, includes y formularios' (16)

Tu nombre debe tener tres caracteres como mínimo.
Es necesario que te des de alta con una cuenta de correo válida.
Es necesario que te des de alta con una cuenta de correo válida.
El contenido del título de tu opinión debe tener tres caracteres como mínimo.
Es obligatorio que selecciones una valoración del recurso.
El contenido del comentario de tu opinión debe tener tres caracteres como mínimo.

Opina sobre este curso gratis



* Valoración:
* Nombre:
* Correo electrónico:
* Título:
* Comentario:

Wikis relacionados con 'PHP y MySQL para gentes de letras - Base de datos, includes y formularios'

Aquí dejo una clase que hice hace tiempo para tratar bases de datos MYSQL.
La instalación de estos programas es muy fácil, PHP y MySQL vienen comprimidos en formato... Más »
PHP se ha convertido en el lenguaje de facto de Internet y no es difícil... Más »
PHP es un lenguaje en que usualmente el tipo de dato de una variable no... Más »
Nos complace presentar el Plan detallado de consultoría y formación que Luis E. Vásquez ... Más »
¿Estás seguro de que deseas eliminar este capítulo?