comment afficher les questions et les réponses du forum en même temps ?

Répondre
coringan
le 14/02/2010 à 06:09
coringan
D’après l’exemple suivant donné dans ce site (comment faire un forum en PHP ?)

<?php
$sql = 'SELECT id, auteur, titre, date_derniere_reponse FROM forum_sujets ORDER BY date_derniere_reponse DESC';

while ($data = mysql_fetch_array($req)) {

// on décompose la date
sscanf($data['date_derniere_reponse'], "%4s-%2s-%2s %2s:%2s:%2s", $annee, $mois, $jour, $heure, $minute, $seconde);

// on affiche les résultats
echo '<tr>';
echo '<td>';

// on affiche le nom de l'auteur de sujet
echo htmlentities(trim($data['auteur']));
echo '</td><td>';

// on affiche le titre du sujet, et sur ce sujet, on insère le lien qui nous permettra de lire les différentes réponses de ce sujet
echo '<a href="./lire_sujet.php?id_sujet_a_lire=' , $data['id'] , '">' , htmlentities(trim($data['titre'])) , '</a>';

echo '</td><td>';

// on affiche la date de la dernière réponse de ce sujet
echo $jour , '-' , $mois , '-' , $annee , ' ' , $heure , ':' , $minute;
}

?>


Serait-il possible de d’afficher les données de la table forum_reponses (auteur, message et date_reponse) en même temps que celles de la table forum_sujets avec le fichier index.php ?
Je fais ce qui me plaît, et ce que je fais me plaît !
coringan
le 14/02/2010 à 18:55
coringan
Ok, je reformule ma question
Je voudrais également afficher l’auteur de la dernière réponse dans la même cellule que la date de dernière réponse.
Lorsque je le fais comme il a été fait avec la date de dernière réponse, c’est-à-dire en ajoutant le champ repondeur dans la table forum_sujets, il y a un problème.
Le lien de l’auteur du sujet exécute le lien de l’auteur de la dernière réponse.

<?php  

define('MODELE_REQUETE', 'SELECT SQL_CALC_FOUND_ROWS nom_image, id, pseudo_auteur AS pseudonyme, sujet, titre, repondeur, ddate_rep, date_sujet FROM image, forum_sujet WHERE (image.code = forum_sujet.code_auteur) AND (sujet = "Sexualité")
ORDER BY ddate_rep DESC LIMIT %d,%d');

while ($data = mysql_fetch_array($result_req))
{
echo '<tr><td bgcolor="#F9F9F9" align=left><font size="2"><body link="#333333" vlink="#333333" alink="#333333">
<a class="info_fiche" href="Fiche.php?pseudonyme=' , $data['pseudonyme'] , '" style="text-decoration:none">
<img src = "'.$adresse.$data['nom_image'].'" alt = "" width = "60" height ="60" border="0"/>
</br>'.$data['pseudonyme'].'', '<span style="color : #666666; font-size : 11pt;">Voir la fiche de ce membre</span>
</a></body></font></td>
<td bgcolor="#F9F9F9" align=left valign=top>
<b><a class="info_titre" href="LireSujet.php?code_sujet=' , $data['id'] , '" style="text-decoration:none; color : #3228BC; font-size : 13pt;"></b>
', stripslashes(htmlentities(trim($data['titre']))),'
<span style="color : #666666; font-size : 11pt;">Lire ce sujet</span></a>
</br><span style="color : #666666; font-size : 11pt;">'.$dte.'</span></td>
<td bgcolor="#F9F9F9" align=left valign=top>
<a class="info_fiche" href="Fiche.php?repondeur=' , $data['repondeur'] , '" style="text-decoration:none">
'.$data['repondeur'].'', '</a>
</br><span style="color : #666666; font-size : 11pt;">'.$ddte.'</span></td></tr>';
echo '<tr><td></td></tr>';
}
?>
Je fais ce qui me plaît, et ce que je fais me plaît !
Keika
le 15/02/2010 à 02:47
Keika
il faudrait voir ce que ta requete sort comme resultats...
Si ton $data['repondeur'] n'est pas correcte ta requete est donc mauvaise.
Dans phpMyAdmin (ou ce que tu utilises comme gestion de BDD) essaye de lancer ta requete et voit ce que ca resort.
Le PHP --> C'est dur !
moogli
le 15/02/2010 à 20:30
moogli
salut,

ta requete est loin d'etre celle du comment faire.

le champ répondeur n'existe pas dans la table d'origine.

Peut tu nous faire un copier coller du "create table" de tes tables SQL.

sur le principe il te faut faire une jointure comme expliqué dans le comment faire.

@+
Il en faut peu pour être heureux !!!!!
Sarti
le 16/02/2010 à 02:23
Sarti
J'ai repris tout le traitement à zéro.
je vous reviens avec le résultat plus tard si nécessaire.
Merci de votre aide
Répondre

Ecrire un message

Votre message vient d'être créé avec succès.
LoadingChargement en cours