Foros del Web » Programando para Internet » PHP »

mysql_result

Estas en el tema de mysql_result en el foro de PHP en Foros del Web. HOla foro estoy haciendo unas comparaciones y quiero recorrer el: mysql_resul() con un contador: ejemplo: mysql_resul($res,$i,2); el problema es que dentro del for que lo ...
  #1 (permalink)  
Antiguo 26/10/2004, 17:02
Avatar de The_omars  
Fecha de Ingreso: marzo-2004
Mensajes: 271
Antigüedad: 13 años, 9 meses
Puntos: 0
mysql_result

HOla foro estoy haciendo unas comparaciones y quiero recorrer el:

mysql_resul() con un contador:

ejemplo:

mysql_resul($res,$i,2);

el problema es que dentro del for que lo recorro se pasa y me marca que los campos no existe:

Warning: mysql_result(): Unable to jump to row 4 on MySQL result index 4

como puedo saber que cuando no exista el resultado??

ya lo intente con el mysql_num_rows pero nop

y tambien asi if(mysql_resul($res,$i,2)=="") pero nada
  #2 (permalink)  
Antiguo 26/10/2004, 17:07
 
Fecha de Ingreso: octubre-2004
Mensajes: 21
Antigüedad: 13 años, 1 mes
Puntos: 1
Pues el mysql_num_rows es lo suyo...

De todas formas, igual hay una manera más optima para lo que quieres hacer que recorrer todos los resultados de una consulta...
  #3 (permalink)  
Antiguo 26/10/2004, 19:28
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Para recorrer todos los registros que te arroja tu consulta SQL ejecuta vìa mysql_query() lo que deberías usar son las funciones tipo mysql_fetch_xxx() como por ejemplo la clásica:

mysql_fetch_array() ..

Se usa mucho bajo un bucle while() al estilo:

Código PHP:
<?
// conectas a tu BD .. etc ...
$resultado=mysql_query($sql) or die (mysql_error());
while (
$row=mysql_fetch_array($resultado)){
   echo 
$row['nombre_campo'];
   echo 
$row['nombre_otro_campo'];
}
Se usan los bucles tipo while () por qué la función mysql_fetch_xxxx() funciona de la siguiente manera: entrega el primer "record-set" (registro de resultado en forma de array, objeto o lo que uses con sus campos en el como indices ..) ---> mueve el puntero interno del "record-set" una posición hacia adelante --> si está en el final del resultado (= no hay más registros que obtener) .. devuelve un "False" .. Ya que el bucle while () implica un "mientras la condición se cumpla ...", pues ya tienes el por qué se usa ese tipo de bucles.

En ese punto ya puedes ir aplicando tu IF tipo:

Código PHP:
if (empty($row['campo'])´){
// haces lo que tengas que hacer ... si el valor de ese resultado (registro) esta vacio o es nullo o es 0 ... eso es lo que hace empty() mejor que un == ""

Por lo demás ... no sé que comparaciones andas haciendo .. pero en SQL sólo se puede resolver la mayoría de casos directamente de la consulta SQL sin más "PHP" por médio.

Un saludo,
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:56.