Foros del Web » Programando para Internet » PHP »

Warning: mysql_fetch_assoc(): 8 is not a valid MySQL

Estas en el tema de Warning: mysql_fetch_assoc(): 8 is not a valid MySQL en el foro de PHP en Foros del Web. Saludos, haciendo unas consultas para un listado de productos, me encuentro con este error Warning: mysql_fetch_assoc(): 8 is not a valid MySQL result resource in ...
  #1 (permalink)  
Antiguo 01/10/2009, 08:21
Avatar de T4ke0veR  
Fecha de Ingreso: agosto-2007
Ubicación: Quito - Ecuador
Mensajes: 1.720
Antigüedad: 16 años, 8 meses
Puntos: 28
Warning: mysql_fetch_assoc(): 8 is not a valid MySQL

Saludos,
haciendo unas consultas para un listado de productos, me encuentro con este error

Warning: mysql_fetch_assoc(): 8 is not a valid MySQL result resource in /home/indexa/public_html/proyectos/milazzo/productos.php on line 154

cosa q me extraña, ocupo dreamweaver para esta consulta pero de igual manera no veo error alguno, podrian ayudarme a encontrar el errror?.. ya he estado dos dias revisando y d verdad no topo con el error..

Código PHP:
<?php 
//conexion inicial
        
require_once('Connections/cersol.php'); 
        include(
'conect.php');
            if (!
function_exists("GetSQLValueString")) {
                function 
GetSQLValueString($theValue$theType$theDefinedValue ""$theNotDefinedValue ""
                {
                      
$theValue get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue;
                      
$theValue function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue);

              switch (
$theType) {
                case 
"text":
                  
$theValue = ($theValue != "") ? "'" $theValue "'" "NULL";
                  break;    
                    case 
"long":
                case 
"int":
                  
$theValue = ($theValue != "") ? intval($theValue) : "NULL";
                  break;
                case 
"double":
                  
$theValue = ($theValue != "") ? "'" doubleval($theValue) . "'" "NULL";
                  break;
                case 
"date":
                  
$theValue = ($theValue != "") ? "'" $theValue "'" "NULL";
                  break;
                case 
"defined":
                  
$theValue = ($theValue != "") ? $theDefinedValue $theNotDefinedValue;
                  break;
                      }
                  return 
$theValue;
                }
                }
                
//extraer variable        
        
$colname_Recordset1 "1";
if (isset(
$_GET['id'])) {
  
$colname_Recordset1 = (get_magic_quotes_gpc()) ? $_GET['id'] : addslashes($_GET['id']);
}
 
 
$currentPage $_SERVER["PHP_SELF"];

$maxRows_Recordset1 15;
$pageNum_Recordset1 0;
if (isset(
$_GET['pageNum_Recordset1'])) {
  
$pageNum_Recordset1 $_GET['pageNum_Recordset1'];
}
$startRow_Recordset1 $pageNum_Recordset1 $maxRows_Recordset1;

// primera consulta 
mysql_select_db($database_cersol$cersol);
$query_Recordset1 sprintf("SELECT * FROM productos WHERE id_cat = %s ORDER BY nombre ASC"$colname_Recordset1);
$query_limit_Recordset1 sprintf("%s LIMIT %d, %d"$query_Recordset1$startRow_Recordset1$maxRows_Recordset1);
$Recordset1 mysql_query($query_limit_Recordset1$cersol) or die(mysql_error().' : '.$query_Recordset1);
$row_Recordset1 mysql_fetch_assoc($Recordset1);
$totalRows_Recordset1 mysql_num_rows($Recordset1);

if (isset(
$_GET['totalRows_Recordset1'])) {
  
$totalRows_Recordset1 $_GET['totalRows_Recordset1'];
} else {
  
$all_Recordset1 mysql_query($query_Recordset1);
  
$totalRows_Recordset1 mysql_num_rows($all_Recordset1);
}
$totalPages_Recordset1 ceil($totalRows_Recordset1/$maxRows_Recordset1)-1;



$queryString_Recordset1 "";
if (!empty(
$_SERVER['QUERY_STRING'])) {
  
$params explode("&"$_SERVER['QUERY_STRING']);
  
$newParams = array();
  foreach (
$params as $param) {
    if (
stristr($param"pageNum_Recordset1") == false && 
        
stristr($param"totalRows_Recordset1") == false) {
      
array_push($newParams$param);
    }
  }
  if (
count($newParams) != 0) {
    
$queryString_Recordset1 "&" htmlentities(implode("&"$newParams));
  }
}

function 
escala($url,$base){
$datos GetImageSize($url) OR die("Imagen no válida");
if (
$datos[0]>$datos[1]){
$xp $datos[0]/$base;
$yp $datos[1]/$xp;
echo 
'<img src="'.$url.'" width="'.$base.'" height="'.$yp.'" border="0"/>';}
else{
    
$yp $datos[1]/$base;
    
$xp $datos[0]/$yp;
    echo 
'<img src="'.$url.'" width="'.$xp.'" height="'.$base.'" border="0"/>';}

}
?>
Gracias de antemano!
__________________
Diseño gráfico, Web, imagen corporativa, publicidad ...
  #2 (permalink)  
Antiguo 01/10/2009, 09:36
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: [S.O.S] Warning: mysql_fetch_assoc(): 8 is not a valid MySQL

Ese error indica que el resultado de la consulta no es valida, después de ejecutar la consulta imprime el valor de mysql_error() para que te indique el problema.

Saludos.
  #3 (permalink)  
Antiguo 01/10/2009, 10:01
Avatar de T4ke0veR  
Fecha de Ingreso: agosto-2007
Ubicación: Quito - Ecuador
Mensajes: 1.720
Antigüedad: 16 años, 8 meses
Puntos: 28
asi?
Código PHP:
echo mysql_errno($link) . ": " mysql_error($link) . "\n"
me sigue diciendo
Warning: mysql_fetch_assoc(): 8 is not a valid MySQL result resource in /home/indexa/public_html/proyectos/milazzo/productos.php on line 154

Código PHP:
mysql_select_db($database_cersol$cersol);
$query_Recordset1 sprintf("SELECT * FROM productos WHERE id_cat = %s ORDER BY nombre ASC"$colname_Recordset1);
$query_limit_Recordset1 sprintf("%s LIMIT %d, %d"$query_Recordset1$startRow_Recordset1$maxRows_Recordset1);
$Recordset1 mysql_query($query_limit_Recordset1$cersol) or die("There was a database error!<br>".mysql_error()."<br><br>The query was: ".HtmlEntities($query_Recordset1));
$row_Recordset1 mysql_fetch_assoc($Recordset1);
$totalRows_Recordset1 mysql_num_rows($Recordset1); 
ok revise y me esta mandando una consulta vacia, es como si no encontrara nada en la base de datos, cosa que es totalmente extraña pq hay productos y los nombres de campos y tablas son los mismos... no entiendo :S
__________________
Diseño gráfico, Web, imagen corporativa, publicidad ...

Última edición por GatorV; 01/10/2009 a las 10:48
  #4 (permalink)  
Antiguo 01/10/2009, 10:50
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: [S.O.S] Warning: mysql_fetch_assoc(): 8 is not a valid MySQL

Imprime el query antes de enviarlo para que veas que datos tiene.

Saludos.
  #5 (permalink)  
Antiguo 01/10/2009, 12:54
Avatar de T4ke0veR  
Fecha de Ingreso: agosto-2007
Ubicación: Quito - Ecuador
Mensajes: 1.720
Antigüedad: 16 años, 8 meses
Puntos: 28
Respuesta: Warning: mysql_fetch_assoc(): 8 is not a valid MySQL

Código PHP:
<?php include('conect.php');

@
$cat=$_REQUEST['id'];


    
$sql8="SELECT * FROM productos WHERE id_cat=$cat";
    
$sql_exec8=mysql_query($sql8) or die("There was a database error!<br>".mysql_error()."<br><br>The query was: ".HtmlEntities($sql8));;
    
$row8=mysql_fetch_assoc($sql_exec8);

function 
escala($url,$base){
$datos GetImageSize($url) OR die("Imagen no válida");
if (
$datos[0]>$datos[1]){
$xp $datos[0]/$base;
$yp $datos[1]/$xp;
echo 
'<img src="'.$url.'" width="'.$base.'" height="'.$yp.'" border="0"/>';}
else{
    
$yp $datos[1]/$base;
    
$xp $datos[0]/$yp;
    echo 
'<img src="'.$url.'" width="'.$xp.'" height="'.$base.'" border="0"/>';}

}
?>
le coloque la condicion q si la tabla estaba vacia.. y em muestra como si en la tabla no hubiesen datos.. es decir me esta efectuando una consulta vacia no me arroja datos y no entiendo el por que
__________________
Diseño gráfico, Web, imagen corporativa, publicidad ...
  #6 (permalink)  
Antiguo 01/10/2009, 14:34
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Warning: mysql_fetch_assoc(): 8 is not a valid MySQL

Sigo sin ver donde esta ni el condicional ni nada, mi comentario iba a que imprimieras la consulta para que la ejecutes en tu Gestor de Bases de datos favorito y analizes los resultados que te devuelve.

Saludos.
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 22:54.