conexion entre php y mysqul

11
Si tienen instalado MySQL en su maquina y desean aprender lo básico de MySQL, deberían primero dirigirse a la sección de MySQL del sitio. Allí están explicados los comandos básicos de MySQL desde la línea de comando. Como crear bases de datos, tablas, agregar, modificar y borrar datos, crear usuarios con diferentes permisos, y mas comandos que deberíamos saber antes de mezclar el PHP con MySQL. Si desean continuar con MySQL y PHP

Upload: juanjcondolo

Post on 14-Nov-2014

2.683 views

Category:

Technology


0 download

DESCRIPTION

conexion

TRANSCRIPT

Page 1: Conexion Entre Php Y Mysqul

Si tienen instalado MySQL en su maquina y desean aprender lo básico de MySQL, deberían primero dirigirse a la sección de MySQL del sitio. Allí están explicados los comandos básicos de MySQL desde la línea de comando. Como crear bases de datos, tablas, agregar, modificar y borrar datos, crear usuarios con diferentes permisos, y mas comandos que deberíamos saber antes de mezclar el PHP con MySQL.Si desean continuar con MySQL y PHP

Page 2: Conexion Entre Php Y Mysqul

Para conectarnos desde PHP a una base de datos en MySQL y mostrar datos contenidos en ella, debemos hacer tres pasos escenciales.Conectarse con el servidor de datos MySQL Conectarse con la base de datos deseada Hacer la consulta SQL a una tabla específica Veamos entonces los 3 pasos por separado.

Page 3: Conexion Entre Php Y Mysqul

1) Conectarnos con la Base de Datos MySQL: Para conectarnos a MySQL tenemos que tener saber host, un nombre de usuario y su contraseña...La línea de debe ser de este estilo:

<? mysql_connection("host","usuario","contraseña"); ?><?php

$myconn = @mysql_connection(“127.0.0.1",”Juan Jumbo",”");?>

Page 4: Conexion Entre Php Y Mysqul

Notar que agregue un caracter '@' antes de la línea de conexión. Esto es para que PHP ejecute la línea en forma silenciosa (si hay errores, no los mostrará). Pero si existirán claro. A continuación evaluaremos si la conexión recién hecha, fue correcta. De modo contrario mostraremos un mensaje personalizado informando del error...Vemos como hacemos esto:

<?php //Si $myconn tira un error, lo detectamos asi.//Mostramos un mensaje, y detenemos la carga de la página con exit()if (! $myconn){echo "Error al intentar conectarse con el servidor MySQL";exit(); } ?>

Page 5: Conexion Entre Php Y Mysqul

En el caso de que $myconn haya fallado, no devuelve nada.Básicamente lo que se hizo fue preguntar si $myconn no devolvió nada. En caso de que se cumpla, mostramos el mensaje personalizado, y detenemos la carga de la página PHP.Hasta aquí lo que hicimos es conectar con el servidor MySQL y chequear que esa conexión sea exitosa.El paso numero 1 está completo. Veamos de que se trata el paso numero 2 y como se debería escribir.

Page 6: Conexion Entre Php Y Mysqul

2) Conectarnos a la base de datos deseada: A continuación, como dijimos al comienzo, haremos la conexion con una base de datos específica. Para que esto pueda salir exitoso, tiene que estar la primera parte terminada.La linea de seleccion de la base de datos es de este estilo:

<? mysql_select_db("base_de_datos",$variable_de_conexion); ?><?php if (! @mysql_select_db("base1",$myconn)){echo "No se pudo conectar correctamente con la Base de datos";exit();}?>

Page 7: Conexion Entre Php Y Mysqul

Lo que hicimos fue escribir la linea de conexion a la base de datos (tambien con '@') ya dentro del IF que nos chequea si fue correcto o incorrecto el intento.Como se puede entender, estamos intentando una Base que se llama 'base1', y usamos la variable de conexion anterior para indicar con que conexion debe ejecutarse.Esta último argumente es opcional. PHP tomará por defecto la última conexion realizada a MySQL. Al igual que antes decimos... si todo hasta acá va bien, podremos para al paso 3, donde haremos nuestra consulta SQL y mostraremos los datos obtenidos.3) Pedir datos a una tabla específica, y mostrarlos: Bueno, si están por aca, ya deben saber de sentencias SQL, al menos sentencias básicas de SELECT.Eso utilizaremos ahora para pedir datos a una tabla que esté dentro de la BD que conectamos recientemente. Empecemos...

Page 8: Conexion Entre Php Y Mysqul

Les mostraré el código donde se crea la consulta y se ejecuta. Más abajo veremos como mostrar esos datos que han juntado... <?php $sql = "SELECT nombres,apellido FROM usuarios";$result = mysql_query($sql)?> ¿Qué hicimos aquí? Bueno, primero simplemente guardamos la sentencia SQL en la variable $sql, en la cual le pedimos la tabla usuarios las columnas de nombre y apellido.En la segunda línea del código, ejecutamos la consulta sql, guardando todos sus resultados en la variable $resultPodemos volver a chequear que esa consulta esté bien realizada con el mismo truco que antes. <?php if (! $result){echo "La consulta SQL contiene errores.";exit();}?>

Page 9: Conexion Entre Php Y Mysqul

Importante: Si la consulta es válida, ese IF no se cumplirá, aunque no devuelva resultados. O sea que solo se está chequeando que la sentencia se válida o no.Ahora si finalmente mostraremos los datos pedidos, terminando con esta larga explicación.Recordemos que todos los datos los tenemos almacenados en la variable $result.Haremos un bucle WHILE con el cual mostraremos automáticamente todos los datos pedidos.<?php //Bucle WHILE para mostrar los resultados...while ($row = mysql_flech_array($result)){echo "<P>",$row["nombre"]," - ",$row["apellido"],"</P>";}?>

Page 10: Conexion Entre Php Y Mysqul

Por último queda explicar este bucle que parece algo más complicado y de echo lo es.A la función mysql_flech_array le pasamos como argumento la variable $result que contiene la información a mostrar. La función la extrae en forma de array la información que tiene la variable $result. Como se ve, se va pasando esa información a la variable $row (que también está en forma de array).Dentro del WHILE usamos echo para mostrar la info contenida en $row. Como está en forma de array, así la mostramos. Como $row["campo"].

Page 11: Conexion Entre Php Y Mysqul

A continuación tienen el código detallado, todo unido...<?php $myconn = @mysql_connection(“127.0.0.1",“Juan",”");if (! $myconn){echo "Error al intentar conectarse con el servidor MySQL";exit(); }if (! @mysql_select_db("base1",$myconn)){echo "No se pudo conectar correctamente con la Base de datos";exit();}$sql = "SELECT nombres,apellido FROM estudiantes";$result = mysql_query($sql)if (! $result){echo "La consulta SQL contiene errores.";exit();}while ($row = mysql_flech_array($result)){echo "<P>",$row["nombres"]," - ",$row["apellido"],"</P>";}?>