Consulta en MySQL

Hola a todos. Estoy iniciándome en php y mysql. Tengo instalado apache, mysql funcionando perfectamente. Simplemente quiero en principio que se me listen todos los registros de una tabla. Trabajo con dreamweaver mx, aparentemente todo está bien pero solo obtengo el primer registro de la tabla.
este es el codigo que ejecuto:
<?php require_once('../Connections/conexion.php'); ?>
<?php
mysql_select_db($database_conexion, $conexion);
$query_Recordset1 = "SELECT inmuebles.referencia, inmuebles.tipo, inmuebles.metros, inmuebles.antiguedad, inmuebles.dormitorios, inmuebles.baños, inmuebles.aseos, inmuebles.terraza, inmuebles.garaje, inmuebles.trastero, inmuebles.piscina, inmuebles.`recinto privado` FROM inmuebles ORDER BY referencia ASC";
$Recordset1 = mysql_query($query_Recordset1, $conexion) or die(mysql_error());
$row_Recordset1 = mysql_fetch_assoc($Recordset1);
$totalRows_Recordset1 = mysql_num_rows($Recordset1);
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Documento sin título</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<?php echo $row_Recordset1['referencia']; ?>
<?php echo $row_Recordset1['tipo']; ?>
<?php echo $row_Recordset1['metros']; ?>
<?php echo $row_Recordset1['antiguedad']; ?>
<?php echo $row_Recordset1['dormitorios']; ?>
<?php echo $row_Recordset1['baños']; ?>
<?php echo $row_Recordset1['aseos']; ?>
<?php echo $row_Recordset1['terraza']; ?>
<?php echo $row_Recordset1['garaje']; ?>
<?php echo $row_Recordset1['trastero']; ?>
<?php echo $row_Recordset1['piscina']; ?>
<?php echo $row_Recordset1['recinto privado']; ?>
</body>
</html>
<?php
mysql_free_result($Recordset1);
?>
Espero que comprendáis q soy un novato en el tema y os doy las gracias por adelantado
Respuesta
1
Lo que debes hacer es poner todos los echos que te muestran los campos dentro de un do-while y asi te saldran todos, algo asi:
<?php require_once('../Connections/conexion.php'); ?>
<?php
mysql_select_db($database_conexion, $conexion);
$query_Recordset1 = "SELECT inmuebles.referencia, inmuebles.tipo, inmuebles.metros, inmuebles.antiguedad, inmuebles.dormitorios, inmuebles.baños, inmuebles.aseos, inmuebles.terraza, inmuebles.garaje, inmuebles.trastero, inmuebles.piscina, inmuebles.`recinto privado` FROM inmuebles ORDER BY referencia ASC";
$Recordset1 = mysql_query($query_Recordset1, $conexion) or die(mysql_error());
$row_Recordset1 = mysql_fetch_assoc($Recordset1);
$totalRows_Recordset1 = mysql_num_rows($Recordset1);
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Documento sin título</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<?php
do{
echo $row_Recordset1['referencia']; ?>
<?php echo $row_Recordset1['tipo']; ?>
<?php echo $row_Recordset1['metros']; ?>
<?php echo $row_Recordset1['antiguedad']; ?>
<?php echo $row_Recordset1['dormitorios']; ?>
<?php echo $row_Recordset1['baños']; ?>
<?php echo $row_Recordset1['aseos']; ?>
<?php echo $row_Recordset1['terraza']; ?>
<?php echo $row_Recordset1['garaje']; ?>
<?php echo $row_Recordset1['trastero']; ?>
<?php echo $row_Recordset1['piscina']; ?>
<?php echo $row_Recordset1['recinto privado'];
}while(mysql_fetch_assoc($Recordset1)); ?>
</body>
</html>
<?php
mysql_free_result($Recordset1);
?>
Espero haberte sido de ayuda, si tienes mas dudas o para cualquier otra cosa puedes comunicarmela por aqui o postearla en los foros de Lumanet.net (http://www.lumanet.net) y estare encantado en atenderte.
Ante todo gracias, ya ves que estoy muy verde en el tema. En principio parece q funciona, aunque todos los registros se muestran seguidos sin ninguna estructura que facilite la lectura. Imagino que dichos registros se pueden insertar en una tabla o algo parecido, que harías para mejorar la visualización?
La tabla es la mejor, la mas facil y la solucion por la que yo opto en la mayoria de los casos, te la aconsejo.
Gracias por la rapidez de tu respuesta, ha sido on-line total. Por ultimo, decirte que el código que utilizo es el siguiente para el uso de la tabla:
<?php require_once('Connections/conexion.php'); ?>
<?php
mysql_select_db($database_conexion, $conexion);
$query_Recordset1 = "SELECT * FROM inmuebles";
$Recordset1 = mysql_query($query_Recordset1, $conexion) or die(mysql_error());
$row_Recordset1 = mysql_fetch_assoc($Recordset1);
$totalRows_Recordset1 = mysql_num_rows($Recordset1);
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Documento sin título</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<table width="740" border="1">
<tr>
<td width="148"><?php echo $row_Recordset1['referencia']; ?></td>
<td width="112"><?php echo $row_Recordset1['tipo']; ?></td>
<td width="130"><?php echo $row_Recordset1['metros']; ?></td>
<td width="96"><?php echo $row_Recordset1['antiguedad']; ?></td>
<td width="21"><?php echo $row_Recordset1['dormitorios']; ?></td>
<td width="21"><?php echo $row_Recordset1['baños']; ?></td>
<td width="21"><?php echo $row_Recordset1['aseos']; ?></td>
<td width="21"><?php echo $row_Recordset1['terraza']; ?></td>
<td width="21"><?php echo $row_Recordset1['garaje']; ?></td>
<td width="21"><?php echo $row_Recordset1['trastero']; ?></td>
<td width="21"><?php echo $row_Recordset1['piscina']; ?></td>
<td width="31"><?php echo $row_Recordset1['recinto privado']; ?></td>
</tr>
</table>
</body>
</html>
<?php
mysql_free_result($Recordset1);
?>
Solo obtengo el primer registro como al principio con este código.
He Probado ha poner el bucle do-while de varias formas pero no me funciona, creo q es simple pero no doy para solucionarlo. Como lo harías?
Debes ponerlo asi:
<?php require_once('Connections/conexion.php'); ?>
<?php
mysql_select_db($database_conexion, $conexion);
$query_Recordset1 = "SELECT * FROM inmuebles";
$Recordset1 = mysql_query($query_Recordset1, $conexion) or die(mysql_error());
$row_Recordset1 = mysql_fetch_assoc($Recordset1);
$totalRows_Recordset1 = mysql_num_rows($Recordset1);
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Documento sin título</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<table width="740" border="1">
<?php
do{
?>
<tr>
<td width="148"><?php echo $row_Recordset1['referencia']; ?></td>
<td width="112"><?php echo $row_Recordset1['tipo']; ?></td>
<td width="130"><?php echo $row_Recordset1['metros']; ?></td>
<td width="96"><?php echo $row_Recordset1['antiguedad']; ?></td>
<td width="21"><?php echo $row_Recordset1['dormitorios']; ?></td>
<td width="21"><?php echo $row_Recordset1['baños']; ?></td>
<td width="21"><?php echo $row_Recordset1['aseos']; ?></td>
<td width="21"><?php echo $row_Recordset1['terraza']; ?></td>
<td width="21"><?php echo $row_Recordset1['garaje']; ?></td>
<td width="21"><?php echo $row_Recordset1['trastero']; ?></td>
<td width="21"><?php echo $row_Recordset1['piscina']; ?></td>
<td width="31"><?php echo $row_Recordset1['recinto privado']; ?></td>
</tr>
<?php
}while(mysql_fetch_assoc($Recordset1));
?>
</table>
</body>
</html>
<?php
mysql_free_result($Recordset1);
?>
Bueno, estoy flipando con tigo, eres más rápido que el bluetooth de mi motorola. Realmente el bucle va, pero solo se repite el primer registro hasta un total de 10 veces.
Prueba asi:
<?php require_once('Connections/conexion.php'); ?>
<?php
mysql_select_db($database_conexion, $conexion);
$query_Recordset1 = "SELECT * FROM inmuebles";
$Recordset1 = mysql_query($query_Recordset1, $conexion) or die(mysql_error());
$row_Recordset1 = mysql_fetch_assoc($Recordset1);
$totalRows_Recordset1 = mysql_num_rows($Recordset1);
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Documento sin título</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<table width="740" border="1">
<?php
do{
?>
<tr>
<td width="148"><?php echo $row_Recordset1['referencia']; ?></td>
<td width="112"><?php echo $row_Recordset1['tipo']; ?></td>
<td width="130"><?php echo $row_Recordset1['metros']; ?></td>
<td width="96"><?php echo $row_Recordset1['antiguedad']; ?></td>
<td width="21"><?php echo $row_Recordset1['dormitorios']; ?></td>
<td width="21"><?php echo $row_Recordset1['baños']; ?></td>
<td width="21"><?php echo $row_Recordset1['aseos']; ?></td>
<td width="21"><?php echo $row_Recordset1['terraza']; ?></td>
<td width="21"><?php echo $row_Recordset1['garaje']; ?></td>
<td width="21"><?php echo $row_Recordset1['trastero']; ?></td>
<td width="21"><?php echo $row_Recordset1['piscina']; ?></td>
<td width="31"><?php echo $row_Recordset1['recinto privado']; ?></td>
</tr>
<?php
$row_Recordset1 = mysql_fetch_assoc($Recordset1);
}while(mysql_fetch_assoc($Recordset1));
?>
</table>
</body>
</html>
<?php
mysql_free_result($Recordset1);
?>
Bueno, esto se prolonga, ahora ocurre algo extraño. De los registro de la tabla que son 9 en principio, se reflejan los dos primeros, el tercero no, el cuarto si, el quinto no, el sexto si, el septimo no, el octavo si y el noveno q es el ultimo no.
Ponlo de esta manera:
<?php require_once('Connections/conexion.php'); ?>
<?php
mysql_select_db($database_conexion, $conexion);
$query_Recordset1 = "SELECT * FROM inmuebles";
$Recordset1 = mysql_query($query_Recordset1, $conexion) or die(mysql_error());
$row_Recordset1 = mysql_fetch_assoc($Recordset1);
$totalRows_Recordset1 = mysql_num_rows($Recordset1);
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Documento sin título</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<table width="740" border="1">
<?php
$c=0;
do{
?>
<tr>
<td width="148"><?php echo $row_Recordset1['referencia']; ?></td>
<td width="112"><?php echo $row_Recordset1['tipo']; ?></td>
<td width="130"><?php echo $row_Recordset1['metros']; ?></td>
<td width="96"><?php echo $row_Recordset1['antiguedad']; ?></td>
<td width="21"><?php echo $row_Recordset1['dormitorios']; ?></td>
<td width="21"><?php echo $row_Recordset1['baños']; ?></td>
<td width="21"><?php echo $row_Recordset1['aseos']; ?></td>
<td width="21"><?php echo $row_Recordset1['terraza']; ?></td>
<td width="21"><?php echo $row_Recordset1['garaje']; ?></td>
<td width="21"><?php echo $row_Recordset1['trastero']; ?></td>
<td width="21"><?php echo $row_Recordset1['piscina']; ?></td>
<td width="31"><?php echo $row_Recordset1['recinto privado']; ?></td>
</tr>
<?php
$c++;
$row_Recordset1 = mysql_fetch_assoc($Recordset1);
}while($c<$totalRows_Recordset1);
?>
</table>
</body>
</html>
<?php
mysql_free_result($Recordset1);
?>

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas