En esta entrada, se va a explicar como acceder a una base de datos MySQL desde PHP, y como realizar consultas en la misma.
Para el ejemplo que se va a mostrar aquí, partimos de lo siguiente:
- Una base de datos MySQL, con nombre "nombreBD".
- El usuario de la base de datos es "usuBD", y la contraseña es "passBD".
- En la base de datos, hay una tabla llamada "personas".
- La tabla "personas" tiene 3 columnas. ("nombre", "apellidos", "edad").
- En el mismo host de la base de datos, hay un programa PHP, cuya explicación se explicará en esta entrada.
En este ejemplo, se va a proceder a realizar la conexión a la base de datos, y a mostrar por pantalla el nombre completo de las personas que tengan más de 18 años.
Nuestro programa PHP, debe contener una clase que sea la que se encargue de conectar con la base de datos.
class DB_CONNECT
{
function connect()
{
/*Esta es la parte en la que hay que poner los datos de la conexión a la Base de Datos.*/
define('DB_USER', "usuBD");
define('DB_PASSWORD', "passBD");
define('DB_DATABASE', "nombreBD");
define('DB_SERVER', "localhost");
$con = mysql_connect(DB_SERVER, DB_USER, DB_PASSWORD) or die(mysql_error());
$db = mysql_select_db(DB_DATABASE) or die(mysql_error()) or die(mysql_error());
return $con;
}
function close()
{
mysql_close();
}
function __construct()
{
$this->connect();
}
function __destruct()
{
$this->close();
}
}
A continuación, se va a instanciar un elemento de la clase que se acaba de crear, y se va a proceder a realizar la consulta, y a mostrarla por pantalla.
/*Con esta linea, se crea la conexión con la base de datos, empleando la clase creada anteriormente.*/
$db = new DB_CONNECT();
/*Con esta linea, se realiza la consulta deseada*/
$result = mysql_query("SELECT nombre, apellidos FROM personas WHERE edad > 18");
/*Con esta linea se comprueba que la consulta devuelva*/
/*algún resultado, y si es así, el programa continua.*/
if (mysql_num_rows($result) > 0)
{
/*Este bucle dará una vuelta por cada registro devuelto.*/
while ($row = mysql_fetch_array($result))
{
/*El registro devuelto, se encuentra en la variabla $row, para*/
/*extraerlo, hay que llamar al elemento como si fuera un array.*/
echo $row["nombre"]." ".$row["apellidos"]." ";
}
}
De este modo, se habrán obtenido y mostrado por pantalla los datos deseados.