J'essaie d'obtenir un livre d'or pour travailler en utilisant PHP. J'ai réussi à le faire fonctionner, la chose est que je ne veux pas que le livre d'or soit dans mon index.php. Je veux que ce soit sur une page dynamique, index.php? = Livre d'or par exemple. Le problème est que lorsque je mets le code sur une autre page plutôt que sur index.php, la chose qui se passe quand je remplis les champs et j'appuie sur le bouton soumettre, je suis redirigé vers index.php et rien n'est envoyé à mon base de données. Tout fonctionne correctement tant que le code est dans index.php.PHP: Utiliser POST sur une page dynamique me redirige vers index.php et ne publie pas les valeurs
Ma première question est: Quelle en est la cause? Deuxième question: Comment faire pour que le code fonctionne correctement même si je l'ai dans index.php? = Guestbook?
Merci d'avance!
J'utilise xampp btw.
Voir ci-dessous le code:
<html>
<head>
<link rel="stylesheet" href="stylesheet.css" type="text/css">
</head>
<body>
<h1>Guestbook</h1><hr>
<?php
mysql_select_db ("guestbookdatabase") or die ("Couldn't find database!");
$queryget = mysql_query ("SELECT * FROM guestbook ORDER BY id ASC") or die("Error witch query.");
$querygetrownum = mysql_num_rows ($queryget);
if ($querygetrownum == 0)
echo "No posts have been made yet. Be the first!";
while ($row = mysql_fetch_assoc ($queryget))
{
$id = $row ['id'];
$name = $row ['name'];
$email = $row ['email'];
$message = $row ['message'];
$date = $row ['date'];
$time = $row ['time'];
if ($id%2)
$guestbookcomment = "guestbookcomment";
else
$guestbookcomment = "guestbookcommentdark";
echo "
<div class='$guestbookcomment'>
<div class='postheader'>
<b>Posted by $name ($email) on $date at $time</b>
</div>
<div class='message'>
".nl2br(strip_tags($message))."
</div>
</div>
";}
echo "<hr>";
if($_POST['submit'])
{
$name = $_POST['name'];
$email = $_POST['email'];
$message = $_POST['message'];
$date = date("Y-m-d");
$time = date("H:i:s");
if ($name&&$email&&$message)
{
$querypost = mysql_query ("INSERT INTO guestbook VALUES ('','$name','$email','$message','$date','$time')");
echo "Please wait... <meta http-equiv='refresh' content='2'>";
}
else
echo "Please fill out all fields.";
}
echo "
<form action='index.php' method='POST'>
Your name: <input type='text' name='name' class='name' maxlength='25' ><br> <br>
Your email: <input type='text' name='email' class='email' maxlength='35'><br><br>
<div class='your_message'>
Your message:<input type='textarea' name='message' class='messagetextarea' maxlength='250'><br><br>
</div>
<input type='submit' name='submit' value='Post'>
</form>
";
?>
</body>
</html>
Utilisez-vous mod_rewrite? Si oui, pouvez-vous poster votre .htaccess? – netcoder
quel fichier est-ce que vous montrez? index.php? – jordanstephens