Foros del Web » Programando para Internet » PHP »

error mysql_fetch_assoc

Estas en el tema de error mysql_fetch_assoc en el foro de PHP en Foros del Web. Alguien consigue ver donde cometo el fallo? llevo ya su buena hora Código PHP: <?php $now  =  date ( 'Ymd' ); $title  =  "TITLULO    " ; ...
  #1 (permalink)  
Antiguo 14/06/2012, 08:42
 
Fecha de Ingreso: mayo-2012
Mensajes: 76
Antigüedad: 11 años, 10 meses
Puntos: 1
error mysql_fetch_assoc

Alguien consigue ver donde cometo el fallo? llevo ya su buena hora
Código PHP:
<?php
$now 
date('Ymd');
$title "TITLULO    ";
$ads mysql_query("SELECT `advert_id` , `image` FROM `adverts` WHERE $now < `expires` AND `shown` =0");

        while (
$ads_row mysql_fetch_assoc($ads)) {
                
$advert_id $ads_row['advert_id'];
                
$image $ads_row['image'];

                        echo 
'<a href="go.php?advert_id='.$advert_id.'" class="show" target="_blank">
                        <img src="'
.$image.'" alt="" width="750" height="150" rel="<center><h3>'.$title.'</h3>"/></center></a>';
 
                        
mysql_query("UPDATE `adverts` SET `shown`=1, `impressions` = `impressions`+1 WHERE `advert_id` = $advert_id");
                
$shown mysql_query("");
        
        if (
mysql_result($shown0) == 0) {
        
mysql_query("UPDATE `adverts` SET `shown`=0");
        }
}
?>
Código HTML:
Warning: mysql_fetch_assoc() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\ads.inc.php on line 6
  #2 (permalink)  
Antiguo 14/06/2012, 08:43
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 13 años, 11 meses
Puntos: 461
Respuesta: error mysql_fetch_assoc

Siempre es buena práctica cuando se esta desarrollando depurar los datos
Código PHP:
Ver original
  1. $ads = mysql_query("SELECT `advert_id` , `image` FROM `adverts` WHERE $now < `expires` AND `shown` =0") or die('Error en la consulta ' .mysql_error());
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #3 (permalink)  
Antiguo 14/06/2012, 08:46
 
Fecha de Ingreso: mayo-2012
Mensajes: 76
Antigüedad: 11 años, 10 meses
Puntos: 1
Respuesta: error mysql_fetch_assoc

gracias por tu consejo, lo tendre en cuenta :)


vaya.. me sale:

Código HTML:
Error en la consulta 1 No database selected
y no esta seleccionandose en el
Código PHP:
FROM `adverts
?
  #4 (permalink)  
Antiguo 14/06/2012, 08:56
 
Fecha de Ingreso: junio-2012
Mensajes: 3
Antigüedad: 11 años, 9 meses
Puntos: 0
Respuesta: error mysql_fetch_assoc

Creo que falla porque $ads esta vacio ya que practicamente el "WARNING" dice que el mysql_fetch_assoc() espera parametros que al parecer no hay... Te aconcejo que revises tu consulta directamente en la base de datos, y en el caso que si funcione tu consulta, entonces revisa tu conexion a la base de datos y la informacion que le pusiste. Procura apuntar a la base de datos correspondiente.
  #5 (permalink)  
Antiguo 14/06/2012, 09:01
 
Fecha de Ingreso: mayo-2012
Mensajes: 76
Antigüedad: 11 años, 10 meses
Puntos: 1
Respuesta: error mysql_fetch_assoc

Cita:
Iniciado por fitodeew Ver Mensaje
Creo que falla porque $ads esta vacio ya que practicamente esta diciendo que el mysql_fetch_assoc() espera parametros que al parecer no hay... Te aconcejo que revises tu consulta directamente en la base de datos, y en el caso que si funcione tu consulta, entonces revisa tu conexion a la base de datos y la informacion que le pusiste. Procura apuntar a la base de datos correspondiente.


haciendo la consulta a mano, despues la conexion a la db la tengo random en cada file, osea que funciona seguro, ademas si la añado en este file me salta como que ya la añadi antes
  #6 (permalink)  
Antiguo 14/06/2012, 09:11
 
Fecha de Ingreso: junio-2012
Mensajes: 3
Antigüedad: 11 años, 9 meses
Puntos: 0
Respuesta: error mysql_fetch_assoc

Cita:
Iniciado por Doch Ver Mensaje


haciendo la consulta a mano, despues la conexion a la db la tengo random en cada file, osea que funciona seguro, ademas si la añado en este file me salta como que ya la añadi antes
Por lo que veo, tu consulta no devuelve datos, veo 0 resultados en la imagen que adjuntaste, de ser asi, el fetch_assoc fallara, por eso es que deberias controlarlo con una validacion antes de hacer el "while".

Ejemplo:

if (!$ads) {
echo "No se pudo ejecutar con exito la consulta en la BD: " . mysql_error();
exit;
}

Esto te ayudara a verificar lo que trato de explicar.
  #7 (permalink)  
Antiguo 14/06/2012, 09:15
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 13 años, 11 meses
Puntos: 461
Respuesta: error mysql_fetch_assoc

el problema que te esta diciendo mysql
Cita:
Error en la consulta 1 No database selected
es que no has hecho un mysql_select_db('tu_base_datos'); y mientras no tengas la base de datos seleccionada el no sabe a quien le va a preguntar ni por que tabla, saludos
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #8 (permalink)  
Antiguo 14/06/2012, 09:16
 
Fecha de Ingreso: junio-2012
Mensajes: 3
Antigüedad: 11 años, 9 meses
Puntos: 0
Respuesta: error mysql_fetch_assoc

Cita:
Iniciado por Doch Ver Mensaje
gracias por tu consejo, lo tendre en cuenta :)


vaya.. me sale:

Código HTML:
Error en la consulta 1 No database selected
y no esta seleccionandose en el
Código PHP:
FROM `adverts
?
Esto lo dice todo, no tiene relacion con el "FROM" sino que en tu conexion a la DB falta mysql_select_db('{NOMBRE DE LA DB QUE QUIERES}');
  #9 (permalink)  
Antiguo 14/06/2012, 09:18
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: error mysql_fetch_assoc

Cita:
Error en la consulta 1 No database selected
Eso te sale cuando no usas mysql_select_db() para seleccionar la base de datos.

Saludos.
  #10 (permalink)  
Antiguo 14/06/2012, 09:19
 
Fecha de Ingreso: mayo-2012
Mensajes: 76
Antigüedad: 11 años, 10 meses
Puntos: 1
Respuesta: error mysql_fetch_assoc

claro es lo que me dijo antes carlos_belisario, depure la query i me salta eso, que no he seleccionado la db cuando tengo un From `adverts` en la query para seleccionar la db

edit: es muy raro, tengo todas las tablas en la misma base de datos que la llamo a principio del archivo principal, el que os muestro lo que hago es incluirlo
  #11 (permalink)  
Antiguo 14/06/2012, 09:23
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 13 años, 11 meses
Puntos: 461
Respuesta: error mysql_fetch_assoc

estas errado From `adverts` estas diciendo de que tabla, que no es lo mismo a una base de datos, una base de datos esta conformada por muchas tablas, saludos
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #12 (permalink)  
Antiguo 14/06/2012, 09:28
 
Fecha de Ingreso: mayo-2012
Mensajes: 76
Antigüedad: 11 años, 10 meses
Puntos: 1
Respuesta: error mysql_fetch_assoc

si, me di cuenta luego.. :p
he añadido el codigo entero al archivo principal sin lograr que funcione sin embargo, si lo borro, la pagina se ejecuta bien i muestra incluso datos que salen desde la data base sin darme ningun error...
  #13 (permalink)  
Antiguo 14/06/2012, 10:00
Avatar de Heiroon  
Fecha de Ingreso: junio-2010
Ubicación: Caracas, Venezuela - Por ahora...
Mensajes: 495
Antigüedad: 13 años, 9 meses
Puntos: 63
Pregunta Respuesta: error mysql_fetch_assoc

Y como te trae datos de la base de datos sin conectarte???

Esa metodología de trabajo si que no la conozco!!

Ahora en serio... Puedes mostrar la parte del código donde te conectas a la base de datos (si lo haces).?

Gracias y saludos!
__________________
Gmail : [email protected]
Twitter: @heiroon

I'm back!
  #14 (permalink)  
Antiguo 14/06/2012, 10:11
 
Fecha de Ingreso: mayo-2012
Mensajes: 76
Antigüedad: 11 años, 10 meses
Puntos: 1
Respuesta: error mysql_fetch_assoc

este es mi archivo que uso en cada file para conectarme

Código PHP:
<?php 
// conexion a la base de datos
function conectar_base_datos() { 
    
mysql_connect("localhost","*****","****"); 
    
mysql_select_db("******"); 
}
// encriptar en md5
function encriptacion($a_encriptar)
{
$encriptado md5($a_encriptar);
    return 
$encriptado;
}
// logout
function cerrar_sesion(){
    
session_destroy();
    
header("Location: index.php");
}
// validacion del email
function validacionemail($email) {
    if (@
ereg("^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@+([_a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]{2,200}\.[a-zA-Z]{2,6}$"$email)) {
        return 
true;
    } else {
        return 
false;
    }
}
?>
  #15 (permalink)  
Antiguo 14/06/2012, 11:00
 
Fecha de Ingreso: mayo-2012
Mensajes: 76
Antigüedad: 11 años, 10 meses
Puntos: 1
Respuesta: error mysql_fetch_assoc

incluso he pegado las consultas en el archivo de antes i me dice que no he seleccionado la DB O.o)

bueno creo que lo he medio arreglado me visto obligado a volver a declarar en el archivo la conexion:

Código PHP:
mysql_connect("localhost","*****","****"); 
    
mysql_select_db("******"); 
y de momento no da el error..

Última edición por Doch; 14/06/2012 a las 11:48

Etiquetas: mysql
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:08.