|
|
Il y a actuellement 304 tutoriaux sur Aidoforum. Toute reproduction, partielle ou complète, est interdite.
Retour aux tutoriaux.
|
| PHP / MySQL -> Récupérer des variables par formulaire |
Je vais vous expliquer comment récupérer les données d'un formulaire que l'utilisateur a précédemment rempli. Il y a deux possibilités:
- Soit passer les valeurs directement dans la barre d'adresse (GET):
Avantages : Bof... Il n'y a pas vraiment d'avantages !
Inconvénient : Limite de 1024 caractères ; Lisible pour tout le monde ; Très peu sécurisé
- Soit passer les valeurs sans que l'utilisateur ne les voient (POST):
Avantages : presque aucune limite de taille (2^64 je crois) ; Moyennement bien sécurisé
Donc en gros, il vaut mieux toujours utiliser la méthode POST, mais je vais quand même vous expliquer les deux !
Alors commencons par la méthode GET :
Créez votre formulaire en HTML normal sur la première page:
<html>
<body>
<form name="NomDuFormulaire" method="get" action="page2.php"> (1)
<input type="text" name="Nom" size="20" />
<input type="text" name="Prenom" size="20" />
<input type="submit" name="envoi" value="Envoyer" />
</form>
</body>
</html>
|
(1) : Lors de la déclaration du formulaire, vous voyez la déclaration de la méthode, ici get, et action=page2.php, qui vous envoie à page2.php lorsque vous cliquez sur le bouton.
Pour cette page, le formulaire contient deux champs texte, Nom et Prenom.
Lorsque vous cliquerez sur le bouton, vous verrez dans la barre d'adresse :
http://www.monsite.com?nom=Chirac&prenom=Jacques&envoi=envoyer
|
Nous allons créer maintenant page2.php, qui doit récupérer les valeurs de nom et de prénom.
Donc créez votre page comme suit:
<html>
<body>
<?
$_nom = $_GET['Nom']; (1)
$_prenom = $_GET['Prenom']; (2)
echo $_nom."<BR>"; (3)
echo $_prenom; (4)
?>
</body>
</html>
|
(1) : Nous insérons la valeur de la variable $_GET['Nom'] dans la variable $_nom
(2) : Nous insérons la valeur de la variable $_GET['Prenom'] dans la variable $_prenom
(3)(4) : On affiche les variables (n concaténant un <BR>, qui fera sauter une ligne entre le nom et le prénom.
Donc en gros, lorsque vous passer des valeurs en GET, pour les récupérer, il faut utiliser la variable :
Pour la méthode POST, c'est exactement la même chose, sauf que dans la déclaration du formulaire, remplacer GET par POST, et la variable de récupération est :
Mais dans la barre d'adresse, vous verrez seulement :
Voila voila je crois que vous savez tout au niveau du passage de variables par formulaires !
La lecon suivante, je vous apprendrai comment garder les valeurs en mémoire sur plusieurs pages, car il faut savoir que les variables $_GET et $_POST ne restent pas en mémoire. Les variables ne seront utilisables que sur page2.php !
:D
|
| Par as_2_pik, le 25 Avril 2006 à 17h09 |
| Commentaire de ju2cho7 le 01 Mai 2006 à 19h23 | pas mal le tuto,mais il manque les guillements dans le HTML et les apostrophes dans tes variables $_GET[''] et $_POST[''] :/
|
| Commentaire de Pouzy le 03 Mai 2006 à 13h25 | J'ai modifié tout ca 
|
| Commentaire de Orgnobi le 03 Mai 2006 à 19h28 | Il faut préciser aussi que pour que cela marche, il faut que la valeur du name (name="Nom" par exemple) doit etre la meme dans un POST ou un GET ($_GET['Nom'] et $_POST['Nom'])
Et il manque aussi le <head></head> dans le code html ^^
|
| Commentaire de Brunocatteau le 25 Juin 2006 à 16h18 | Il ne faut pas oublier d'expliquer que la methode POST est avant tout à utiliser pour les requetes qui sont succeptibles de modifier l'état du serveur.
Bruno CATTEAU
|
| Commentaire de oceanbigone le 30 Aout 2006 à 14h11 | Juste une précision sur GET, j'ai un avantage pour son utilisation (c'est d'ailleur le seul cas ou je l'utilise.). Il permet à l'utilisateur d'utiliser le bouton précédent de son navigateur sans renvoyer les données. Utile essentiellement pour la navigation (tri, page, etc...)
|
| /!\ Vous devez être inscrit pour pouvoir commenter ce tutoriel, ou demander du support. /!\ |
|
|
|
|
|