Porque me da error Warning

  • Autor Autor Kotel
  • Fecha de inicio Fecha de inicio
K

Kotel

Delta
Programador
Buenas amigos,
Ando programando un sistema de mensajería estaba todo perfecto hasta hace rato que no se porque me empezó a salir este error:
Warning: mysql_fetch_assoc(): 10 is not a valid MySQL result resource in /home/xx/xx/xx/cuenta.php on line 436

El llamado que hace es a esto:

PHP:
if ($carpeta == 2) {
   $mp_consulta = "
 SELECT
  mp.*, us.usuario
 FROM
  mensajes_privados AS mp
  LEFT JOIN usuarios AS us ON (us.uid = mp.para)
 WHERE
  mp.uid = ". $uinfo['uid'] ." && mp.carpeta = ". $carpeta ."
 ORDER BY mp.mid DESC
 LIMIT ". $empieza .", ". $mxpagina;
  } else {
   $mp_consulta = "
 SELECT
  mp.*, us.usuario
 FROM
  mensajes_privados AS mp
  LEFT JOIN usuarios AS us ON (us.uid = mp.de)
 WHERE
  mp.uid = ". $uinfo['uid'] ." && mp.carpeta = ". $carpeta ."
 ORDER BY mp.mid DESC
 LIMIT ". $empieza .", ". $mxpagina;
  }
 
  $mp_query = uquery($mp_consulta);
  $mp_lista = array();
  while($mp_row = mysql_fetch_assoc($mp_query)) {

Y la linea 436 es esta:
while($mp_row = mysql_fetch_assoc($mp_query)) {

Alguien me puede decir en que me equivoco?
O que me falta realmente se los agradeceria solo eso me falta para terminar mi sistema :sorrow:

Realmente ese error no me afecta en nada en mi sistema o bueno eso creo yo con todo lo que checo sin embargo no quiero seguirlo teniendo y prefiero fixearlo.
A tenerlo que ocultar con
PHP:
error_reporting(0);

Realmente gracias a los que me puedan ayudar.

Cito a [MENTION=42233]zcriptz[/MENTION] y [MENTION=9679]cicklow[/MENTION] ya que me comentan que ustedes saben de php, agradecería vuestra ayuda si me pueden decir cual es el error y como corregirlo.
 
Última edición:
hola Kotel,

podrías hacer un echo $mp_consulta; antes de la línea $mp_query = uquery($mp_consulta); y copiarla aquí en el foro?
a lo mejor la query no se construye correctamente como esperas...

saludos
 
Última edición:
PHP:
$mp_query = uquery($mp_consulta);
No seria:
PHP:
$mp_query = mysql_query($mp_consulta);
 
hola Kotel,

podrías hacer un echo $mp_consulta; antes de la línea $mp_query = uquery($mp_consulta); y copiarla aquí en el foro?
a lo mejor la query no se construye correctamente como esperas...

saludos
Esto me genera.

PHP:
SELECT mp.*, us.usuario FROM mensajes_privados AS mp LEFT JOIN usuarios AS us ON (us.uid = mp.de) WHERE mp.uid = 1 && mp.carpeta = 1 ORDER BY mp.mid DESC LIMIT 0, 10

- - - Actualizado - - -

PHP:
$mp_query = uquery($mp_consulta);
No seria:
PHP:
$mp_query = mysql_query($mp_consulta);
No amigo yo cree una función propia llamada uquery para reducir tiempos y cargas del servidor, si ese fuese el problema toda la web la tendria tirada :sorrow:
 
parece que la query esta bien, posibles problemas que pueden ocurrir:

1- puede que hayas puesto un mysql_free_result($mp_query); dentro del while y al hacer el bucle se quede sin resultados...

2- que la consulta no te devuelva resultados, puedes probar de poner el siguiente código después de la línea
$mp_query = uquery($mp_consulta);

Insertar CODE, HTML o PHP:
// la consulta falla?
if (!$mp_query) {
    echo "No se pudo ejecutar con exito la consulta ($mp_consulta) en la BD: " . mysql_error();
    exit;
}

// hay resultados en la base de datos?
if (mysql_num_rows($mp_query) == 0) {
    echo "No se han encontrado filas, nada a imprimir, asi que voy a detenerme.";
    exit;
}

¡ya nos contarás!
 
Atrás
Arriba