Conexión
a la base de datos
Una
vez que tenemos creada la base de datos en nuestro servidor, el
siguiente paso es conectarnos a la misma desde una página
PHP. Para ello PHP nos proporciona una serie de instrucciones
para acceder a bases de datos MySQL.
<!--
conexión.php -->
<html>
<head>
<title>Ejemplo de PHP</title>
</head>
<body>
<?php
function Conectarse()
{
if (!($link=mysql_connect("localhost","usuario","Password")))
{
echo "Error conectando
a la base de datos.";
exit();
}
if (!mysql_select_db("base_datos",$link))
{
echo "Error seleccionando
la base de datos.";
exit();
}
return $link;
}
$link=Conectarse();
echo "Conexión con la base de datos conseguida.<br>";
mysql_close($link); //cierra la conexion
?>
</body>
</html>
Al
ejecutar la instrucción mysql_connect creamos un vínculo
entre la base de datos y la pagina PHP, este vínculo será
usado posteriormente en las consultas que hagamos a la base de
datos.
Finalmente,
una vez que hemos terminado de usar el vínculo con la base
de datos, lo liberaremos con la instrucción mysql_close
para que la conexión no quede ocupada.
Consultas
a la base de datos
Una
vez que nos hemos conectado con el servidor de bases de datos,
ya podemos realizar consultas a las tablas de la base de datos.
Para
facilitar la programación hemos separado la función
de conexión en una librería a parte, de tal manera
que la incluiremos en todas las páginas que accedan a la
base de datos.
db_mysql.inc
<!--
db_conecta.inc -->
<?php
function Conectarse()
{
if (!($link=mysql_connect("localhost","usuario","Password")))
{
echo "Error conectando
a la base de datos.";
exit();
}
if (!mysql_select_db("base_datos",$link))
{
echo "Error seleccionando
la base de datos.";
exit();
}
return $link;
}
?>
<!--
Ejemplo21.php -->
<html>
<head>
<title>Ejemplo de PHP</title>
</head>
<body>
<H1>Ejemplo de uso de bases de datos con PHP y MySQL</H1>
<?php
include("db_conecta.inc");
$link=Conectarse();
$result=mysql_query("select * from prueba",$link);
?>
<TABLE BORDER=1 CELLSPACING=1 CELLPADDING=1>
<TR><TD> Nombre</TD><TD> Apellidos </TD></TR>
<?php
while($row = mysql_fetch_array($result)) {
printf("<tr><td> %s</td><td> %s </td></tr>",
$row["Nombre"],$row["Apellidos"]);
}
mysql_free_result($result);
mysql_close($link);
?>
</table>
</body>
</html>
En
este ejemplo hemos utilizado 3 instrucciones nuevas: mysql_query,
mysql_fetch_array y mysql_free_result. Con la instrucción
mysql_query hemos hecho una consulta a la base de datos en el
lenguaje de consultas SQL, con la instrucción mysql_fetch_array
extraemos los datos de la consulta a un array y con mysql_free_result
liberamos la memoria usada en la consulta.
Inserción
de registros
Hasta
ahora nos hemos conectado a una base de datos y hemos hecho consultas
a la misma, ahora presentaremos como introducir nuevo registros
en la base de datos.
Para
ello usaremos un formulario y en el ACTION del FORM <FORM ACTION="programa.PHP">
indicaremos que debe ser procesado una pagina PHP, esta página
lo que hará será introducir los datos del formulario
en la base de datos.
<!--
Ejemplo22.php -->
<html>
<head>
<title>Ejemplo de PHP</title>
</head>
<body>
<H1>Ejemplo de uso de bases de datos con PHP y MySQL</H1>
<FORM ACTION="procesar.php">
<TABLE>
<TR>
<TD>Nombre:</TD>
<TD><INPUT TYPE="text" NAME="nombre"
SIZE="20" MAXLENGTH="30"></TD>
</TR>
<TR>
<TD>Apellidos:</TD>
<TD><INPUT TYPE="text" NAME="apellidos"
SIZE="20" MAXLENGTH="30"></TD>
</TR>
</TABLE>
<INPUT TYPE="submit" NAME="accion" VALUE="Grabar">
</FORM>
<hr>
<?php
include("db_conecta.inc");
$link=Conectarse();
$result=mysql_query("select * from prueba",$link);
?>
<TABLE BORDER=1 CELLSPACING=1 CELLPADDING=1>
<TR><TD> <B>Nombre</B></TD>
<TD> <B>Apellidos</B> </TD></TR>
<?php
while($row = mysql_fetch_array($result)) {
printf("<tr><td> %s</td>
<td> %s </td></tr>",
$row["Nombre"], $row["Apellidos"]);
}
mysql_free_result($result);
mysql_close($link);
?>
</table>
</body>
</html>
procesar.php
<?php
include("conex.php");
$link=Conectarse();
mysql_query("insert into prueba (Nombre,Apellidos)
values ('$nombre','$apellidos')",$link);
header("Location: ejemplo22.php");
?>
La
primera página PHP ejemplo22.php es un formulario que nos
permite introducir nombre y apellido para añadirlo a la
base de datos, seguido de una consulta que nos muestra el contenido
de la tabla prueba. El formulario llama a la pagina procesar.php
que añadirá los datos a la tabla.
La
segunda página procesar.php se conecta a la base de datos
y añade un nuevo registro con la instrucción insert
del lenguaje de base de datos SQL. Una vez el registro se ha añadido
se vuelve a cargar la página ejemplo22.php.
<<<Anterior
- Siguiente>>>
|