Bonjour,

Sur mon site les visiteurs peuvent enregistrer un rêve soit en étant inscrit (ils se voient alors attribuer un id individuel et permanant - si le membre modifie son pseudo, son id reste quand mm le même -, soit en ne l'étant pas (leur id est alors égal à 0 - merci encore à gilmaire de m'y avoir fait pensé !).

J'ai 2 tables :
- reves avec les champs suivants (entre autres) : id, titre, reve, pseudo, pseudo_id, date...
- reves_reveurs, avec les champs suivants (entre autres) : id, pseudo,...

Dans la table reves l'id correspond à l'id du rêve, pseudo au pseudo du rêveur si il n'est pas inscrit, et pseudo_id correspond à l'id du membre dans la table reves_reveurs.

J'arrive à afficher un rêve individuellement, que celui-ci ait été posté par un inscrit ou non, et en fonction de cela afficher ou non un lien vers la page du rêveur. Le code est sur ce post...

Je veux maintenant faire quelque chose de similaire mais pour afficher les 10 derniers rêves sur une page. Cependant avec le code suivant, seuls les rêves des non-inscrit s'affichent .

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
// Sélection des rêves online
$sql = "SELECT RR.id, RR.pseudo_id, RR.pseudo, RR.email, RR.email_publication, RR.titre, RR.reve, RR.date, RRVR.pseudo as pseudo_inscrit FROM reves_reves RR, reves_reveurs RRVR WHERE RR.activity='on' AND RRVR.id = RR.pseudo_id ORDER BY RR.id DESC LIMIT $reves_bckid,$nb_reves_aff";
if ($req = mysql_query($sql)) {
	$db_data_reves = mysql_fetch_assoc($req);
}
else {
	mysql_error_msg();
}
 
echo "<div class=\"reves\">";
 
// Affichage des rêves
while($db_data_reves = mysql_fetch_assoc($req)) {
 
	// Affichage du rêve
	echo "<h2 id=\"r".$db_data_reves['id']."\"><a href=\"reve.php?id=".$db_data_reves['id']."&amp;titre=";
	titre_url($db_data_reves['titre']);
	echo "\">".$db_data_reves['titre']."</a></h2>
	<p class=\"reve_infos\">Le ";
	datetime_fr($db_data_reves['date']);
 
	// Si le rêveur est inscrit
	if ($db_data_reves['pseudo_id'] >= 1) {
		echo ", <a href=\"reveur-infos.php?pseudo_id=".$db_data_reves['pseudo_id']."\">".$db_data_reves['pseudo_inscrit']."</a>";
	}
 
	// Si le rêveur n'est pas inscrit
	else {
		if ($db_data_reves['email_publication'] == 'yes') {
			echo ", ".$db_data_reves['pseudo']." (<a href=\"mailto:".$db_data_reves['email']."\">@</a>)";
		}
		else {
			echo ", ".$db_data_reves['pseudo'];
		}
	}
	echo " a confié le rêve suivant à la boîte à rêves :</p>
	<p class=\"reve\">".$db_data_reves['reve']."</p>
}
Je ne comprends pas pourquoi. Qu'en pensez-vous svp ?

ps : ma version MySQL est la 4.0.17 (si cela a une importance pour les éventuelles améliorations de requêtes...).