Vuelvo de nuevo con otro tutorial básico para comprender y meternos más en el mundo de las webs dinámicas, aunque si aun estás un poco perdido puedes consultar los anteriores tutoriales: Primeros pasos en PHP.

En esta ocasión, enseño las consultas más simples para poder usar una base de datos desde PHP.

Base de datos

Es importante saber controlar una base de datos mediante PHP, y aprender no resulta difícil, incluso sin saber SQL puedes hacerlo, ya que rara vez se usan consultas demasiado complejas, basta con conocer algunas instrucciones básicas (Buscar, Insertar, Modificar, Borrar), y unas pocas funciones en PHP.

Las consultas desde PHP se realizan con la función mysql_query (" ");, siempre y cuando uses la base de datos MySql, pero valdría cualquier otra, como Postgres, solo habría que cambiar mysql por postgres.




Insertar datos con Sql | Insert Sql


Para insertar datos en una tabla, en SQL se usa INSERT INTO, y en PHP sería:


<?
mysql_query 
("INSERT INTO usuarios (nombre, email, url)
VALUES ('Michael', 'michael@gmail.com', 'http://www.michael.com')"
);
?>

En este ejemplo, usuarios es el nombre de la tabla donde quieres insertar los datos; nombre, email y url los campos de dicha tabla, y lo que está entre comillas, después de VALUES, son los valores que quieres insertar (si es un valor numérico puede ir sin comillas).

Además puedes sustituir los valores por variables PHP, por ejemplo, en vez de poner Michael podrías haber puesto la variable $nombre, a la que le habrás dado valor anteriormente, $nombre = "Michael";.




Buscar datos con Sql | Select Sql


Para buscar y obtener datos en una tabla, en SQL se usa SELECT. Tomando como referencia el ejemplo anterior, en PHP sería:


<?
$result 
mysql_query ("SELECT nombre, email, url FROM usuarios");

while (
$row mysql_fetch_array ($result))
{
echo 
'Nombre: '.$row['nombre'];
echo 
'Mail: '.$row['email'];
echo 
'Url: '.$row['url'];
}
?>

Lo que hace este código es obtener y guardar todos los datos de la tabla usuarios en un array, mientras los va mostrando uno a uno con un bucle while.

Pero esto es demasiado básico, llegará el momento en que necesites obtener determinados datos según ciertos criterios, y no todos a la vez. Digamos que necesito saber el email y la url de un usuario determinado, de "Michael", lo haríamos de la siguiente manera:


<?
$nombre 
'Michael';

$result mysql_query ("SELECT email, url FROM usuarios
WHERE nombre = '$nombre'"
);

while (
$row mysql_fetch_array ($result))
{
echo 
'Mail: '.$row['email'];
echo 
'Url: '.$row['url'];
}
?>

Como ves solo he añadido una condición WHERE, le estoy diciendo que me devuelva el email y la url de todos los usuarios que se llamen Michael, en este caso usé una variable, pero se podría haber puesto 'Michael' directamente.

A parte de mostrar los datos obtenidos, muchas veces te encontraras con la necesidad de contarlos, y eso se puede hacer fácilmente con la función mysql_num_rows ();, ejemplo:


<?
$result 
mysql_query ("SELECT usuario FROM usuarios");

$numUsuarios mysql_num_rows ($result);
?>

Como ves, en la variable $numUsuarios se guarda el número de filas que devolvió la consulta.




Modificar datos con Sql | Update Sql


Muchas veces necesitamos actualizar o modificar un determinado dato en una tabla, para ello se usa UPDATE, el cual funciona de forma parecida a SELECT, se busca el dato o los datos que necesitas modificar y se le aplica el cambio:


<?
$nuevoEmail 
'michael_85@gmail.com';

$result mysql_query ("UPDATE usuarios SET email = '$nuevoEmail'
WHERE email = 'michael@gmail.com'"
);
?>

El usuario con el email "michael@gmail.com" cambiará su email por en nuevo. Pero hay que tener especial cuidado con esto; imaginemos que ponemos en la condición WHERE, que cambie su email si el usuario es igual a "Michael", sucedería que todos los usuarios que se llamen Michael, sufrirían un cambio de email, y no creo que nos interese eso.




Borrar datos con Sql | Delete Sql


No podía faltar la consulta para eliminar filas de una tabla, para ello se usa DELETE FROM, ejemplo:


<?
$Mail 
'michael_85@gmail.com';

mysql_query ("DELETE FROM usuarios WHERE email='$Mail'");
?>

Al igual que al actualizar, establecemos la condición usando el email del usuario, ya que dudo que existan dos usuarios distintos con el mismo email, por tanto en este caso se eliminaría solo al usuario cuyo email sea igual al indicado.




Si no me equivoco estas son las consultas más simples usadas en PHP, si estás empezando rara vez necesitaras usar las más avanzadas, hablo de consultas que ya requieren ciertos conocimientos de SQL.



<< Anterior | Como crear una base de datos

Si te gustó el artículo...

Puedes seguir el blog a través de Twitter, Facebook o tu lector de feeds RSS.

Artículos Relacionados

1 Comentario



Josué Miró

Muchas gracias por tu gran aporte, desde el primer post hasta el último, me han sido de gran utilidad.

Me compré un libro de dreamweaver cs4, pero en la sección del servidor xampp y ponerlo en dreamweaver, no era muy especifico.

Gracias

Dicembre 22, 2009



Deja tu Comentario

Asigna una imagen a tu email con Gravatar, si no sabes accede al siguiente Tutorial.



Asigna una imagen a tu email
Nombre
Email [Requerido]
Web/Blog

Información

  • Aplicamos el tag nofollow, y los enlaces con keywords en los comentarios podrían ser eliminados, intentamos mantener limpio el blog de spam.

  • Puedes usar las etiquetas <i>, <b>, <em>, <strong>, <a>, href, procura cerrarlas adecuadamente o tu comentario podria no mostrarse del modo que deseas.

  • Si necesitas que se vean en el comentario caracteres especiales como los usados en lenguajes de programacion como php, xhtml, etc., debes escribirlo dentro de las etiquetas [code] [/code], de lo contrario no se mostrará.

  • Procura no escribir enlaces que no tengan ninguna relación con el tema.

  • Si realizas una crítica procura argumentarla, pero sobretodo evita los insultos.