Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Warning: mysql_fetch_row()

Estas en el tema de Warning: mysql_fetch_row() en el foro de Mysql en Foros del Web. Hola amigos, tengo un situación complicada, llevo varios días tratando de solucionarlo, pero me ha quedado claro que la ignorancia ganó terreno. Cambien mi sitio ...
  #1 (permalink)  
Antiguo 20/06/2009, 10:12
 
Fecha de Ingreso: junio-2009
Mensajes: 11
Antigüedad: 14 años, 10 meses
Puntos: 0
Warning: mysql_fetch_row()

Hola amigos, tengo un situación complicada, llevo varios días tratando de solucionarlo, pero me ha quedado claro que la ignorancia ganó terreno.

Cambien mi sitio web de proveedor, y ahora despues de arreglar varios detalles propios del cambio, me ha quedado este error:

Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in /home/ancestre/www/www/modelos.php on line 112

Al tratat de entrar para ver el catalogo de los productos que ofrezco este error me aparece.

Agradecería enormemente su ayuda.
Puede ven el error por sí mismos en ancestre.com.mx al tratar de ver el catalogo en línea.

Última edición por topiltzin; 20/06/2009 a las 11:49
  #2 (permalink)  
Antiguo 20/06/2009, 11:28
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 1 mes
Puntos: 300
Respuesta: Warning: mysql_fetch_row()

muestra la consulta justamente anterior a esa línea 112 del códgio. En este foro de mySQL sólo podremos ayudarte si tu consulta está mal elaborada o no obtiene resultados por alguna razón. Pero antes comprueba con datos concretos que esa consulta devuelve datos, sea en la consola o en tu gestor gráfico (PHPMyAdmin o el que uses). Si la consulta está bien, deberías pedir ayuda en el foro PHP, mostrando esa parte del código. Si quieres que veamos la consulta, ponla y le echaremos un vistazo.
  #3 (permalink)  
Antiguo 20/06/2009, 11:46
 
Fecha de Ingreso: junio-2009
Mensajes: 11
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Warning: mysql_fetch_row()

El código del archivo que hace esta consulta no fue modificado, lo cambie del servidor anterior al nuevo servidor tal cual, en el servidor anterior funcionaba sin problema. Pues me da la sensasión de que la programación no esta mal, ¿es posible que el nuevo servidor tenga algo distinto que no soporte mi código, o algo así?

Igual agrego esa parte del código:

mysql_select_db("ancestre_db", $link);
if (!isset($pag)) $pag = 1; // Por defecto, pagina 1

$result = mysql_query("SELECT COUNT(id) FROM playeras WHERE genero = '$tipo' AND status = '1'", $link);
list($total) = mysql_fetch_row($result);


$result = mysql_query("SELECT * FROM playeras WHERE genero = '$tipo' AND status = '1' ORDER BY id DESC", $link);


$resGenero = mysql_query("SELECT * FROM playeras WHERE genero = '$tipo' AND status = '1' ORDER BY id DESC", $link);

$rowGenero = mysql_fetch_row($resGenero);

Última edición por topiltzin; 20/06/2009 a las 13:20
  #4 (permalink)  
Antiguo 20/06/2009, 13:39
 
Fecha de Ingreso: junio-2009
Mensajes: 11
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Warning: mysql_fetch_row()

Modifique la línea donde me aparece el error para que me diera mas información según lo que leí en un foro puse esto:

if(! $rowGenero = mysql_fetch_row($resGenero)){echo mysql_error();}

Que es la ultima línea de lo que habia publicado en el mensaje anterior.
Y al momento de entrar al sitio y hacer la consulta me dice
NO DATABASE SELECTED

¿Algun idea?
  #5 (permalink)  
Antiguo 20/06/2009, 19:51
 
Fecha de Ingreso: junio-2009
Mensajes: 11
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Warning: mysql_fetch_row()

¿Nadie tiene idea de que puede ser?
Me urge resolver esto... si alguién sabe algo, por favor dejeme un mensaje.
  #6 (permalink)  
Antiguo 20/06/2009, 22:24
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Warning: mysql_fetch_row()

Esto:
Cita:
NO DATABASE SELECTED
Puede ser que en la conexión no estuvieses declarando la base que debe abrir. Por eso el MySQL responde que no puede hacer nada porque no has seleccionado base alguna. Eso es en definitiva problema de PHP, no de MySQL, ya que la conexión y selección de base son, en tu caso, códigos en PHP.
El otro problema, y que deberías haber tenido en cuenta al momento del cambio, es establecer si el server de MySQL que tiene tu actual proveedor es una versión compatible con la que tenía tu anterior proveedor. Si no es así, y uno trabaja, por ejemplo, el 5.0 y otro el 4.0, tendrás problemas de compatibilidad en algunas codificaciones de las sentencias en SQL.
Un error del tipo:
Cita:
Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in /home/ancestre/www/www/modelos.php on line 112
normalmente no es un problema producido por la sintaxis de SQL sino por la PHP.

Sugerencias:
- Verifica que estás abriendo correctamente la base de datos. Puedes hacerlo por medio de una sentencia que te devuelva algún tipo de información global, como "SELECT DATABASE()", que te dará el nombre de la base activa.
- Verifica que no se esté cerrando la base.
- Asegúrate de que los nombres de los campos son correctos.
- Verifica que las variables estén realmente cargadas al momento de crear la consulta.

Luego veremos.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #7 (permalink)  
Antiguo 21/06/2009, 09:46
 
Fecha de Ingreso: junio-2009
Mensajes: 11
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Warning: mysql_fetch_row()

Gracias gnzsoloyo, verificaré lo que me recomiendas... y veré si alguien en PHP puede aportarme también alguna idea... gracias y estaré avisando si encontré el error.
  #8 (permalink)  
Antiguo 21/06/2009, 12:30
 
Fecha de Ingreso: junio-2009
Mensajes: 11
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Warning: mysql_fetch_row()

¡YA PUDE!

En lugar de:
$link = mysql_connect("localhost", "ancestre", "passwd");

Puse:

$link = mysql_connect("localhost:/tmp/mysql5.sock", "ancestre", "passwd");


¡Y FUNCIONÓ!
Muchas gracias y ojala esta experiencia le sirva a alguien mas.
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:58.