viernes, 11 de noviembre de 2011

PHP-MySQL simplón

Empezamos aquí una serie de artículos sobre cómo acceder a bases de datos, MySQL, desde una aplicación PHP. Todo muy básico, que para profundizar ya están los manuales. Aún así, antes hay que explicar un par de cosas.

PHP es un lenguaje interpretado que se ejecuta en un servidor. Sin entrar en detalles, necesitamos un servidor HTTP que nos proporcione páginas HTML, o sea, un sitio web, y un intérprete PHP que ejecute una serie de programas que estarán almacenados, normalmente, en el mismo servidor. La ejecución de estos genera páginas HTML que son el resultado que se ve en nuestro navegador. Punto importante este, pues, el programa se ejecuta en el servidor, no en el cliente, no en el navegador lo que redunda en seguridad ya que ni Firefox ni IExplorer, ni ninguno, tiene acceso directo al código fuente.

Nuestro objetivo es generar páginas dinámicas a partir de los datos extraídos de una base de datos. Como ya dice el título, vamos a usar MySQL pero no es obligatorio elegir este motor.

No vamos a entrar en el mundo de la instalación del servidor. Los de linux, casi con toda probabilidad, tienen todo lo que necesitan para montar un servidor local HTTP, el intérprete PHP y MySQL, si es que no lo tienen montado ya. Si eres de MS Windows, hay una opción muy interesante que es Xampp: en un único paquete te monta las tres cosas. Tiene sus tonterías dependendiendo del Windows que sea, eso sí. Para Mac..., :) ellos saben más que yo. Así, pues, suponemos todo correctamente instalado y configurado.

Aunque depende de cada instalación, nuestro servidor tiene una carpeta específica donde se guardan todas aquellas página HTML que queremos publicar en Internet, y nuestros fuentes PHP también. En Xampp, sería ..\xampp\htdocs. En cualquier caso, tal carpeta, en el navegador de Internet es accesible por http://localhost/

También suponemos que tenemos una base de datos montada y un usuario con los permisos de lectura o escritura perfectamente definidos en MySQL.

Con todo preparado, nuestro primer fuente PHP, ese programa horroroso que se usa como ejemplo en todo manual, libro, presentación, etc. que se precie de "introductorio":

<?php
echo "Hola, planeta tierra (por no decir lo de siempre)"
?>

Se supone que esto lo grabamos en un fichero en //localhost/prueba.php (recuerda que la carpeta "física" en el disco duro es la que te diga tu servidor http), de hecho, en nuestro navegador accedemos a su ejecución escribiendo http://localhost/prueba.php y el resultado será una página muy simple que solo muestra

Hola, planeta tierra (por no decir lo de siempre)

Hay otra forma de hacerlo utilizando variables y un bloque html:


<?php
$mensaje="Hola, planeta tierra (por no decir lo de siempre)"
?>
<html>
    <body >
        <?php echo $mensaje ?>
    </body>
</html>


El resultado es exactamente el mismo, se trata solo de dos formas alternativas de manejar la información de salida. El hecho es que, al final, el programa nos suministra un fuente HTML que el navegador debe saber interpretar y depende de los códigos en este lenguaje que el aspecto final sea uno u otro.

Por aquello de dar un ejemplo:


<?php
$mensaje="Hola, planeta tierra (por no decir lo de siempre)"
?>
<html>
    <body >
        <b><?php echo $mensaje ?></b>
    </body>
</html>

o


<?php
echo "<b>Hola, planeta tierra (por no decir lo de siempre)</b>"
?>

Y nos saldría en negrita. A partir de aquí, lo que se quiera y pueda conseguir con PHP y HTML.

Continuará, claro.