Anterior entrega del tutorial aquí: http://jkanetwork.com/verart.php?idart=38
Seguimos con el tercer tutorial de PHP+mysql, con la introducción a conexiones a mysql, y usos simples de él, y de paso pondré aqui la integración php-mysql, será un tutorial más largo, algunas cosas de mysql básicas las daré un poco por supuesto ya que aquí es más el uso junto a php, así que necesitáis saber dos cosas por adelantado, entrar en la base de datos que tengáis, y saber hacer tablas, aqui un ejemplo sencillo de hacer tablas con phpmyadmin,que tienen el 99% de los servidores (aunque el de las fotos es algo viejo) http://www.aulaclic.es/dreamweavercs3/t_19_12.htm
Primero veremos como conectarnos a una base de datos de mysql (Que tenéis que haber creado antes, ya sea con algún programa local, o con un hosting gratis en las opciones de mysql (Podéis buscar en Google poniendo vuestro hosting o programa y como crear base de datos mysql)
Una vez tengamos los datos, pondremos lo siguiente
$conexion = mysqli_connect(«host»,»usuario»,»contraseña»,»base de datos escogida»)
or die («Fallo en el establecimiento de la conexión»);
Ahí veis que conectamos poniendo el host, que suele ser localhost, y luego el resto de datos que tendremos
Como anotación aquí usaremos la extensión mysqli_* en vez de mysql_* , porque mysql_* está en proceso de eliminarse, y lo unico que hay de diferencia práctica, a parte de la i, es que primero va el parametro conexion y luego la consulta, y en mysql_* es al revés
Una vez conectados, tenemos que hacer consultas, es decir pedir que haga cosas
Las más importantes son las funciones SELECT (Buscar y coger), INSERT (Añadir algo nuevo), DELETE (Borrar algo), UPDATE (Modificar algo existente)
Las consultas se hacen con este comando: mysqli_query($conexion,$consulta);
La variable $consulta se puede usar, o poner ahí entre comillas la consulta en sí, es libre de hacerlo de una u otra forma
Imaginaros que tenemos una tabla con nombre gente asi:
ID nombre edad
1 Pepe 15
2 Alba 18
3 Javier 45
(La variable ID, es el indice,es automático, todas las tablas necesitan un índice o index, recordad al hacer tablas que tenéis que tener un campo ID como primario para que todo funcione bien)
Si queremos añadir uno más se haría asi:
mysqli_query($conexion,»INSERT INTO `gente` (`nombre`,`edad`) VALUES (`Lydia`, `18`)»);
Explicando un poco :
INSERT INTO `gente` – Donde quieres insertar los nuevos valores
(`nombre`,`edad`) – Los valores a insertar, si no pones todos, los otros quedarán en blanco o en su valor por defecto
VALUES (`Lydia`,`18`) – Lo que valen dichos valores
Las « se ponen para evitar que se cojan mal los datos, pero en la mayoría de casos si no las pones funcionan igual
También se pueden pasar variables de php (que es lo suyo) , como valores de cualquier cosa, esto es aplicable a todas las funciones de mysql, y se haría así
$nombre = «Ana»;
$edad = «22»;
mysqli_query($conexion,»INSERT INTO `gente` (`nombre`,`edad`) VALUES (‘$nombre’, ‘$edad’)»);
?>
Se ponen las variables en comillas simples ‘ ‘
Imaginaros unir esto con la parte de formularios del anterior tutorial 😉
Ahora, el comando UPDATE
Con el comando update entra la palabra WHERE que significa donde, y será para decirla donde quieres cambiar dicho valor
mysqli_query($conexion, «UPDATE `gente` SET `edad` = `27` WHERE ID = 2»);
Explicando.. SET es que quieres cambiar y después del = se pone el nuevo valor
Aquí usé la variable ID para decir donde quieres cambiarlo, ya que esa variable siempre será la misma, y el nombre podría cambiarse, pero podríais usar cualquiera, incluso, imagina que tenemos cientos de nombres y hacemos algo como..
mysqli_query($conexion, «UPDATE `gente` SET `nombre` = `toño` WHERE `nombre` = `antonio`»);
Cambiaríamos todos los antonios por toños xd
Para ampliar, con la sentencia DELETE os enseñare los otros dos operadores más famosos AND,y OR , que creo que intuís para que sirven
Nuestro siguiente comando es DELETE, y su uso es el siguiente:
mysqli_query($conexion, «DELETE FROM `gente` WHERE `nombre`=`Ana` OR `edad` = `20`»);
Con esta sentencia decimos lo siguiente
DELETE FROM `gente` – De donde vamos a borrar
WHERE `nombre`=`Ana` – Todos los nombres que sean Ana
OR – o (lo que se cumpla después también se borran)
Esta sentencia borrará todas las Ana y todas las personas con 20 años
Si pusieramos AND en vez de OR , hubiera borrado todas las Ana de 20 años
Y nuestra última sentencia, aunque muy usada, SELECT, para conseguir datos
Se le suele añadir un mysqli_fetch_array porque si tiene varios resultados (En nuestra tabla,3 ,ID-nombre-edad), nos lo devuelva como array y sea usable poniendo $rconsulta[nombre] por ejemplo
$rconsulta = mysqli_fetch_array(mysqli_query($conexion, «SELECT `nombre`,`edad` FROM `gente` WHERE ID = `1`»));
Explicando..
SELECT nombre,edad – Selecciona esos valores
FROM `gente` – Usa esta tabla para buscar
WHERE ID=1 – La busqueda para sacar esos valores
En el ejemplo nos devolvería en $rconsulta Pepe y 15, que se podrian imprimir en pantalla poniendo
print «Nuestra persona » . $rconsulta[nombre] . » tiene » . $rconsulta[edad] . » años.»;
Aquí está lo básico y útil de mysql 😉 Dudas en los comentarios