|
Mostrar el contenido de una tabla MySQL en HTML - PHP Lenguaje de programación PHP
Explicamos en este truco cómo conectarnos a una base de datos MySQL Server mediante PHP. Os explicamos cómo mostrar en una tabla HTML el contenido de los registros devueltos por una consulta SQL realizada sobre un servidor de base de datos MySQL Server mediante PHP.
Funciones PHP necesarias
Utilizaremos las siguientes funciones PHP:
- mysql_connect: realiza la conexión al servidor de MySQL Server, pasándole como parámetro el nombre del servidor o la IP, el usuario y la contraseña de MySQL con permisos suficientes.
- mysql_select_db: conexión al catálogo, esquema o base de datos de MySQL Server.
- mysql_query: ejecución de consulta SQL en el servidor de MySQL Server.
- mysql_fetch_array: función MySQL que obtiene en una matriz los registros del resultado de la ejecución de una consulta SQL.
- mysql_free_result: libera la memoria del resultado obtenido de la ejecución de la consulta SQL.
- mysql_close: cierra la conexión establecida con la base de datos.
Código PHP y HTML
A continuación mostramos el código PHP que debe guardarse en un fichero con extensión .php en la carpeta que deseemos de nuestro servidor Apache:
<table border="1" cellspacing=1 cellpadding=2 style="font-size: 8pt"><tr>
<td><font face="verdana"><b>Código</b></font></td>
<td><font face="verdana"><b>Cliente</b></font></td>
<td><font face="verdana"><b>Importe</b></font></td>
<td><font face="verdana"><b>Fecha</b></font></td>
</tr>
<?php
$link = @mysql_connect("localhost", "root","password")
or die ("Error al conectar a la base de datos.");
@mysql_select_db("ajpdsoft", $link)
or die ("Error al conectar a la base de datos.");
$query = "SELECT f.codigo, c.nombre cliente, f.importetotal, f.fecha " .
"FROM factura f, tercero c " .
"WHERE f.codigocliente = c.codigo";
$result = mysql_query($query);
$numero = 0;
while($row = mysql_fetch_array($result))
{
echo "<tr><td width=\"25%\"><font face=\"verdana\">" .
$row["codigo"] . "</font></td>";
echo "<td width=\"25%\"><font face=\"verdana\">" .
$row["cliente"] . "</font></td>";
echo "<td width=\"25%\"><font face=\"verdana\">" .
$row["importetotal"] . "</font></td>";
echo "<td width=\"25%\"><font face=\"verdana\">" .
$row["fecha"]. "</font></td></tr>";
$numero++;
}
echo "<tr><td colspan=\"15\"><font face=\"verdana\"><b>Número: " . $numero .
"</b></font></td></tr>";
mysql_free_result($result);
mysql_close($link);
?>
</table>
Ejemplo de salida:
Código |
Cliente |
Importe |
Fecha |
1 |
AjpdSoft |
29.0000 |
2006-07-03 00:00:00 |
2 |
Fernando Alonso |
232.0000 |
2006-07-03 00:00:00 |
3 |
XXX |
928.0000 |
2006-07-03 00:00:00 |
Número: 3 |
Script de creación de las tablas "factura" y "tercero"
CREATE TABLE ajpdsoft.factura (
`codigo` int(10) unsigned NOT NULL auto_increment,
`numero` varchar(15) default NULL,
`importetotal` decimal(19,4) default NULL,
`baseimponible` decimal(19,4) default NULL,
`porcentajeiva` decimal(19,4) default NULL,
`importeiva` decimal(19,4) default NULL,
`porcentajedescuento` decimal(19,4) default NULL,
`importedescuento` decimal(19,4) default NULL,
`codigocliente` int(10) unsigned NOT NULL default '0',
`fecha` datetime default '0000-00-00 00:00:00',
`cobrado` char(1) default NULL,
`observacion` varchar(255) default NULL,
`importecobrado` decimal(19,4) default NULL,
`codusuarioa` int(10) unsigned default NULL,
`codusuariom` int(10) unsigned default NULL,
`fechaa` datetime default NULL,
`fecham` datetime default NULL,
`contabiliza` char(1) default NULL,
`imprimida` char(1) default NULL,
`enviada` char(1) default NULL,
`fechaenvio` datetime default NULL,
`piefactura` text,
`fechavencimiento` datetime default NULL,
`serie` char(2) NOT NULL default '',
PRIMARY KEY (`codigo`),
UNIQUE KEY `Indice_Numero_Factura` USING HASH (`numero`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1
CREATE TABLE `tercero` (
`codigo` int(10) unsigned NOT NULL auto_increment,
`nombre` varchar(100) NOT NULL default '',
`cif` varchar(15) default NULL,
`fechaalta` datetime default NULL,
`direccion` varchar(100) default NULL,
`telefono` varchar(50) default NULL,
`poblacion` varchar(100) default NULL,
`provincia` varchar(50) default NULL,
`cp` int(11) default '0',
`personacontacto` varchar(100) default NULL,
`web` varchar(200) default NULL,
`email` varchar(200) default NULL,
`fax` varchar(50) default NULL,
`pais` varchar(45) default NULL,
`tipo` varchar(10) default NULL,
`observacion` varchar(255) default NULL,
`ccc` varchar(20) default NULL,
`riesgomaximo` float default NULL,
`deudaalcanzada` float default NULL,
`codigoformapago` int(10) unsigned default NULL,
`preciohora` float default NULL,
`preciomensual` float default NULL,
`precioanual` float default NULL,
`preciodesplazamiento` float default NULL,
`porcentajedto` float default NULL,
`codusuarioa` int(10) unsigned default NULL,
`codusuariom` int(10) unsigned default NULL,
`fechaa` datetime default NULL,
`fecham` datetime default NULL,
`piefactura` text,
`nombre2` varchar(100) default NULL,
PRIMARY KEY (`codigo`),
UNIQUE KEY `tercero_nombre_cif_tipo` USING BTREE (`nombre`,`cif`,`tipo`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1
Requisitos técnicos:
Publicado el: 2009-03-28 |
|
|
|