Problème affichage en php
hadche
Messages postés
14
Date d'inscription
Statut
Membre
Dernière intervention
-
Alain_42 Messages postés 5361 Date d'inscription Statut Membre Dernière intervention -
Alain_42 Messages postés 5361 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je dois réaliser un petit programme pour mon exam qui doit gérer un système de news avec leurs commentaires en php. Le prof nous a donné la page principale mais j'ai un problème. Il nous demande en premier lieu d'afficher les 5 dernières news postés et en dessous un lien qui permet d'afficher toutes les news. Quand je clique sur le lien "toutes les news" il me laisse la page des "dernières news".
Un autre problème est que qaudn je clique pour voir le commentaire qui va avec la news, rien ne s'affiche la page reste tel quelle!!!!!
Voilà mon code de la page principale:
<html>
<head>
<title>News et comments</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body >
<?php
//connection à la base
$connect = mysql_connect("localhost", "root", "");
mysql_select_db("news_db", $connect);
//nombre de news par page
$max_items = 5;
//afficher les news
function displayNews(){
print "<h3>Les dernières News</h3>";
//récup des variables globales
global $max_items, $connect;
$rsnews = mysql_query("SELECT id, title, newstext, DATE_FORMAT(postdate, '%Posté le %d-%m-%Y %H:%i:%s') as date FROM news ORDER BY postdate DESC LIMIT $max_items", $connect);
while ($res = mysql_fetch_array($rsnews))
{
print "<div class=\"titre\"><span class=\"left\">";
print $res['title'];
print "</span><span class=\"right\">";
print $res['date'];
print "</span></div>";
echo '<div class="newstext">' . $res["newstext"] . '</div>';
$id=$res["id"];
$rscomment = mysql_query("SELECT id FROM news_comments WHERE news_id=$id", $connect);
$nb = mysql_num_rows($rscomment);
echo '<a href="news.php?action=show&id=' . $res["id"] . '" class="comment">Commentaires [' . $nb . ']</a><br /><br />' ;
}
echo '<br /><a href="news.php?action=all">Afficher toutes les news</a>' ;
}
//afficher les news
function displayAllNews(){
print "<h3>Toutes les News</h3>";
//récup des variables globales
global $connect;
$rsnews = mysql_query("SELECT id, title, newstext, DATE_FORMAT(postdate, '%Posté le %d-%m-%Y %H:%i:%s') as date FROM news ORDER BY postdate DESC", $connect);
while ($res = mysql_fetch_array($rsnews))
{
print "<div class=\"titre\"><span class=\"left\">";
print $res['title'];
print "</span><span class=\"right\">";
print $res['date'];
print "</span></div>";
echo '<div class="newstext">' . $res["newstext"] . '</div></div>';
$id=$res["id"];
$rscomment = mysql_query("SELECT id FROM news_comments WHERE news_id=$id", $connect);
$nb = mysql_num_rows($rscomment);
echo '<a href="news.php?action=show&id=' . $res["id"] . '" class="comment">Commentaires [' . $nb . ']</a><br /><br />' ;
}
echo '<br /><a href="news.php?action=\"\"">Revenir aux dernières news</a>';
}
function displayOneItem($id){
print "<h3>Les Commentaires</h3>";
global $connect ;
$rsnews = mysql_query("SELECT id, title, newstext, DATE_FORMAT(postdate, '%a %d-%m-%Y %H:%i:%s') as date FROM news WHERE id=$id", $connect);
$res = mysql_fetch_array($rsnews);
print "<div class=\"titre\"><span class=\"left\">";
print $res['title'];
print "</span><span class=\"right\">";
print $res['date'];
print "</span></div>";
echo '<div class="newstext">' . $res["newstext"] . '</div></div><br /> ';
$rscomment = mysql_query("SELECT id, news_id, name, comment FROM news_comments WHERE news_id=$id", $connect);
while ($res2 = mysql_fetch_array($rscomment))
{
echo '<div class="comment">Nom: ' . $res2["name"] . '</div>';
echo '<div class="comment">Commentaire: ' . $res2["comment"] . '</div><br />';
}
echo '<form method="post" action="news.php?action=addComment&id=' . $id . '" name="commentaire">';
echo '<input type="text" name="nom" id="nom" /><br />';
echo '<textarea rows="5" name="comment" id="comment"></textarea><br />';
echo '<input type="submit" name="submit" id="submit" value="Ajouter le commentaire" />';
echo '</form>';
echo '<br /><a href="news.php?action=\'\'">Revenir aux dernières news</a>';
}
function addComment($id){
global $connect;
$nom = $_POST['nom'];
$comment = $_POST['comment'];
mysql_query("INSERT INTO news_comments VALUES('','$id','$nom','$comment')", $connect);
echo '<a href="news.php?action=show&id=' . $id . '">Vérif</a>';
}
if (!isset($HTTP_GET_VARS['action'])) {
$HTTP_GET_VARS['action'] = '';
}
switch ($HTTP_GET_VARS['action']){
case 'show' : displayOneItem($HTTP_GET_VARS['id']);
break ;
case 'addComment' : addComment($HTTP_GET_VARS['id']);
break ;
case 'all' : displayAllNews();
break ;
default : displayNews();
}
?>
</body>
</html>
Je dois réaliser un petit programme pour mon exam qui doit gérer un système de news avec leurs commentaires en php. Le prof nous a donné la page principale mais j'ai un problème. Il nous demande en premier lieu d'afficher les 5 dernières news postés et en dessous un lien qui permet d'afficher toutes les news. Quand je clique sur le lien "toutes les news" il me laisse la page des "dernières news".
Un autre problème est que qaudn je clique pour voir le commentaire qui va avec la news, rien ne s'affiche la page reste tel quelle!!!!!
Voilà mon code de la page principale:
<html>
<head>
<title>News et comments</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body >
<?php
//connection à la base
$connect = mysql_connect("localhost", "root", "");
mysql_select_db("news_db", $connect);
//nombre de news par page
$max_items = 5;
//afficher les news
function displayNews(){
print "<h3>Les dernières News</h3>";
//récup des variables globales
global $max_items, $connect;
$rsnews = mysql_query("SELECT id, title, newstext, DATE_FORMAT(postdate, '%Posté le %d-%m-%Y %H:%i:%s') as date FROM news ORDER BY postdate DESC LIMIT $max_items", $connect);
while ($res = mysql_fetch_array($rsnews))
{
print "<div class=\"titre\"><span class=\"left\">";
print $res['title'];
print "</span><span class=\"right\">";
print $res['date'];
print "</span></div>";
echo '<div class="newstext">' . $res["newstext"] . '</div>';
$id=$res["id"];
$rscomment = mysql_query("SELECT id FROM news_comments WHERE news_id=$id", $connect);
$nb = mysql_num_rows($rscomment);
echo '<a href="news.php?action=show&id=' . $res["id"] . '" class="comment">Commentaires [' . $nb . ']</a><br /><br />' ;
}
echo '<br /><a href="news.php?action=all">Afficher toutes les news</a>' ;
}
//afficher les news
function displayAllNews(){
print "<h3>Toutes les News</h3>";
//récup des variables globales
global $connect;
$rsnews = mysql_query("SELECT id, title, newstext, DATE_FORMAT(postdate, '%Posté le %d-%m-%Y %H:%i:%s') as date FROM news ORDER BY postdate DESC", $connect);
while ($res = mysql_fetch_array($rsnews))
{
print "<div class=\"titre\"><span class=\"left\">";
print $res['title'];
print "</span><span class=\"right\">";
print $res['date'];
print "</span></div>";
echo '<div class="newstext">' . $res["newstext"] . '</div></div>';
$id=$res["id"];
$rscomment = mysql_query("SELECT id FROM news_comments WHERE news_id=$id", $connect);
$nb = mysql_num_rows($rscomment);
echo '<a href="news.php?action=show&id=' . $res["id"] . '" class="comment">Commentaires [' . $nb . ']</a><br /><br />' ;
}
echo '<br /><a href="news.php?action=\"\"">Revenir aux dernières news</a>';
}
function displayOneItem($id){
print "<h3>Les Commentaires</h3>";
global $connect ;
$rsnews = mysql_query("SELECT id, title, newstext, DATE_FORMAT(postdate, '%a %d-%m-%Y %H:%i:%s') as date FROM news WHERE id=$id", $connect);
$res = mysql_fetch_array($rsnews);
print "<div class=\"titre\"><span class=\"left\">";
print $res['title'];
print "</span><span class=\"right\">";
print $res['date'];
print "</span></div>";
echo '<div class="newstext">' . $res["newstext"] . '</div></div><br /> ';
$rscomment = mysql_query("SELECT id, news_id, name, comment FROM news_comments WHERE news_id=$id", $connect);
while ($res2 = mysql_fetch_array($rscomment))
{
echo '<div class="comment">Nom: ' . $res2["name"] . '</div>';
echo '<div class="comment">Commentaire: ' . $res2["comment"] . '</div><br />';
}
echo '<form method="post" action="news.php?action=addComment&id=' . $id . '" name="commentaire">';
echo '<input type="text" name="nom" id="nom" /><br />';
echo '<textarea rows="5" name="comment" id="comment"></textarea><br />';
echo '<input type="submit" name="submit" id="submit" value="Ajouter le commentaire" />';
echo '</form>';
echo '<br /><a href="news.php?action=\'\'">Revenir aux dernières news</a>';
}
function addComment($id){
global $connect;
$nom = $_POST['nom'];
$comment = $_POST['comment'];
mysql_query("INSERT INTO news_comments VALUES('','$id','$nom','$comment')", $connect);
echo '<a href="news.php?action=show&id=' . $id . '">Vérif</a>';
}
if (!isset($HTTP_GET_VARS['action'])) {
$HTTP_GET_VARS['action'] = '';
}
switch ($HTTP_GET_VARS['action']){
case 'show' : displayOneItem($HTTP_GET_VARS['id']);
break ;
case 'addComment' : addComment($HTTP_GET_VARS['id']);
break ;
case 'all' : displayAllNews();
break ;
default : displayNews();
}
?>
</body>
</html>
A voir également:
- Problème affichage en php
- Affichage double ecran - Guide
- Easy php - Télécharger - Divers Web & Internet
- Problème affichage fenêtre windows 10 - Guide
- Windows 11 affichage classique - Guide
- Thunderbird problème affichage message - Forum Thunderbird