Ver Mensaje Individual
  #1 (permalink)  
Antiguo 05/04/2009, 01:30
jonaselyonas
 
Fecha de Ingreso: marzo-2009
Mensajes: 8
Antigüedad: 15 años, 1 mes
Puntos: 0
duda con bucle while

Voy con el código, la duda viene más abajo.

<?
trim ($pagoqty);
if (!$pagoqty)
{
echo "Ningún dato introducido.";
exit;
}

$db = mysql_connect("localhost", "root", "123456");
if (!$db)
{
echo "Error: No se ha podido conectar a la base de datos. Por favor, prueba de nuevo más tarde.";
exit;
}

mysql_select_db("BBDD");
$consulta = "select pago from mujeres order by pago desc;";
$resultado = mysql_query($consulta);

$num_resultados = mysql_num_rows($resultado);



while($row = mysql_fetch_array($resultado, MYSQL_NUM)){
echo "$row[0] ";

}

El resultado del echo dentro del while es el siguiente:

68 60 53 30

¿No se supone que si especifico $row[0] debería salir el primer valor del array?

lo que quiero hacer es que me compare el valor introducido con los que aparecen arriba y me diga en que puesto está.

para lograrlo lo he intentado de esta forma;

$i = 0;

echo "$num_resultados resultado(s) encontrado(s)<br>";

while ( $i <= $num_resultados) {
if ($pagoqty > $row[$i]){
$posicion = $i+1;
echo "posicion $posicion";
exit;
}
$i++;
}

pero el array se comporta guardando sólo el primer valor (en este caso 68) y la posición que da es 1º o 2º dependiendo si el valor introducidoes mayor o menor de 68.

Si alguien me puede aclarar algo le estaré muy agradecido.

mysql_free_result($resultado);
mysql_close($db);

?>