2012-03-01 18 views
5

Ok, tal vez solo estoy cerrando pero aquí estoy haciendo un sistema de notificación y estoy usando PHP como mi back-end. Estoy utilizando el código siguiente para configurar el número correcto de notificacionesNotificaciones de PHP

$updates = mysql_query("SELECT * FROM updates WHERE userid = '$uid'"); 
while($row = mysql_fetch_array($query)) { 
    if ($updates>0) { 
     for ($i=0; $i<$updates;$i++) { 
      echo ' 
       <li class="update">'.$updates.'</li> 
      '; 
     } 
    } else { 
     echo'<h4 class="nonew">No New Notifications</h4>'; 
    } 
} 

Este código hará eco el número correcto de notificaciones, pero volveré a repetir la totalidad donde se supone que debe hacerse eco de que solo el contenido de los comentarios. ¿Cómo echo solo el contenido de esa notificación única? Estoy seguro de que tiene una respuesta simple y ya lo sé, pero no puedo pensarlo ahora. ¡Gracias!


EDIT:

Heres mi estructura de base de datos:

Updates 
-id 
-userid 
-active 
-date 
-content 
+4

¿Puede dar una muestra de lo que está almacenado en '$ updates'? – Josh

+3

Su edición no ayuda. Muéstranos el valor de '$ updates' –

+0

Hola Joseph, ¿tienes una serie de actualizaciones? Parece que estás usando '$ updates' como un número. –

Respuesta

4
// In case $uid comes from user input 
$uid = mysql_real_escape_string($uid); 

// Fetch the user's notifications 
$updates = mysql_query("SELECT content FROM updates WHERE userid = '" . $uid . "'"); 

if (mysql_num_rows($updates)) 
{ 
    // Output the user's notifications 
    while ($get = mysql_fetch_array($updates)) 
    { 
     echo '<li class="update">' . $get['content'] . '</li>' . "\n"; 
    } 
} 
else 
{ 
    echo '<h4 class="nonew">No New Notifications</h4>' . "\n"; 
} 
+2

Nunca pensé en usar 'mysql_num_rows'. ¡Gracias! –

+1

Para ser cauteloso, quizás proporcione un recordatorio para desinfectar '$ uid' en caso de que se tome de la entrada del usuario. – Josh

+1

Estaba escribiendo exactamente lo mismo lol – Bot

Cuestiones relacionadas