[PHP] Livre d'or, problème....
Résolu/Fermé
ClemsZer0
Messages postés
27
Date d'inscription
vendredi 14 novembre 2008
Statut
Membre
Dernière intervention
6 avril 2009
-
4 avril 2009 à 18:13
Utilisateur anonyme - 6 avril 2009 à 20:39
Utilisateur anonyme - 6 avril 2009 à 20:39
A voir également:
- [PHP] Livre d'or, problème....
- Or - Guide
- Livre coran en français pdf - Télécharger - Histoire & Religion
- Easy php - Télécharger - Divers Web & Internet
- Livre de cave gratuit - Télécharger - Cuisine & Gastronomie
- Télécharger livre de lecture ce2 gratuit pdf - Télécharger - Éducatifs
14 réponses
Bigfish72
Messages postés
79
Date d'inscription
samedi 28 mars 2009
Statut
Membre
Dernière intervention
11 avril 2009
4
4 avril 2009 à 18:30
4 avril 2009 à 18:30
Salut,
j'ai ta réponse :
remplace tout ton formulaire par :
<form action="" method="post">
<p>
Pseudo :<input type="text" name="pseudo" id="message"/><br />
Message :<textarea rows="5" name="message" cols="18" value="Entrez votre message ici...."></textarea>
<input type="submit" value="Stupéfix !" />
</p>
</form>
Les noms des champs n'étaient pas définis correctement.
j'ai ta réponse :
remplace tout ton formulaire par :
<form action="" method="post">
<p>
Pseudo :<input type="text" name="pseudo" id="message"/><br />
Message :<textarea rows="5" name="message" cols="18" value="Entrez votre message ici...."></textarea>
<input type="submit" value="Stupéfix !" />
</p>
</form>
Les noms des champs n'étaient pas définis correctement.
ClemsZer0
Messages postés
27
Date d'inscription
vendredi 14 novembre 2008
Statut
Membre
Dernière intervention
6 avril 2009
1
4 avril 2009 à 20:04
4 avril 2009 à 20:04
Merci BigFish, mais maintenant cela n'affiche qu'un seul message....:,(
Bigfish72
Messages postés
79
Date d'inscription
samedi 28 mars 2009
Statut
Membre
Dernière intervention
11 avril 2009
4
4 avril 2009 à 20:11
4 avril 2009 à 20:11
Étonnant, chez moi ça affiche tous les messages bidon que j'ai créés. Ta table comprend bien trois champs ?
ClemsZer0
Messages postés
27
Date d'inscription
vendredi 14 novembre 2008
Statut
Membre
Dernière intervention
6 avril 2009
1
4 avril 2009 à 20:24
4 avril 2009 à 20:24
Oui oui !
ID int(11) Non
pseudo varchar(255) latin1_swedish_ci Non
message text
ID int(11) Non
pseudo varchar(255) latin1_swedish_ci Non
message text
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bigfish72
Messages postés
79
Date d'inscription
samedi 28 mars 2009
Statut
Membre
Dernière intervention
11 avril 2009
4
4 avril 2009 à 20:31
4 avril 2009 à 20:31
tu as combien de messages ? Ont-ils bien des ID différents ?
ClemsZer0
Messages postés
27
Date d'inscription
vendredi 14 novembre 2008
Statut
Membre
Dernière intervention
6 avril 2009
1
4 avril 2009 à 20:33
4 avril 2009 à 20:33
Mon dieu !!! Tu as raison je n'avais pas mis l'id en auto_increment !! Merci !
ClemsZer0
Messages postés
27
Date d'inscription
vendredi 14 novembre 2008
Statut
Membre
Dernière intervention
6 avril 2009
1
5 avril 2009 à 15:21
5 avril 2009 à 15:21
Euh maintenant j'ai un autre problème quand je mets un message trop long et ben il ne s'affiche pas...
Utilisateur anonyme
5 avril 2009 à 15:31
5 avril 2009 à 15:31
Change le type de ton champ message en LONGTEXT à la place de TEXT.
ClemsZer0
Messages postés
27
Date d'inscription
vendredi 14 novembre 2008
Statut
Membre
Dernière intervention
6 avril 2009
1
5 avril 2009 à 18:53
5 avril 2009 à 18:53
Non, ça marche pas....:,(
Utilisateur anonyme
5 avril 2009 à 19:46
5 avril 2009 à 19:46
Quesque tu met comme message ?
ClemsZer0
Messages postés
27
Date d'inscription
vendredi 14 novembre 2008
Statut
Membre
Dernière intervention
6 avril 2009
1
5 avril 2009 à 19:56
5 avril 2009 à 19:56
Un message de bienvenue à ceux qui viennent sur le livre d'or, basique quoi !
Utilisateur anonyme
5 avril 2009 à 20:13
5 avril 2009 à 20:13
A ouais. Il fait combien de lignes ton message ? Quels sont les messages qui s'affiche correctement ? Combien lignes font-ils ? Enfin, est-ce que tu as un message d'erreur PHP ou MYSQL ?
ClemsZer0
Messages postés
27
Date d'inscription
vendredi 14 novembre 2008
Statut
Membre
Dernière intervention
6 avril 2009
1
5 avril 2009 à 20:25
5 avril 2009 à 20:25
Alors plus simple je vais te mettre le message exactement comme je veux l'envoyez :
"Bonjour à tous !!
Bienvenue sur le Livre d'or de
TDP, autrement dit, le Grimoire
d'or !
Il est à votre disposition pour partager vos avis sur ce site, et
même, y proposez des idées pour l'améliorer !!
Petit rappel :
Le Livre d'or n'est pas un chat"
Voilà, après non je n'ai pas d'erreur, et quand je met des message test sa marche bien, alors....
"Bonjour à tous !!
Bienvenue sur le Livre d'or de
TDP, autrement dit, le Grimoire
d'or !
Il est à votre disposition pour partager vos avis sur ce site, et
même, y proposez des idées pour l'améliorer !!
Petit rappel :
Le Livre d'or n'est pas un chat"
Voilà, après non je n'ai pas d'erreur, et quand je met des message test sa marche bien, alors....
Utilisateur anonyme
6 avril 2009 à 12:49
6 avril 2009 à 12:49
Ce que j'ai fait c'est que j'ai refait la partie du code PHP d'envoi a ma sauce en reproduisant le schema de ta table SQL ce qu m'a eviter de perdre du temps a chercher l'erreur. Bon chez moi sa marche ainsi que ton message de bienvenue et le système de pagination des enregistrements. Reste à voir si ça marche chez toi.
livreor.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">
<head>
<title>Livre d'or</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<p>
Pseudo :<input type="text" name="pseudo" id="pseudo"/>
</p>
<p><br />
Message :</p>
<p>
<textarea rows="5" cols="18" name="message">Entrez votre message ici....</textarea>
</p>
<p>
<input type="submit" value="Stupéfix !" />
</p>
</form>
<p class="pages">
<?php
mysql_connect("SERVEUR", "LOGIN", "MDP");
mysql_select_db("BASEDONNEES");
if (isset($_POST['pseudo']) && isset($_POST['message']))
{
$pseudo = htmlspecialchars(mysql_real_escape_string($_POST['pseudo']));
$message = htmlspecialchars(mysql_real_escape_string($_POST['message']));
$message_sl = nl2br($message);
$query = mysql_query("INSERT INTO livreor VALUES('','" . $pseudo . "','" . $message_sl . "')")or die(mysql_error() . ',' . mysql_errno());
}
// On met dans une variable le nombre de messages qu'on veut par page
$nombreDeMessagesParPage = 20; // Essayez de changer ce nombre pour voir :o)
// On récupère le nombre total de messages
$retour = mysql_query('SELECT COUNT(*) AS nb_messages FROM livreor');
$donnees = mysql_fetch_array($retour);
$totalDesMessages = $donnees['nb_messages'];
// On calcule le nombre de pages à créer
$nombreDePages = ceil($totalDesMessages / $nombreDeMessagesParPage);
// Puis on fait une boucle pour écrire les liens vers chacune des pages
echo 'Page : ';
for ($i = 1 ; $i <= $nombreDePages ; $i++)
{
echo '<a href="livreor.php?page=' . $i . '">' . $i . '</a> ';
}
?>
</p>
<?php
if (isset($_GET['page']))
{
$page = $_GET['page']; // On récupère le numéro de la page indiqué dans l'adresse (livreor.php?page=4)
}
else // La variable n'existe pas, c'est la première fois qu'on charge la page
{
$page = 1; // On se met sur la page 1 (par défaut)
}
// On calcule le numéro du premier message qu'on prend pour le LIMIT de MySQL
$premierMessageAafficher = ($page - 1) * $nombreDeMessagesParPage;
$reponse = mysql_query('SELECT * FROM livreor ORDER BY ID DESC LIMIT ' . $premierMessageAafficher . ', ' . $nombreDeMessagesParPage);
while($donnees = mysql_fetch_array($reponse))
{
echo '<p><strong> ' . $donnees['pseudo'] . '</strong> à écrit :</p><p> ' . $donnees['message'] . ' </p>';
}
mysql_close();
?>
</body>
</html>
Tiens moi au courent.
livreor.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">
<head>
<title>Livre d'or</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<p>
Pseudo :<input type="text" name="pseudo" id="pseudo"/>
</p>
<p><br />
Message :</p>
<p>
<textarea rows="5" cols="18" name="message">Entrez votre message ici....</textarea>
</p>
<p>
<input type="submit" value="Stupéfix !" />
</p>
</form>
<p class="pages">
<?php
mysql_connect("SERVEUR", "LOGIN", "MDP");
mysql_select_db("BASEDONNEES");
if (isset($_POST['pseudo']) && isset($_POST['message']))
{
$pseudo = htmlspecialchars(mysql_real_escape_string($_POST['pseudo']));
$message = htmlspecialchars(mysql_real_escape_string($_POST['message']));
$message_sl = nl2br($message);
$query = mysql_query("INSERT INTO livreor VALUES('','" . $pseudo . "','" . $message_sl . "')")or die(mysql_error() . ',' . mysql_errno());
}
// On met dans une variable le nombre de messages qu'on veut par page
$nombreDeMessagesParPage = 20; // Essayez de changer ce nombre pour voir :o)
// On récupère le nombre total de messages
$retour = mysql_query('SELECT COUNT(*) AS nb_messages FROM livreor');
$donnees = mysql_fetch_array($retour);
$totalDesMessages = $donnees['nb_messages'];
// On calcule le nombre de pages à créer
$nombreDePages = ceil($totalDesMessages / $nombreDeMessagesParPage);
// Puis on fait une boucle pour écrire les liens vers chacune des pages
echo 'Page : ';
for ($i = 1 ; $i <= $nombreDePages ; $i++)
{
echo '<a href="livreor.php?page=' . $i . '">' . $i . '</a> ';
}
?>
</p>
<?php
if (isset($_GET['page']))
{
$page = $_GET['page']; // On récupère le numéro de la page indiqué dans l'adresse (livreor.php?page=4)
}
else // La variable n'existe pas, c'est la première fois qu'on charge la page
{
$page = 1; // On se met sur la page 1 (par défaut)
}
// On calcule le numéro du premier message qu'on prend pour le LIMIT de MySQL
$premierMessageAafficher = ($page - 1) * $nombreDeMessagesParPage;
$reponse = mysql_query('SELECT * FROM livreor ORDER BY ID DESC LIMIT ' . $premierMessageAafficher . ', ' . $nombreDeMessagesParPage);
while($donnees = mysql_fetch_array($reponse))
{
echo '<p><strong> ' . $donnees['pseudo'] . '</strong> à écrit :</p><p> ' . $donnees['message'] . ' </p>';
}
mysql_close();
?>
</body>
</html>
Tiens moi au courent.
ClemsZer0
Messages postés
27
Date d'inscription
vendredi 14 novembre 2008
Statut
Membre
Dernière intervention
6 avril 2009
1
6 avril 2009 à 20:33
6 avril 2009 à 20:33
Merci beaucoup, ça marche impec' !! Apparemment, cela devait être à cause que le mysql_query n'était pas dans une variable, enfin, bref, encore merci !!