Je débute activement dans la création d'un site dynamique.
Je séche sur deux parties de mon site... Celle concernant le tchat (actualisation non automatique) et le script concernant le forum.
En effet, pour ce qui est du forum, je suis dépassé sur l'utilisation de mysql...
Je rencontre trois problémes...
Le premier est que lors de ma requéte sql pour l'affichage du sommaire et donc la liste des postes je me trouve avec deux entrées mysql similaire ("post_id" dans la table forum_post et la table forum_rep) du coup d'après moi il faut que j'ai recours aux alias mais après plusieurs tentatives rien n'y fait.
Le second est que je voudrais afficher sur chaque ligne les infos concernant le post mais aussi celles concernant la dernière réponse associée.
Enfin, je voudrais trier l'affichage des posts (ici uniquement ceux qualifiés de topic) en fonction de la date de leurs dernières réponses ou si il n'y en a pas eu de prendre par défaut la date de publication du post lui méme...
Le code :
Code : Tout sélectionner
$query=$db->prepare('SELECT *
FROM forum_post
LEFT JOIN membres ON forum_post.post_createur = membres.membre_id
LEFT JOIN forum_rep ON forum_rep.post_id = forum_post.post_id
WHERE cat_id = :cat AND post_topic = :post_topic');
$query->bindValue(':cat',$cat, PDO::PARAM_STR);
$query->bindValue(':post_topic',1, PDO::PARAM_STR);
$query->execute();
/* $query=$db->prepare('SELECT *
FROM forum_rep
LEFT JOIN membres ON forum_rep.rep_createur = membres.membre_id
WHERE post_id = :post_id
ORDER BY rep_id DESC LIMIT 0, 1');
$query->bindValue(':post_id',$data['post_id'], PDO::PARAM_STR);
$query->execute();
$data2 = $query->fetch(); */
echo '<center><a href="index.php?page=forum&action=post_form&cat='.$cat.'"><button class="actualiser">Nouveau</button></a></center><br />';
if ($query->rowCount()<1)
{
echo'';
}
else
{
while ($data = $query->fetch()) {
echo'<table class="fo_liste">
<tr>
<td width="33%">
<a href="index.php?page=forum&cat='.$cat.'&post='.$data['post_id'].'">'.$data['post_titre'].'</a><br />
Par '.$data['membre_pseudo'].' le '.date('d/m/Y à H:i',$data['post_time']).'
</td>
<td width="33%">
'.count($data['rep_id']).' message(s)
</td>';
/* echo'<td width="33%">
<p align="left">Dernier message par '.$data2['membre_pseudo'].'<br />
le '.date('d/m/Y à H:i',$data2['rep_time']).'</p>
</td> */
echo'</table>';
}
}Merci.