You are on page 1of 4

Instrucciones para conectar con una Base de Datos MySQL en PHP Primero es recomendable separar los datos de conexin

con las funciones de conexin en s, de modo que si estos cambian sea ms fcil y rpido cambiarlos en todos los scripts en los que haga falta. As es recomendable: 1 Definir un archivo con tan solo los datos de conexin, por ejemplo conexin.inc.php Ejemplo de conexin.inc.php <? // Fichero con los datos de conexion a la BBDD function Conectarse() { $db_host="localhost"; // Host al que conectar, habitualmente es el localhost $db_nombre="bbdd"; // Nombre de la Base de Datos que se desea utilizar $db_user="user"; // Nombre del usuario con permisos para acceder $db_pass="password"; // Contrasea de dicho usuario // Ahora estamos realizando una conexin y la llamamos $link $link=mysql_connect($db_host, $db_user, $db_pass) or die ("Error conectando a la base de datos."); // Seleccionamos la base de datos que nos interesa mysql_select_db($db_nombre ,$link) or die("Error seleccionando la base de datos."); // Devolvemos $link porque nos har falta ms adelante, cuando queramos hacer consultas. return $link; } ?> 2 Incluir este archivo en cada script que necesite datos de la base de datos. Aadir la siguiente lnea en cada archivo que lo requiera: include('conexion.inc.php'); // Suponemos que el archivo con los datos es conexin.inc.php 3 Realizar las consultas de un modo claro:

Para recuperar los datos de una sencilla consulta de ejemplo: SELECT nombre, apellido, telefono FROM amigos <? include('conexion.inc.php'); // Suponemos que el archivo con los datos es conexin.inc.php // As llamaremos a la funcin que tena los datos para conectarse $link = Conectarse(); // En una variable tipo STRING escribimos la consulta. $sql = " SELECT nombre, apellido, phone FROM friends "; // Con la funcin mysql_query() realizamos la consulta que queramos en la base de datos // seleccionada previamente. Es decir le entramos la consulta que habamos llamado $sql $result = mysql_query($sql) or die(La siguiente consulta contiene algn error:<br>nSQL: <b>$sql</b>); // Ahora tenemos en $result todos los registros de la consulta, ahora debemos mostrarlos uno a uno while ($row = mysql_fetch_array($result)) { // El while ya deberamos saber que hace, mysql_fetch_array() avanza uno a uno los registros // Como hemos metido un registro en $row, tendremos que mostrar lo que nos interese en pantalla. echo El Nombre es: <b>.$row[nombre].</b><br>n; // Para mostrar el campo nombre echo El Apellido es: <b>.$row[apellido].</b><br>n; // Para mostrar el campo apellido echo El Telf. es: <b>.$row[telefono].</b><br><br>n; // Para mostrar el campo telefono } ?> El resultado a la ejecucin del script sera algo como: El Nombre es: Scott El Apellido es: Doanes El Telf. es: 933334455

El Nombre es: Basilio El Apellido es: Vera El Telf. es: 933335566 El Nombre es: Vicente El Apellido es: Carrasco El Telf. es: 934447788 (Etc...) Siempre suponiendo que estos sean los registros que hay en la base de datos. Con la instruccin or die() se mostrar en pantalla el mensaje entrecomillado solo en el caso de que fallara la primera sentencia de la lnea. NOTAS: Tambin podramos haber usado la lnea: echo El Nombre es: <b> {$row[nombre]}</b><br>n; En lugar de: echo El Nombre es: <b>.$row[nombre].</b><br>n; El resultado habra sido el mismo. Incluso podramos haber utilizado otras funciones para acceder fila a fila, por ejemplo: mysql_fetch_object(); Pero entonces tendramos que haber escrito algo como lo siguiente, para cada lnea: echo El Nombre es: <b>.$row->nombre.</b><br>n; Al usar esta funcin, en lugar de poner el nombre del campo as $nombre_variable[nombre_del_campo] se pone $nombre_variable->nombre_del_campo.

Si queremos mostrar los resultados en forma de tabla, habra que intercalar el cdigo HTML referente a tablas entre el cdigo que muestra las variables, por ejemplo algo como: echo <table>n; // Comenzamos la tabla antes del while echo <tr><th>Nombre</th><th>Apellido</th><th>Telfono</th></tr>; // As escribimos la cabecera de la tabla while ($row = mysql_fetch_array($result)) { echo <tr><td>{$row[nombre]}</td>n; // Comenzamos una fila (<tr>) echo <td>{$row[apellido]}</td>n; echo <td>{$row[telefono]}</td></tr>n; // Acabamos una fila (</tr>) } echo </table>; // Fin de la tabla.

Basilio Vera. basilio.vera@mail.com

You might also like