Foros del Web » Programando para Internet » PHP »

warning!! ¿que me dice?

Estas en el tema de warning!! ¿que me dice? en el foro de PHP en Foros del Web. tengo el siguiente aviso pero no entiendo que me dice: Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in news_admin.php on line ...
  #1 (permalink)  
Antiguo 14/11/2003, 14:28
Avatar de pereztroff  
Fecha de Ingreso: junio-2002
Ubicación: En la Internet.
Mensajes: 4.068
Antigüedad: 15 años, 6 meses
Puntos: 5
warning!! ¿que me dice?

tengo el siguiente aviso pero no entiendo que me dice:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource
in news_admin.php on line 49



Código PHP:
$query "select * FROM noticias ORDER BY fecha"$resp mysql_query($query);
    while (
$noticia mysql_fetch_array($resp)) {
    echo
" <tr><td>$noticia[id]</td><td>$noticia[fecha]</td><td>$noticia[titulo]</td><td align='center'><a href='news_admin.php?edit=$noticia[id]'>Editar</a> | <a href='news_admin.php?del=$noticia[id]'>Borrar</a></td></tr>";
    } 
p.d. la linea 49 es la de: while.....................
  #2 (permalink)  
Antiguo 14/11/2003, 14:57
Avatar de claudiovega  
Fecha de Ingreso: octubre-2003
Ubicación: Puerto Montt
Mensajes: 3.667
Antigüedad: 14 años, 1 mes
Puntos: 11
dice (no literalmente): no puedo recorrer un arreglo que no existe, y esto es porque la consulta sql no se ejecuto y por lo tanto el arreglo que se crea a partir de mysql_query() esta vacio, mas bien es null.
revisa tu consulta sql
ademas es bueno comprobar si tiene algo el result

if ($result)
{
while($row=mysql_fetch_array($result))
....
}
__________________
Dedicado a proyectos web, actualmente desarrollando un sistema de diseño de flyers online muy fácil de usar.
  #3 (permalink)  
Antiguo 14/11/2003, 15:07
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 6 meses
Puntos: 16
Hola,

Bueno, literalmente dice 'El argumetno no es un ID de resultado MySQL valido'. En spanish, que el valor del paramentro no es valido. ¿Cual es el parametro? Pues $resp. ¿Donde le das valor a $resp? Pues en:
Código PHP:
$resp mysql_query($query); 
¿Cual es la razon para que tenga un valor no valido? Pues que se haya producido un error MYSQL al ejecutar la consulta. Si miras www.php.net/mysql_query , veras que dice que devuelve FALSE en caso de error, y un id de resultado MySQL en caso de ir todo correcto.

¿Y como saber el error MySQL? Pues con la funcion mysql_error() (www.php.net/mysql_error), haciendo algo como:
Código PHP:
$resp mysql_query($query) or die("Error: $query <br>MySQL dice: ".mysql_error()); 
Asi se finalizara el script mostrandote el mensaje de error.

Viendo la simple consulta, puede ser que la tabla no se llame noticias o que el campo no se llame fecha. O puede que no hayas seleccionado la base de datos.

Pero eso te lo dira el mensaje de error.

Saludos.

PD: Es recomendable usaar el mysql_error() para todas las consultas. Sobre todo en la fase de desarrollo.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #4 (permalink)  
Antiguo 14/11/2003, 15:18
Avatar de pereztroff  
Fecha de Ingreso: junio-2002
Ubicación: En la Internet.
Mensajes: 4.068
Antigüedad: 15 años, 6 meses
Puntos: 5
muchas gracias por vuestra ayuda, ya encontre el error y lo solucione.
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 10:47.