Cours ⇒ Cour PHP facebook twitter youtube

News

Supprimer les logiciels espions et malveillants de son ordinateur


Supprimer les logiciels espions et malveillants de son ordinateur

Ill arrive que des logiciels espions (spywares), malveillants (malwares) ou publicitaires (adwares) arrivent à pénétrer votre système. Les conséquences ? Des pop-up publicitaires qui s’affichent aléatoirement, des programmes qui lisent le contenu de votre ...

2015-08-13

Les nouveautés de Windows 10


Les nouveautés de Windows 10

Windows 10 qui sera proposé sur un ensemble d’appareils (smartphones, tablettes, ordinateurs). Le lancement est prévu pour cette année. ...

2015-02-16

Les différent virus


Les différent virus

Les différent virus informatique ...

2015-02-04


Foire aux questions

Les formulaires en php | Les formulaires en php


Tout échange entre visiteur et serveur passe par un formulaire, dans lequel l’utilisateur peut saisir textes ou mots de passe, opérer des choix grâce à des boutons radio, des cases à cocher ou des listes de sélection, voire envoyer ses propres fichiers depuis le posteclient. Il est donc important d’en maîtriser la création à la fois avec XHTML 1.1, pour obtenir des formulaires présentables, et avec PHP, pour gérer les informations fournies par le formulaire au script côté serveur.

Création d’un formulaire HTML

Avant toute chose, il faut créer la structure XHTML d’un formulaire.
Pour être conforme au XHTML 1.1, le document contenant le formulaire doit avoir la
structure minimale suivante :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Titre de la page</title>

</head>
<body>
<form method="post" action="nomdefichier.php">
<fieldset>
<legend>Titre du formulaire</legend>
<!–– Corps du formulaire contenant les différentes composants––>
</fieldset>
</form>
</body>
</html>

L’élément <form> possède certains attributs obligatoires. D’autres sont utilisés dans des
circonstances particulières en fonction des besoins.
L’attribut action="nom_de_fichier.php" (repère ) est obligatoire. Il désigne le fichier
qui va traiter, sur le serveur, les informations saisies dans le formulaire. Il est recommandé
que ce fichier soit présent dans le même répertoire que celui contenant le formulaire,
mais ce n’est pas obligatoire. Si le fichier se trouve dans un autre dossier, voire sur
un autre serveur, il faut utiliser une adresse absolue, en écrivant

action="mailto:nom@abcphp.com"

Cette méthode ne peut servir qu’à envoyer des informations vers un mail mais pas vers
une base de données. Comme elle ne permet pas de les traiter facilement, elle ne nous est
pas très utile en PHP.


L’élément <input />

L’attribut name est obligatoire, car c’est lui qui permet d’identifier les champs côté
serveur et ainsi de récupérer leur contenu. Les sections qui suivent détaillent les éléments
de type "text", "password", "checkbox", "radio", "submit", "reset", "file" et "hidden".
L’élément

<input type="text" />

Cet élément crée un champ de saisie de texte d’une seule ligne. En plus de l’attribut name,
vous pouvez apporter des précisions supplémentaires à l’aide des attributs suivants :
• size="nombre". Détermine la largeur de la zone en nombre de caractères.
• maxlength="nombre". Détermine le nombre maximal de caractères que l’utilisateur est
autorisé à saisir.
• value="texte". Définit un texte par défaut tant que l’utilisateur ne l’a pas modifié.
C’est cette valeur qui est transmise au serveur si l’internaute ne saisit aucun texte,
comme dans l’exemple ci-dessous :

<input type ="text" name="ville" size="30" maxlength="40" value="Votre ville"/>

 

L’élément <input type="password" />


Crée un champ de saisie de mot de passe semblable à un champ texte mais dans lequel les
caractères saisis sont invisibles et remplacés par des astérisques.
Les attributs size et maxlength y jouent le même rôle que précédemment.
En voici un exemple :


<input type ="password" name="code" size="10" maxlength="6"/>


L’élément <input type="checkbox" />

Dans les groupes de cases à cocher, il est possible de cocher plusieurs cases simultanément,
ce qui n’est pas le cas des cases d’option (boutons radio). Dans ce cas, il faut que
le nom de tous les composants soit le même et qu’il soit suivi de crochets ouvrants et
fermants de façon à récupérer les valeurs dans un tableau, comme vous le verrez en détail
par la suite.

En voici un exemple :


<input type ="checkbox" name="lang[]" value="français" />
<input type ="checkbox" name="lang[]" value="anglais" />

En voici un exemple :

français
anglais

 


L’élément <input type="radio" />


Crée un bouton radio. Employé seul, un bouton radio peut servir à valider des choix.
Employé en groupe, il implique, à la différence de cases à cocher, qu’un seul choix est
autorisé. Dans ce cas, tous les boutons radio du groupe doivent avoir une même valeur
pour l’attribut "name". Le fait d’en activer un désactive celui qui l’était auparavant

Voici un exemple d’utilisation de l’élément "radio" :


<label>Débutant</label><input type ="radio" name="capa" value="débutant" />
<label>Initié</label><input type ="radio" name="capa" value="initié" />
Débutant
Initié 

L’élément <input type="submit" />

Crée un bouton sur lequel l’utilisateur doit cliquer pour déclencher l’envoi des données
de tout le formulaire vers le serveur.

Il est indispensable d’avoir au moins un bouton d’envoi par formulaire, mais il est possible
d’en utiliser plusieurs. Le clic sur l’un de ces boutons est alors analysé par le script désigné
par l’attribut action de l’élément <form>. Cela permet d’effectuer des tâches spécialisées
en fonction de la valeur associée à chaque bouton grâce à son attribut value. C’est le
contenu de l’attribut value qui constitue le texte visible du bouton dans le formulaire.
Vous pourrez voir des exemples d’utilisation de plusieurs boutons d’envoi

Voici un exemple simple d’utilisation de l’élément "submit" :


<input type ="submit" value="Envoyer" />
Voici un exemple simple d’utilisation de l’élément "submit" :

L’élément <input type="reset" />

Crée un bouton de réinitialisation du formulaire et non d’effacement systématique,
comme on le croit souvent. Si les éléments du formulaire ont des attributs value qui
définissent des valeurs par défaut, ce sont ces valeurs qui apparaissent au démarrage de la
page et qui sont réaffichées si l’utilisateur clique sur le bouton reset.
Le contenu de l’attribut value du bouton d’effacement constitue le texte visible du bouton
dans le formulaire.
En voici un exemple :


<input type ="reset" value="Effacer" />

 


L’élément <input type="hidden" />

Crée un champ caché n’ayant, comme son nom l’indique, aucun rendu visuel dans le
formulaire mais permettant de transmettre des informations invisibles pour l’utilisateur.
Les informations sont contenues dans l’attribut value. L’attribut name est obligatoire.
En voici un exemple :


<input type="hidden" name="MAX_FILE_SIZE" value="20000"/>

 

L’élément <textarea>

À l’instar de l’élément <input /> avec l’attribut type=text, l’élément <textarea> crée un
champ de saisie de texte mais, contrairement au précédent, en permettant la saisie sur
plusieurs lignes.
Cet élément comporte une balise de fermeture </textarea> et un contenu de texte par
défaut affiché dans la zone de texte. Les attributs cols et rows, qui donnent respectivement
le nombre de colonnes et de lignes de la zone de texte, doivent être définis.
L’exemple suivant :


<textarea name="commentaire" cols="45" rows="8" >
Tapez vos commentaires ici
</textarea>

crée une zone de saisie de texte de 45 colonnes et 8 lignes au maximum.


L’élément <select>

Crée une liste de sélection d’options parmi lesquelles l’utilisateur fait un choix, chaque
option devant être définie par un élément <option> séparé.
L’élément <select> a la structure suivante :

<select name="aa" >

<option value="valeur1">text choix</option>

<option value="valeur 2"> Texte choix 2</option>
<option value="valeur 3"> Texte choix 3</option>
</select>
 

Il comporte les attributs suivants :
• name="nom_select". Obligatoire. Donne le nom de la liste.
• size="Nombre". Détermine le nombre de choix visibles simultanément. Par défaut, sa
valeur est 1.
• multiple="multiple". Autorise la sélection de plusieurs options simultanément.
L’élément <option> comporte les attributs suivants :
• value="chaine". Obligatoire. Définit la valeur transmise au serveur si l’option est sélectionnée.
• selected="selected". Définit l’option qui est sélectionnée par défaut dans la liste si
l’utilisateur ne fait pas de choix.
L’aspect visuel de ce composant est illustré à la figure 6-1 (repère ).


Exemple de code <form>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Formulaire traité par PHP</title>
<style type="text/css">
fieldset {border-width: 3px; border-style: double; border: #993300}
</style>
</head>
<body>
<form action="cible.php" method="post" enctype="application/x-www-form-urlencoded">
<!–– Premier groupe de composants
<fieldset>
<legend><b>Vos coordonnées</b></legend>
<label>Nom : </label><input type="text" name="nom" size="40" maxlength="256"value="votre nom" /><br />
<label>Prénom : </label><input type="text" name="prenom" size="40"maxlength="256" value="votre prénom" /><br />
<label>Mail : </label><input type="text" name="mail" size="40" maxlength="256"value="votre mail" /><br />
<label>Code : </label><input type="password" name="code" size="40"maxlength="6" /> <br />
<input type="radio" name="sexe" value="homme" /> Homme<br />
<input type="radio" name="sexe" value="femme" /> Femme<br />
<select name="pays" size="1">
<option value="France"> France</option>
<option value="Alegerie"> Alegerie</option>
<option value="Maroc"> Maroc</option>
<option value="Canada"> Canada</option>
</select>
<br />
</fieldset>
<!–– Deuxième groupe de composants
<fieldset>
<legend><b>Vos goûts</b></legend>
<input type="checkbox" name="pomme" value="pomme" /> Pommes<br />
<input type="checkbox" name="poire" value="poire" /> Poires<br />
<input type="checkbox" name="scoubidou" value="scoubidou" /> Scoubidous<br />
<textarea name="gouts" cols="50" rows="5" onclick="this.value=''">
Décrivez vos goûts en détail
</textarea>
<br /><br />
</fieldset>
<!–– Troisième groupe de composants––>
<fieldset>
<legend><b>Envoyez nous votre photo</b></legend>
<input type="file" name="fichier" accept="image/jpeg" />

<input type="hidden" name="MAX_FILE_SIZE" value="10000" />
<br /><br />
<input type="reset" value="Effacer" />
&nbsp;&nbsp;&nbsp;
<input type="submit" value="Envoyer" />
<br />
<br />
</fieldset>
</form>
</body>
</html>


Tout d’abord, que se passe-t-il lorsque l’utilisateur clique sur le bouton d’envoi ? Une requête HTTP est envoyée au serveur à destination du script désigné par l’attribut action de l’élément
. Voir Plus



>
Changer le fond
Oregionale Skin
7astuces
Sélectionnez un Fond (11)
7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces
Fond de contenu
7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces