Foros del Web » Programando para Internet » PHP »

for

Estas en el tema de for en el foro de PHP en Foros del Web. saludos a todos, tengo el siguiente codigo. pero si cambio en el limite para j(que sea <= en vez de >) me manda el siguiente ...
  #1 (permalink)  
Antiguo 08/09/2004, 14:23
 
Fecha de Ingreso: agosto-2004
Mensajes: 71
Antigüedad: 19 años, 8 meses
Puntos: 0
for

saludos a todos, tengo el siguiente codigo.
pero si cambio en el limite para j(que sea <= en vez de >) me manda el siguiente error
"Warning: pg_result() unable to jump to row 190 on PostgreSQL result index 4 in /var/www/html/jose/Rep_web1/r_enviado.php on line 69"

alguien me podria indicar por que.
Y si tienen alguna correcion me la pueden indicar.

grascias
//comparo nombre y apellidos
$sql_n='select * from "Users";';
$prob_set_n = pg_query ($conexion, $sql_n);
$filasn = pg_num_rows($prob_set_n);
for ($j = 0; $j <$filasn; $j++){
//echo " <b>".pg_result($prob_set_n, $j, 1)." </b><br> ";
$conn= pg_result($prob_set_n, $j, 1);
$comp=strnatcmp($nombre,$conn);
//echo $conn;
if($comp==0){
//echo $nombre;
$conap= pg_result($prob_set_n, $j, 2);
$compap=strnatcmp($conap,$ape_pat);
//echo $ape_pat;
if($compap==0)
{
$conam = pg_result($prob_set_n, $j, 3);
$compam=strnatcmp($conam,$ape_mat);
//echo $compam;
if($compam==0)
{
//echo "saludos";
$conid = pg_result($prob_set_n, $j, 0);
//echo $conid;
}
/*else
{
$sql_ins="INSERT INTO \"Users\" (name, firtsname, lastname, id_department) VALUES ('$nombre','$ape_pat', '$ape_mat', '$condp');";
$conid=pg_query($conexion, sql_ins);
}*/

}/*else
{
$sql_ins="INSERT INTO \"Users\" (name, firtsname, lastname, id_department) VALUES ('$nombre','$ape_pat', '$ape_mat', '$condp');";
$conid=pg_query($conexion, sql_ins);
}*/


}elseif($comp!=0 and $j==$filasn)
{
// $sqlus="INSERT INTO \"Users\" (name, firstname, lastname, id_department) VALUES ('$nombre','$ape_pat', '$ape_mat', '$condp');";
//$conid=pg_query($conexion, $sqlus);
echo "uno";
}
}//for
  #2 (permalink)  
Antiguo 09/09/2004, 00:32
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
Hola,

pg_num_rows() devuelve el numero de filas. Pero en informatica empezamos a contar desde 0, asi que si el numero de filas es 2, los indices de esas filas son 0 y 1. Si pones el <=, con 2 filas, estarias pidiendo los indices 0, 1 y 2, es decir, 3 filas. Y tu solo tienes 2. Pues en tu mensaje de error te dice que no hay un indice de fila 190. Te ha devuelto 190 filas, con indices de 0 a 189, es decir, de 0 a 190-1, es decir, menores de 190.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
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 05:32.