Manuels
Divers
Commentaire par news
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
Ta jointure est bonne.
Où se situe ton problème ?
Où se situe ton problème ?
J'ai déjà vu que le code était pas bon car j'ai fais deux fois le même while.
J'ai changé d'idée. Mais maintenant je cherche comment faire en sorte de mettre qu'une partie de la news et mettre lire la suit avec le lien sur toutes la news.
Merci
Seb
J'ai changé d'idée. Mais maintenant je cherche comment faire en sorte de mettre qu'une partie de la news et mettre lire la suit avec le lien sur toutes la news.
Merci
Seb
Salut,
Regarde dans la. Fog substr et wordwrap.
Pour ton 1er code :
Pour la date si ton sscanf sert a pouvoir la formater je te conseil de regarder la de la fonction mysql date_format.
Pour la requete sans l'etoile c'est mieux.
@+
Regarde dans la. Fog substr et wordwrap.
Pour ton 1er code :
Pour la date si ton sscanf sert a pouvoir la formater je te conseil de regarder la de la fonction mysql date_format.
Pour la requete sans l'etoile c'est mieux.
@+
Accès rapide :
Remonter 

