Actualites | Forum |Archives
Le magazine des décideurs et webmasters qui gagnent !
Inscription | Livre d'or | Plan du site | 15 visiteurs actifs
   
A la Une
Actualité
Dossiers
Communiqués
Coin Technique
Agenda des salons
Emploi
Echange de liens

Archives
Sélection
Expérience qui parle
Internet quotidien
Tous les dossiers

Forum
Forum SAM-MAG

Guides
Check-list de la promotion des sites
Promouvoir et référencer les sites web

Contact
Nous contacter
Newsletter
La protection des données personnelles


 
  Que faire des données d'un formulaire (2ème partie)
Dossier "SAM l'Informaticien" du 18 septembre au 1er octobre 2000 par Daniel Lucazeau

ous avons vu ensemble la dernière fois comment réceptionner les informations d'un formulaire par messagerie. Dans cet épisode nous allons gérer ces données sur le serveur avec PHP et la fois prochaine nous le verrons avec ASP.. Chacun, son tour.

Pour que les données contenues dans le formulaire puissent être réceptionnées par le script serveur, nous devons donner l'URL ou le nom de ce script dans l'attribut 'action' de la balise <form>. Comme ceci par exemple :
<form action="monScript.php" method=post>.

Le script serveur 'monScript' reçoit alors automatiquement les variables contenues dans le formulaire. Tous les contrôles ayant un nom sont transmis : les zones de saisie, les cases à cocher, les radio-boutons, les boutons 'submit, les champs cachés... Les noms des variables correspondent exactement aux noms des contrôles du formulaire. Si vous avez déclaré un champ <.... name="nomChamp"...> vous pourrez manipuler la variable $nomChamp dans votre script PHP. C'est miraculeux !

Essayons ce script simple :

<FORM ACTION="test.php" METHOD=POST>
<INPUT TYPE="text" NAME="zoneDeTexte" SIZE=40 MAXLENGTH=40>
<INPUT TYPE="submit" NAME="btnEnvoyer" VALUE="envoyer">
</FORM>

Et mettons dans le source de text.php, (qui ici est au même niveau que la page contenant le formulaire) le code suivant :

<?php
print $zoneDeTexte;
?>

Ce que nous avons saisi dans la zone de texte, éventuellement rien, est affiché dans la page préparée par le script. Cela peut servir par exemple à faire une page de remerciements, de présentation de ce qu'à saisie l'internaute afin de lui faire valider sa saisie, etc.. Bien qu'il y ait d'autres méthodes : cookies ou script Perl. Il est toujours bon d'avoir plusieurs cordes à son arc afin de choisir le plus judicieux en fonction de la situation.

La page-formulaire et le script peuvent ne faire qu'un:

<FORM ACTION="<?php print $PHP_SELF ?>" METHOD=POST>
<INPUT TYPE="text" NAME="zoneDeTexte" SIZE=40 MAXLENGTH=40>
<INPUT TYPE="submit" NAME="btnEnvoyer" VALUE="envoyer">
</FORM>

La variable $PHP_SELF est créée par le système et contient le nom du script courant. Notre page affichée est donc construite par notre script PHP et à l'envoi du formulaire, c'est le même script, pas nécessairement la même page qui est exécuté.

Remarque : La variable $PHP_SELF pose parfois des problèmes chez certains hébergeurs, elle contient l'URL complète avec le nom de domaine. Pour savoir ce qu'elle contient il suffit de faire un 'echo $PHP_SELF' dans un script PHP.

Quel est l'intérêt d'utiliser le même script pour envoyer et recevoir ? Vous allez vite comprendre.Imaginons le formulaire qui lit ses informations dans une base de données, cela permet à l'utilisateur de corriger, supprimer et créer des fiches. On insère des boutons "création", "modification" .. dans le formulaire :

<INPUT type='submit' name='delete' VALUE="Supprimer">
<INPUT type='submit' name='create' VALUE="Créer">
<INPUT type='submit' name='update' VALUE="Modifier">

Le script gère le bouton qui a été utilisé pour transmettre le formulaire afin de mettre en oeuvre les actions adéquates :

if ( isset( $update)) { // mise à jour
...
} elseif ( isset( $delete)) {
...
} elseif ( isset( $create)) {
...
}

Ensuite dans le corps de la page on affiche la fiche modifiée ou uun fiche vierge avec des valeurs par défaut par exemple. dans le cas de la suppression il faut faire des choix soit la précédente ou la suivante, en testant que ce n'est pas suivant le cas la première ou la dernière.

A suivre…

<< Lire la 1ère partie

Daniel Lucazeau
Ajornet.com
Chef de projet Internet
Développeur informatique

Tous droits réservés - Reproduction même partielle interdite sans autorisation préalable

 
 
Google
 
Web www.sam-mag.com
 

Copyright © ACORUS 2004. All Rights Reserved

- Sam-Mag.com Referencement-Sur-mesure - Referencer-Site-Web.com
Visibilite-Internationale.com - Referencement-Immobilier.net