Cours par Webcam

Cours par Webcam

Formateur Web pour adultes depuis plus 11 ans, je vous propose des COURS collectifs par WEBCAM en LIVE pour booster vos connaissances et être autonome dans la création de site.

En savoir plus

PHP - Bases

PHP - Algorithmie

PHP - Chaîne

PHP - Tableau

PHP - Formulaires

PHP - Fonctions Usuelles

Données entres pages

Environnement et Interaction

PHP objet (POO)

Facebook
Twitter
LinkedIn

Formulaire : récupérer des données

En HTML, pour exploiter votre formulaire vous devez renseigner deux attributs :

  • l’attribut action dont la valeur correspond à la page qui sera appelée lorsque vous cliquez sur le bouton d’envoi
  • l’attribut method qui désigne le mode d’envoi des données. Vous avez le choix entre la méthode POST et la méthode GET
<form action="traitementFormulaire.php" method="post">
<!-- les éléments html du formulaire -->
</form>

Méthode GET

La méthode GET n’est pas recommandée puisque les informations saisies ou sélectionées dans votre formulaire s’afficheront dans l’URL de la page qui traite le formulaire

Méthode POST

C’est la méthode conseillée puisque les données sont envoyées de façon confidentielle. Par ailleurs cette méthode s’impose pour l’envoi de fichiers ou de données importantes

Les données seront récupérées par la superglobale $_POST [ ]. Il s’agit d’un tableau associatif dont les clés correspondent aux valeurs des attributs name des élements HTML du formulaire.

Par exemple, pour récupérer la saisie de la zone de texte html :

<input type= »text » name= »pseudo » />

il faudra écrire

$_POST[‘pseudo‘]

Ce tableau a une portée globale. Vous pouvez donc l’utiliser n’importe où dans la page (dans une fonction ou une méthode de classe)

Vérifier l’envoi du formulaire

En PHP, la fonction isset() permet de vérifier si une variable est définie. Dans ce cas, si la variable $_POST[‘envoi’] est déclarée, cela signifie que le formulaire a été soumis. La clé envoi correspond au nom du bouton qui soumet le formulaire

Syntaxe HTML

<form action="recuper-donnees-formulaire.php#1.php" method="post">
 <input type="submit" name="envoi">
</form>

Syntaxe PHP

<?php
if(isset($_POST['envoi'])){ // si formulaire soumis
 
}
?>

Champ de texte

En HTML, le champ de texte permet à l’internaute de saisir des mots ou des textes de taille limitée comme un pseudo

<form action="recuper-donnees-formulaire.php.php" method="post">
 Pseudo : <input type="text" name="pseudo" placeholder="saisir...">
 <input type="submit" name="envoi">
</form>

 

Voici la syntaxe PHP pour récupérer la valeur saisie

<?php
if(isset($_POST['envoi'])){ // si formulaire soumis
echo $_POST['pseudo'];
}
?>

Tester le résultat

Pseudo :

Pseudo :

Note : si vous ne saisissez rien dans le champ de texte, PHP vous retournera une chaîne vide.

Zone de texte

En HTML, le champ de texte permet à l’internaute de saisir du contenu plus long sur plusieurs lignes

<form action="recuper-donnees-formulaire.php.php" method="post">
 message : <br>
 <textarea name="message"></textarea>
 <br>
 <input type="submit" name="envoi">
</form>

Voici la syntaxe PHP pour récupérer la valeur saisie

<?php
if(isset($_POST['envoi'])){ // si formulaire soumis
echo $_POST['message'];
}
?>

Tester le résultat

message :

Message :

Note : si vous sautez des lignes dans la zone de texte (en appuyant sur la touche ENTREE) vous remarquerez que PHP renvoie le contenu sur une seule ligne. Les sauts de lignes ont disparu. Cliquez sur le bouton envoi de l’exemple ci-dessous pour le constater.

Pour pouvoir afficher les sauts de lignes ignorés, il faut les transformer en balises html <br> avec la fonction nl2br().

<?php
if(isset($_POST['envoi'])){ // si formulaire soumis
echo nl2br($_POST['message']);
}
?>

Tester à nouveau le résultat

message :

Champ caché

En HTML, un champ caché contient une valeur qui n’est pas visible par l’utilisateur mais qui sera exploitée par le fichier de traitement de données en PHP.

<form action="recuper-donnees-formulaire.php.php" method="post">
 <input type="hidden" value="125648" name="cache">
 <input type="submit" name="envoi">
</form>

 

Voici la syntaxe PHP pour récupérer le champ caché

<?php
if(isset($_POST['envoi'])){ // si formulaire soumis
echo $_POST['cache'];
}
?>

Tester le résultat

Champ caché :

Champ mot de passe

En HTML, un champ mot de passe permet de saisir du contenu de manière cachée.

<form action="recuper-donnees-formulaire.php.php" method="post">
Mot de passe <input type="password" name="mdp">
<input type="submit" name="envoi">
</form>

Voici la syntaxe PHP pour récupérer la valeur saisie

<?php
if(isset($_POST['envoi'])){ // si formulaire soumis
echo $_POST['mdp'];
}
?>

Tester le résultat

Mot de passe :

Champ crypté :

Bouton radio

En HTML, un groupe de bouton radio permet de faire une sélection unique parmi un ensemble de choix.

<form action="recuper-donnees-formulaire.php.php" method="post">
Genre <input type="radio" name="genre"> h <input type="radio" name="genre"> f
<input type="submit" name="envoi">
</form>

Voici la syntaxe PHP pour récupérer ce choix

<?php
if(isset($_POST['envoi'])){ // si formulaire soumis
echo $_POST['genre'];
}
?>

Tester le résultat

Genre :   h  f

Genre :

Note : PHP ne retourne aucune valeur si rien n’est coché, comme si les boutons n’existaient pas. Sinon par défaut PHP retourne la valeur ON quand un bouton est coché. Vous pouvez remplacer le ON par la valeur de l’attribut value associée au bouton radio.

<form action="recuper-donnees-formulaire.php.php" method="post">
Genre <input type="radio" name="genre" value="homme"> h <input type="radio" name="genre" value="femme"> f
<input type="submit" name="envoi">
</form>

Voici la syntaxe PHP pour récupérer ce choix

<?php
if(isset($_POST['envoi'])){ // si formulaire soumis
echo $_POST['genre'];
}
?>

Tester le résultat

Genre  h  f

Genre :

Cases à cocher

En HTML, les cases à cocher permettent à l’internaute d’interagir en cochant une réponse ou plusieurs réponses.

– Récupérer une réponse

L’exemple le plus souvent rencontré est la confirmation de la lecture des conditions d’utilisation d’un site.

<form action="recuper-donnees-formulaire.php.php" method="post">
J'ai lu les conditions d'utilisation <input type="checkbox" name="choix"> <input type="submit" name="envoi">
</form>

Voici la syntaxe PHP pour récupérer ce choix

<?php
if(isset($_POST['envoi'])){ // si formulaire soumis
echo $_POST['choix'];
}
?>

Note : PHP ne retourne aucune valeur si rien n’est coché, comme si la case à cocher n’existait pas. Sinon par défaut PHP retourne la valeur ON si vous cochez. Comme pour le bouton radio, vous pouvez remplacer le ON par la valeur de l’attribut value associée de la case à cocher.
Tester le résultat

J’ai lu les conditions d’utilisation : 

Coche CGU :

– Récupérer plusieurs réponses

Vous pouvez demandez à l’internaute de choisir plusieurs réponses pour une même question, comme lui demander de cocher les loisirs qu’il pratique.

<form action="recuper-donnees-formulaire.php.php" method="post">
Loisirs : 
<input type="checkbox" name="choix[]" value="danse"> danse
<input type="checkbox" name="choix[]" value="cinema"> cinema 
<input type="checkbox" name="choix[]" value="ballade"> ballade
<input type="submit" name="envoi">
</form>

Pour pouvoir récupérer toutes les réponses, on utilise le même nom pour toutes les cases à cocher en rajoutant des accolades à ce nom : choix [] .Voici la syntaxe PHP pour récupérer les réponses

<?php
if(isset($_POST['envoi'])){ // si formulaire soumis
print_r($_POST['choix']); // ici on récupère un tableau qui contient toutes les valeurs
}
?>

Vous ne pouvez pas utiliser echo pour un tableau. La fonction print_r affiche le contenu de votre tableau.

Note : PHP ne retourne aucune valeur si rien n’est coché, comme si les cases à cocher n’existaient pas. Sinon PHP retourne un tableau des valeurs d’attribut value associées à chaque case à cocher.

Tester le résultat

Loisirs :  danse cinéma ballade  

Loisirs :

Liste déroulante

La liste déroulante permet de sélectionner une option parmi une liste d’éléments, comme sélectionner une ville, ou une taille..

<form action="recuper-donnees-formulaire.php.php" method="post">
<select name="legume">
<option value="haricot">Haricot</option>
<option value="poireau">Poireau</option>
<option value="carotte">Carotte</option>
</select>
<input type="submit" name="envoi">
</form>

Voici la syntaxe PHP pour récupérer la valeur saisie

<?php
if(isset($_POST['envoi'])){ // si formulaire soumis
echo $_POST['legume'];
}
?>

Tester le résultat

Légume :

Note : si vous ne sélectionnez rien, PHP vous retournera la valeur de la première option.

A lire aussi

tutowebdesign

Afficher du contenu au scroll

Afficher du contenu au scroll Voici un effet impressionnant et pourtant très facile à mettre en place sur vos pages. Le principe consiste à faire

Lire »