le 16/10/2010 à 19:03
sebing
Bonsoir,
J'essaye d'afficher les commentaires de mes news.
J'ai deux tables: news et commentaires_news.
Elle peuvent etre relié par id(news) et id_news(commentaires_news)
Merci
Bonne soirée
Seb
J'essaye d'afficher les commentaires de mes news.
J'ai deux tables: news et commentaires_news.
Elle peuvent etre relié par id(news) et id_news(commentaires_news)
.
Mon code ne marche pas, j'ai du mal a faire la jointure, voila mon code:<?php
//VARIABLES GENERALES
include("espace_membres/data.php");
global $dbserver;
global $dbdb;
global $dbuser;
global $dbpass;
//CONNEXION A LA BASE DE DONNEES
$base = @MYSQL_CONNECT ("$dbserver","$dbuser","$dbpass") or die ("<p>Erreur: impossible de communiquer avec la base de données.<br>Vérifiez les donnés du fichier <b>data.php</b>.</p>");
mysql_select_db("dbdb",$base);
// lancement de la requête. on sélectionne les news que l'on va ordonner suivant l'ordre "inverse" des dates (de la plus récente à la plus vieille : DESC) tout en ne sélectionnant que le nombre voulu de news à afficher (LIMIT)
$sql = 'SELECT * FROM commentaires_news, news where commentaires_news.id_news = news.id ;';
// on lance la requête (mysql_query) et on impose un message d'erreur si la requête ne se passe pas bien (or die)
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
// on compte le nombre de news stockées dans la base de données
$nb_news = mysql_num_rows($req);
if ($nb_news == 0) {
echo 'Aucune news enregistrée.';
}
else {
// si on a au moins une news, on l'affiche
while ($data = mysql_fetch_array($req)) {
// on décompose la date
sscanf($data['date'], "%4s-%2s-%2s %2s:%2s:%2s", $an, $mois, $jour, $heure, $min, $sec);
// on compte le nombre de news stockées dans la base de données
$nb_commentaires_news = mysql_num_rows($req);
if ($nb_commentaires_news == 0) {
echo 'Aucun commentaire enregistré.';
}
else {
// si on a au moins un commentaire, on l'affiche
while ($data = mysql_fetch_array($req)) {
// on affiche les résultats
echo'<span>'.htmlentities(trim($data['titre'])).':'.'<br>'.'</span>';
echo'<ul>'.htmlentities(trim($data['contenu'])).'<br>'.'</ul>';
?><h2>Commentaires</h2><?php
echo'<span>'.htmlentities(trim($data['auteur'])).'<br>'.'</span>';
echo'<span>'.htmlentities(trim($data['date_commentaire'])).'<br>'.'</span>';
echo'<ul>'.htmlentities(trim($data['commentaire'])).'<br>'.'</ul>';
}
}
}
}
?>
Merci
Bonne soirée
Seb