|
Tout d'abord un formulaire en html, pour cela je vous explique pas le fonctionnement pour faire une formulaire. Commencez par créer une page appellée livredor.php et une table apellée livreor contenant le champs id en auto_incrément ainsi la clef index un champs nom en varchar 255 ainsi que message.
<form action="livredor.php?action=ajout" method="post">
Votre nom:
<input type="text" name="nom" maxlength="20">
Message:<textarea name="message" rows="5" cols="50"></textarea>
<INPUT TYPE="submit" VALUE="Poster votre message">
</form>
// EN DESSOUS NOUS LISTONS LES MESSAGES //
mysql_connect('localhost','root','admin');
mysql_select_db('uw_livre');
$sql = "SELECT * FROM livreor";
$requete = mysql_query($sql);
while ($donnees=mysql_fetch_array($req))
{ ?>
<? echo $donnees['nom']; ?> a écrit : <? echo $donnees['message']; ?>
<?
}
?>
|
regarder l'action du livre d'or, nous allons transmettre la variable action en GET pour dire que après le formulaire envoyé nous voulons que l'ajout à la base de donnée soit faite.
Maintenant nous allons vérifier l'action et si les champs ne sont pas vide.
<?
$action = $_GET['action']; // On met en place un $_GET
$nom = htmlentities($_POST['nom'], ENT_QUOTES);
$message = htmlentities($_POST['message'], ENT_QUOTES);
// regarder ces variables, nous utilisons htmlentities pour dire qu'il ne faut pas utiliser d'HTML sinon les visiteurs pourrais lancer des requêtes pour récupèrer des données et donc hacker votre site. Mais pour le message les retours à la lignes seront traduit par des <br /> pour éviter sa nous utilisons donc :
$message = nl2br($message);
if (isset($action)) // si la variable action existe
{
if ($action == 'ajout') // si action égale "ajout"
{
if ((empty($nom))||(empty($message))) // Si nom et message sont vide ...
{
echo "Vous n'avez pas remplis tous les champs !";
}
else // Sinon
{
$txt = "INSERT INTO livreor VALUES('','$nom','$message')";
$requete = mysql_query($txt);
echo "Votre message a bien été ajouté !";
}
}
}
?>
<form action="livredor.php?action=ajout" method="post">
Votre nom:
<input type="text" name="nom" maxlength="20">
Message:<textarea name="message" rows="5" cols="50"></textarea>
<INPUT TYPE="submit" VALUE="Poster votre message">
</form>
// EN DESSOUS NOUS LISTONS LES MESSAGES //
<?
mysql_connect('localhost','root','admin');
mysql_select_db('uw_livre');
$sql = "SELECT * FROM livreor";
$requete = mysql_query($sql);
while ($donnees=mysql_fetch_array($req))
{ ?>
<? echo $donnees['nom']; ?> a écrit : <? echo $donnees['message']; ?><br /><br />
<?
}
?> |
Voila votre livre d'or est pret ! enfin peux être pas, il ce peux que j'ai glissé des erreurs dans ce code pour vous apprendre à vous servire d'une fonction: or die(mysql_error()); enfete cette fonction permet à php de dire ou est l'erreur mysql si il y en a une ... cette fonction ce place après la requête avant le ; exemple :
<?
$txt = "INSERT INTO livreor VALUES('','$nom','$message')";
$requete = mysql_query($txt) or die(mysql_error());
|
Voila maintenant vous savez presque tout pour faire un magnifique livre d'or. A bientôt pour un prochain TP (Système de news) |