Problème dans mon code php pour livre d'or
immortal-ombre
Messages postés
137
Date d'inscription
Statut
Membre
Dernière intervention
-
immortal-ombre Messages postés 137 Date d'inscription Statut Membre Dernière intervention -
immortal-ombre Messages postés 137 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai envie d'ajouter un livre d'or, grace eu tuto du zero j'ai réussi à créer un livre d'or, sa marche très bien mais j'aimerais ajouter une liste déroulante pour ke les internautes puissent noter mon site.
Mais depuis que j'ai ajouté cette liste déroulante plus rien ne va ... et je n'arrive pas a trouver mon erreur
Voici mon code php en sachant que sur php my admin j'ai crée une base de donnée apelé test et une table apelé livreor :
<!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" />
<style type="text/css">
form, .pages
{
text-align:center;
}
</style>
</head>
<body>
<form method="post" action="livreor.php">
<p>Mon site vous plaît ? Laissez-moi un message !</p>
<p>
Pseudo : <input name="pseudo" /><br />
Message :<br />
<textarea name="message" rows="8" cols="35"></textarea><br />
quele note doneriez vous a mon site? <select name="note">
<option value="1"> 1</option>
<option value="2"> 2</option>
<option value="3"> 3</option>
<option value="4"> 4</option>
<option value="5"> 5</option>
<option value="6"> 6</option>
<option value="7"> 7</option>
<option value="8"> 8</option>
<option value="9"> 9</option>
<option value="10"> 10</option>
</select>
<input type="submit" value="Envoyer" />
</p>
</form>
<p class="pages">
<?php
mysql_connect("localhost", "root", "");
mysql_select_db("test");
// --------------- Etape 1 -----------------
// Si un message est envoyé, on l'enregistre
// -----------------------------------------
if (isset($_POST['pseudo']) AND isset($_POST['message']) AND isset($_POST['note']))
{
$pseudo = mysql_real_escape_string(htmlspecialchars($_POST['pseudo'])); // On utilise mysql_real_escape_string et htmlspecialchars par mesure de sécurité
$message = mysql_real_escape_string(htmlspecialchars($_POST['message'])); // De même pour le message
$message = nl2br($message); // Pour le message, comme on utilise un textarea, il faut remplacer les Entrées par des <br />
// On peut enfin enregistrer :o)
mysql_query("INSERT INTO livreor VALUES('', '" . $pseudo . "', '" . $message . "', '" . $_POST['note'] . "')");
}
// --------------- Etape 2 -----------------
// On écrit les liens vers chacune des pages
// -----------------------------------------
// 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
// --------------- Etape 3 ---------------
// Maintenant, on va afficher les messages
// ---------------------------------------
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> a écrit :<br />' . $donnees['message'] . .$donnees[$_POST['note']]. '</p>';
}
mysql_close(); // On n'oublie pas de fermer la connexion à MySQL ;o)
?>
</body>
</html>
Merci d'avance pour vos réponses qui je l'espère seront rapides
J'ai envie d'ajouter un livre d'or, grace eu tuto du zero j'ai réussi à créer un livre d'or, sa marche très bien mais j'aimerais ajouter une liste déroulante pour ke les internautes puissent noter mon site.
Mais depuis que j'ai ajouté cette liste déroulante plus rien ne va ... et je n'arrive pas a trouver mon erreur
Voici mon code php en sachant que sur php my admin j'ai crée une base de donnée apelé test et une table apelé livreor :
<!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" />
<style type="text/css">
form, .pages
{
text-align:center;
}
</style>
</head>
<body>
<form method="post" action="livreor.php">
<p>Mon site vous plaît ? Laissez-moi un message !</p>
<p>
Pseudo : <input name="pseudo" /><br />
Message :<br />
<textarea name="message" rows="8" cols="35"></textarea><br />
quele note doneriez vous a mon site? <select name="note">
<option value="1"> 1</option>
<option value="2"> 2</option>
<option value="3"> 3</option>
<option value="4"> 4</option>
<option value="5"> 5</option>
<option value="6"> 6</option>
<option value="7"> 7</option>
<option value="8"> 8</option>
<option value="9"> 9</option>
<option value="10"> 10</option>
</select>
<input type="submit" value="Envoyer" />
</p>
</form>
<p class="pages">
<?php
mysql_connect("localhost", "root", "");
mysql_select_db("test");
// --------------- Etape 1 -----------------
// Si un message est envoyé, on l'enregistre
// -----------------------------------------
if (isset($_POST['pseudo']) AND isset($_POST['message']) AND isset($_POST['note']))
{
$pseudo = mysql_real_escape_string(htmlspecialchars($_POST['pseudo'])); // On utilise mysql_real_escape_string et htmlspecialchars par mesure de sécurité
$message = mysql_real_escape_string(htmlspecialchars($_POST['message'])); // De même pour le message
$message = nl2br($message); // Pour le message, comme on utilise un textarea, il faut remplacer les Entrées par des <br />
// On peut enfin enregistrer :o)
mysql_query("INSERT INTO livreor VALUES('', '" . $pseudo . "', '" . $message . "', '" . $_POST['note'] . "')");
}
// --------------- Etape 2 -----------------
// On écrit les liens vers chacune des pages
// -----------------------------------------
// 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
// --------------- Etape 3 ---------------
// Maintenant, on va afficher les messages
// ---------------------------------------
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> a écrit :<br />' . $donnees['message'] . .$donnees[$_POST['note']]. '</p>';
}
mysql_close(); // On n'oublie pas de fermer la connexion à MySQL ;o)
?>
</body>
</html>
Merci d'avance pour vos réponses qui je l'espère seront rapides
A voir également:
- Problème dans mon code php pour livre d'or
- Code ascii - Guide
- Code puk bloqué - Guide
- Comment déverrouiller un téléphone quand on a oublié le code - Guide
- Code activation windows 10 - Guide
- Livre code de la route pdf gratuit - Télécharger - Transports & Cartes
6 réponses
bonsoir,
tu peux essayer avec le code suivant:
si il y a une erreur tu peux nous la communiquer, merci bonne soirée
tu peux essayer avec le code suivant:
// On peut enfin enregistrer :o) mysql_query("INSERT INTO livreor VALUES('', '" . $pseudo . "', '" . $message . "', '" . $_POST['note'] . "')"); echo mysql_error().'<br />';
si il y a une erreur tu peux nous la communiquer, merci bonne soirée
Bon ya toujours une éreur mais je vous ai un peu compliké la tache -_- j'ai oublié de vous dire l'ereur c vrai que c un peu compliqué sans voici l'ereur que sa m'affiche sur la page:
Parse error: parse error in C:\wamp2\wamp\www\test\livreor.php on line 106
juste pour vous aidez afin que vous ne contiez pas toutes les lignes la lignes 106 es tout a la fin, c'est celle-ci:
echo '<p><strong>' . $donnees['pseudo'] . '</strong> a écrit :<br />' . $donnees['message'] . .$donnees[$_POST['note']]. '</p>';
Merci d'avances de vos réponses qui je l'espère seront rapides
Parse error: parse error in C:\wamp2\wamp\www\test\livreor.php on line 106
juste pour vous aidez afin que vous ne contiez pas toutes les lignes la lignes 106 es tout a la fin, c'est celle-ci:
echo '<p><strong>' . $donnees['pseudo'] . '</strong> a écrit :<br />' . $donnees['message'] . .$donnees[$_POST['note']]. '</p>';
Merci d'avances de vos réponses qui je l'espère seront rapides
essayer comme ceci
echo '<p><strong>' . $donnees['pseudo'] . '</strong> a écrit :<br />' . $donnees['message'] . ' '.$donnees['note']. '</p>';
Bon sa marche toujours pas mais sa c'est tout de meme bien amélioré :
Les 2 emplacement pour écrire sont aparu et aussi la liste déroulante mais il y a toujours un message d'ereur en dessou et quand j'appui sur envoyer sa n'envoi rien
Voici le message d'ereur qui s'affiche:Notice: Undefined index: note in C:\wamp2\wamp\www\test\livreor.php on line 106
(la ligne 106 est celle que tu vien de me donner)
Les 2 emplacement pour écrire sont aparu et aussi la liste déroulante mais il y a toujours un message d'ereur en dessou et quand j'appui sur envoyer sa n'envoi rien
Voici le message d'ereur qui s'affiche:Notice: Undefined index: note in C:\wamp2\wamp\www\test\livreor.php on line 106
(la ligne 106 est celle que tu vien de me donner)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
essai de remplacer par la ligne suivant: ligne 102
$reponse = mysql_query('SELECT * FROM livreor ORDER BY id DESC LIMIT ' . $premierMessageAafficher . ', ' . $nombreDeMessagesParPage.'');