Foros del Web » Programando para Internet » PHP »

Buscar entre todos

Estas en el tema de Buscar entre todos en el foro de PHP en Foros del Web. Buenas; Mi problema es el siguiente: Tengo una DB llamada "contacto" en el que se guardan los mensajes enviados desde mi web, en esta DB ...
  #1 (permalink)  
Antiguo 14/02/2003, 03:29
Avatar de ferent  
Fecha de Ingreso: junio-2002
Ubicación: Madrid
Mensajes: 633
Antigüedad: 15 años, 6 meses
Puntos: 0
Buscar entre todos

Buenas;

Mi problema es el siguiente: Tengo una DB llamada "contacto" en el que se guardan los mensajes enviados desde mi web, en esta DB hay un campo llamado "leido", que si están leidos pone "si" y en caso contrario pone "no", ¿inteligente verdad?

Entonces hago un query y por ejemplo me pone "si , no , si..." y le digo:
Código PHP:
while($row mysql_fetch_array($result)) {
$leido $row["leido"]; }
if (
$leido == "no") { echo "Hay mensajes pendientes para leer"; }
else { echo 
"No tienes mensajes pendientes"; } 
El problema está en que la variable $leido coincide SOLO con la última aparecida en mi tabla, (logicamente) y si la última es un si (leido) aunque haya mensajes "no" leidos me escribe "No tienes mensajes pendientes".

¿Como hago para decirle que si en el resultado hay ALGUN "no", que me ponga "Hay mensajes pendientes"?

Gracias
__________________
Culto es aquel que sabe donde encontrar lo que no sabe.
  #2 (permalink)  
Antiguo 14/02/2003, 04:06
Avatar de ||Dj||  
Fecha de Ingreso: enero-2002
Mensajes: 2.349
Antigüedad: 15 años, 11 meses
Puntos: 1
probaste algo simple como esto?

$sql = "SELECT * FROM tabla WHERE leido='no'";
$result = mysql_query($sql);
$pendientes = mysql_num_rows($result);

echo "tienes ".$pendientes." mensajes pendientes";
  #3 (permalink)  
Antiguo 14/02/2003, 04:16
Avatar de ferent  
Fecha de Ingreso: junio-2002
Ubicación: Madrid
Mensajes: 633
Antigüedad: 15 años, 6 meses
Puntos: 0
JUER!!!, mira que llevo tiempo con esto... jejeje, gracias!!
__________________
Culto es aquel que sabe donde encontrar lo que no sabe.
  #4 (permalink)  
Antiguo 14/02/2003, 04:39
Avatar de ||Dj||  
Fecha de Ingreso: enero-2002
Mensajes: 2.349
Antigüedad: 15 años, 11 meses
Puntos: 1
Vale la aclaracion que lo ideal es hacerlo mediante un COUNT(*) en el SELECT por una cuestion de economizar recursos pero ambos casos sirven.

Salu2.
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 18:40.