ayuda por favor .. es importante y urgente

Ricardo
16 de Junio del 2004
Señores:
Tengo el sisguiente codigo

// Abre la conexion con la base de datos
mysql_connect("localhost", "nobody");

// Ejecuatamos la secuencia SQL

$result=mysql_db_query("estado_ach","select * from ach_bancos order by ban_cod_ban desc");
$row_result=mysql_fetch_assoc($result);

if ($row_result=mysql_fetch_array($result))
{
?>
<hr>
<table border="0" align="center">
<tr>
<td><center><b>ban_cod_ban</b></center></td>
<td><center><b>ban_nom_ban</b></center></td>
</tr>

<?php
do
{
?>
<tr>
<td><center><? echo $row["ban_cod_ban"] ?></center></td>
<td><center><? echo $row["ban_nom_ban"] ?></center></td>
</tr>
<?php
}
while($row=mysql_fetch_array($result))

?>
</table>


<?
}
else
{
echo "No se ha encontrado ningún registro";
}
?>

En teoria esta vaina funciona, pero no me muestra los dos primeros registros y no se por que, lo he enviado sin ordena, ordenado ascendentemente no me muestra el 1 y el 2, descendentemente no me muesta el 24 y 25. que estoy haciendo mal.

Gracias por la ayuda



16 de Junio del 2004
hmmm....

Esto no tiene sentido:

$row_result=mysql_fetch_assoc($result);

a menos, por supuesto que vayas a desplegar la info asi:
echo("$row_result['columna1']");

Si lo que queres es ver si el record existe, porque no usas mysql_num_rows()?

ejemplo:

$row_result = mysql_num_rows($result);

if($row_result > 0){
while($row = mysql_fetch_array($result)){
$banCod = $row["ban_cod_ban"];
$banName = $row["ban_nom_ban"];

echo("<tr>");
echo("<td align="center">$banCod</td>");
echo("<td align="center">$banName</td>");
echo("</tr>");
}
}
else {
echo("no se encontro dato");
}

Esta forma a mi me ha servido siempre... es una forma de hacerlo, por supuesto, tal vez te ayude a vos.

if ($row_result=mysql_fetch_array($result))

en un condicional IF no se asignan valores a variables, si lo que queres es comparar, usa ya sea == o === el ultimo pa ver si son del mismo tipo.

Ojala te ayude