Je suis en train d'apprendre le PHP et je suis en train de m'entrainer en faisant un blog où l'on peu posté des commentaires.
J'ai donc une page d'accueil index.php qui affiche les dernières nouvelles du blog, une page commentaires.php qui affiche les commentaires d'un billet du blog et qui contient un formulaire pour en ajouter un, et un fichier commentaires_post.php qui insère le commentaire et redirige vers le billet et ses commentaires que consultait le visiteur. C'est justement la redirection qui me pose problème.
Voilà le formulaire d'envoi de commentaires:
<form method="post" action="commentaires_post.php">
<fieldset>
<legend>Ajouter votre commentaire</legend>
<p><label for="pseudo">Votre pseudo :</label><br/>
<input type ="text" name="pseudo" id="pseudo" tabindex="10" size="15" maxlength="12"/></p>
<p><label for="commentaire">Votre commentaire :</label><br/>
<textarea name="commentaire" id="commentaire" accesskey="C" tabindex="20" rows="10" cols="35"></textarea></p>
</fieldset>
<p><input type="submit" value="Envoyer" /><input type="hidden" name="billet" value="<?php echo $_GET['billet']; ?>" /></p>
</form>
Et le fichier commentaires_post.php :<?php
//connexion bdd
try
{
$pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
$bdd= new PDO('mysql:host=localhost;dbname=...', 'root', '...', $pdo_options);
//insertion du message
$req= $bdd->prepare('INSERT INTO commentaires (auteur, commentaire, date_commentaire, id_billet) VALUES(?, ?, NOW(), ?)');
$req->execute(array($_POST['pseudo'], $_POST['commentaire'], $_POST['billet']));
//redirection
header('Location: commentaires.php?billet=<?php echo $_POST[\'billet\'] ?>');
}
catch(Exception $e)
{
die('Erreur : ' .$e->getMessage());
}
?>
Leon@rd