Problème d'affichage de news. Aidez moi SVP.

WaNoU ThE EpSyLoN Messages postés 43 Date d'inscription mardi 30 mars 2004 Statut Membre Dernière intervention 26 avril 2007 - 25 mai 2005 à 18:19
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 - 9 févr. 2006 à 16:39
Bon alors à celui qui comprend mon problème je dis chapeau !
J'explique. Je cherche à faire un gestionnaire de news pour cela il y a une page de saisie composée d'un formulaire et la page post chargée d'envoyer le contenu du forulaire (c'est a dire la news, l'auteur, le titre et la date sous forme de timestamp).
Voici le code de cette page :
<?
//postage des news
$user = "mystère et boules de gomme";
$host = "sql.free.fr";
$pass = "tu devineras jamais";
$titre = $_POST['titre'];
$auteur = $_POST['auteur'];
$texte = $_POST['texte'];
$timestamp = time();
$formulaire = "
<!-- Ici c'est le formulaire de transmission des articles/news-->
<form method="post" action="post.php">
<!--Données pour l'envoi de l'article/news-->
<fieldset>
<legend>News Générale</legend>
<label>Titre :
</label>

<label>Auteur :
</label>

<label>Texte :
<textarea rows="10" cols="73" scrolling="yes" name="texte"></textarea></label>

</fieldset>
<center></center>
</form>
";if(($titre "")||($auteur "")||($texte == ""))
{
echo "Vous avez oublié de remplir un des champs du formulaire. Veuillez recommencer l'opération. $formulaire";
}
else
{
@mysql_connect($host,$user,$pass) or die("Erreur de connexion niveau 1");
@mysql_select_db($user) or die("Erreur de connexion niveau 2");
$demande = "INSERT INTO mediatest_news(timestamp, titre, auteur, texte) VALUES('$timestamp', '$titre', '$auteur', '$texte')";
mysql_query($demande);
echo "Votre news a bien été postée. Cliquez ici pour retourner sur la console d'administration

";
mysql_close();
}
?>
Là dessus pas de problème tout marche. Le contenu, le titre, l'auteur et le timestamp sont rentrés dans la base de donnée. Après je dois afficher les 5 dernières news maintenant stockées dans ma base de donnée sur ma page d'accueil.
Je tape donc ce code :
<?
$host = "sql.free.fr";
$user = "e.quillien";
$pass = "xzwqqq7b";
@mysql_connect($host,$user,$pass) or die("Erreur de connexion niveau 1");
@mysql_select_db($user) or die("Erreur de connexion niveau 2");
$demande = "SELECT timestamp,titre,auteur,texte FROM mediatest_news ORDER BY timestamp DESC LIMIT 0,5";
$resultat = mysql_query($demande);
mysql_close();
while($recuperation = mysql_fetch_array($resultat))
{
echo "$recuperation['titre']
$recuperation['auteur'] le $recuperation['timestamp']
$recuperation['texte']

";
}
?>
Mais voilà lorsque je retourne sur ma page d'accueil, il n'y a rien d'affiché. Pourtant la table mediatest_news contient bien plusieurs news. Je ne comprends pas. Aidez moi s'il-vous-plaît. Merci

WaNoU ThE EpSyLoN
Les NewBies d'aujourd'hui sont les Experts de demain..

3 réponses

cs_sjon Messages postés 861 Date d'inscription mardi 26 mars 2002 Statut Membre Dernière intervention 29 novembre 2006 1
25 mai 2005 à 19:41
Sael og blesud

Juste en passant, je n'ai pas regardé votre code mais vous donnez vos identifiants de connexion à free donc changer les vite ...

Bon courage ...

NB : Si la réponse vous convient merci de l'accepter pour fermer ce thread ...

Sigurjón Bírgir Sigurðssón aka Sjón

HARDWARE : Partie de l'ordinateur qui reçoit les coups quand se plante le softawre
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
25 mai 2005 à 22:09
Hello,



et tu devrais peut-etre faire ton mysql_close() APRES avoir recupere tes infos avec mysql_fetch_array().
0
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
9 févr. 2006 à 16:39
Salut,

Heu non justement avant ;-) car on a plus besoin de la connexion à mysql après avoir fait la requête.

echo
"$recuperation['titre']
$recuperation['auteur'] le
$recuperation['timestamp']
$recuperation['texte']

";

Ceci est faux

echo $recuperation['titre'],'
',$recuperation['auteur'],' le ',$recuperation['timestamp'],'
',$recuperation['texte'],'

';

ça c'est bon. Au passage remplace <? par <?php et aussi ton mot de passe chez free car là on devinera pas jamais, on l'a déjà deviné ^^

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li><li>Codes-php.net</li>
0
Rejoignez-nous