2011-06-04 3 views
0

Je ne peux pas afficher les messages envoyés à un utilisateur.Affichage des enregistrements renvoyés à partir de la requête MySQL

Disons que l'utilisateur était la colonne id dans ma table "messages", comment afficher les messages envoyés à cet utilisateur?

session_start(); 
require "bidcon.php"; 
$userfinal=$_SESSION['username']; 
$id = mysql_query("SELECT id FROM searchengine") or die(mysql_error()); 

// get the messages from the table. 
$get_messages = mysql_query(
    "SELECT messages_id FROM messages 
    WHERE to_user='$id' ORDER BY messages_id DESC") 
    or die(mysql_error()); 

$get_messages2 = mysql_query(  
    "SELECT * FROM messages   
    WHERE to_user='$id' ORDER BY messages_id DESC")  
    or die(mysql_error()); 

$num_messages = mysql_num_rows($get_messages); 
// display each message title, with a link to their content 
echo '<ul>'; 

for($count = 1; $count <= $num_messages; $count++) 
{ 
    $row = mysql_fetch_array($get_messages2); 

Répondre

0

Je ne comprends pas très bien pourquoi vous avez besoin de deux requêtes différentes. Mais votre question principale est de savoir comment afficher les enregistrements. Vous le feriez à l'intérieur de la boucle while, comme ceci:

$rs = mysql_query("SELECT id FROM searchengine") or die(mysql_error()); 
$rec = mysql_fetch_assoc($rs); 
$id = $rec['id']; 

// get the messages from the table. 
$get_messages = mysql_query(
    "SELECT * FROM messages 
    WHERE to_user='$id' ORDER BY messages_id DESC") 
    or die(mysql_error()); 
$num_messages = mysql_num_rows($get_messages); 

// display each message title, with a link to their content 
echo '<ul>'; 
while($row=mysql_fetch_assoc($get_messages)){ 
    // do stuff with each row 
    echo "<li>".$row['somefield']."</li>"; 
} 
echo '</ul>'; 
+0

Vous devez envelopper les tableaux associatifs entre accolades afin qu'ils soient analysés dans une chaîne comme ça. –

+0

'$ id = mysql_fetch_assoc ($ rs) ['id']'? Je souhaite ... :) – netcoder

+0

@netcoder - la seule chose que j'aime à propos de javascript, c'est qu'il supporte ce genre de syntaxe –

0

Ce:

$id = mysql_query("SELECT id FROM searchengine"); 

Fera $id une ressource MySQL, et non l'entier/chaîne que vous cherchez.

Pour ce faire, à la place:

$res = mysql_query("SELECT id FROM searchengine"); 
$id = mysql_result($res, 0); 
+0

n'a toujours pas fonctionné. Ajoutez-vous la partie "ou mourir"? – mohamed

+0

Vous pouvez, je l'ai juste laissé hors de l'exemple. Essayez 'var_dump'ing' $ get_messages' et vérifiez ce que vous avez là. – netcoder

+0

n'a toujours pas fonctionné. d'autres suggestions? – mohamed

Questions connexes