Desplegar registros de MySQL en tabla HTML

Juan Alberto
07 de Julio del 2005
Tengo el siguiente codigo fuente el cual deberia desplegar los datos de una tabla estudiante de una base de datos estudiantes en MySQL, el asunto es que en el browser no me muestra nada y no se cual sea el error, cualquier idea sera bien recibida.
Los browser en que lo probe es Internet Explorer y Firefox

//---------------------------------------------------------------------
<?
//función que me genera la selección de datos
function SQL_select($sql){
$id_con = mysql_connect ("127.0.0.1", "root", "");
$con = mysql_select_db("estudiantes",$id_con);
$resultado = mysql_query($sql, $id_con);
$x = 0;
while ($row = mysql_fetch_array($resultado)){
$a[$x] = $row; // almacena la seleccion en un vector
$x++;
}
mysql_close($id_con); //cierra la conexion con la base de datos
return $a; //retorna el vector
}
?>

<html>
<head>
<title>Caso de aplicaci&oacute;n #3</title>
</head>
<body bgcolor="333399">
<div align="center">

<p><font color="#FFFFFF" size="+2">Registros de la tabla estudiante</font></p>
<table width="89%" border="1">
<tr bgcolor="#330066">
<td width="9%"> <div align="center"><font color="#FFFFFF">Carne</font></div></td>
<td width="12%"> <div align="center"><font color="#FFFFFF">Nombre</font></div></td>
<td width="9%"> <div align="center"><font color="#FFFFFF">Apellido1</font></div></td>
<td width="12%"> <div align="center"><font color="#FFFFFF">Apellido2</font></div></td>
<td width="20%"> <div align="center"><font color="#FFFFFF">Direcci&oacute;n</font></div></td>
<td width="9%"> <div align="center"><font color="#FFFFFF">Tel&eacute;fono</font></div></td>
<td width="20%"> <div align="center"><font color="#FFFFFF">Email</font></div></td>
<td width="9%"> <div align="center"><font color="#FFFFFF">Tipo</font></div></td>
</tr>
<?
$sql = "select * from estudiante";
$Select = SQL_select($sql); // asigna a $Select el resultado de la consulta a la base de datos
while($row=mysql_fetch_array($Select)){ // carga en $row el valor del registro
echo "<tr>"
for($i=0;$i<count($row);$i++){ // carga los campos del registro en el vector
echo "<td>".$row[$i]."</td>" // despliega el campo en la tabla
}//fin for
echo "</tr>n"
}// fin while
?>
</table>
</div>
</body>
</html>

Loop
07 de Julio del 2005
ëpale, estás haciendo mysql_fetch_array de más, :s además cuando se supone que vas a mostrar los datos, ya no existe una conexión, LA CERRASTE EN LA FUNCIÓN ,

no sería más fácil hacer simplemente esto

<?
function SQL_select($sql){
$id_con = mysql_connect ("127.0.0.1", "root", "");
$con = mysql_db_query("estudiantes",$sql);
return $con;
}

$Query= "select * from estudiante";
$resultado=SQL_select($sql);
while($i=@mysql_fetch_array($resultado)){
// MOSTRAR DATOS Y DEMÃS ....
}
?>

Te complicaste la vida en extemo !

Saludos ......

Loop
07 de Julio del 2005
$resultado=SQL_select($Queryl); // <-

Juan Alberto
07 de Julio del 2005
Ok lo admito me complique, pero es que soy nuevo en esto de PHP.
Una ultima pregunta, como harìan entoces dadas las condiciones mostrar los datos en una tabla HTML?