Menu des cours PHP
Ce langage représenté par un éléphant bleu est actuellement l'un des langages de programmation web les plus évolués. Le maitriser vous facilitra la vie et vous découvrirez en lui multiples applications pour votre site, de quoi le rendre vivant, dynamique et surtout simple de mise à jour dans un premier temps. Des variables aux pseudo-frames en passant par l'utilisation de formulaires, voici comment le découvrir...
Nous verrons ici plus précisemment la version 4 de PHP.

Utiliser les données d'un formulaire

Dans les cours HTML, nous avons appris à coder un formulaire. Cela n'avait pas beaucoup d'utilité dans la mesure où on ne pouvait pas les utiliser.
Voici le code HTML du formulaire que nous prendrons comme référence durant ce chapitre :
<form method="post" action="index.php">
<input type="text" name="Nom">
<input type="text" name="Prenom">
<input type="submit" value="Valider">
</form>


Si on valide ce formulaire, il se dirigera donc vers la page index.php en trimbalant les valeurs des champs Nom et Prenom.
Pour récupérer les valeurs envoyées, on utilisera la variable d'environnement $_POST[nom_champs].

Voyons donc le contenu du fichier index.php en détails :

Vérifier que tous les champs sont remplis :

Pour cela, on vérifiera tout simplement que aucun des champs n'est égal à une chaîne vide.

Exemple :
<?php

if($_POST[Nom] != "" && $_POST[Prenom] != "") {
    echo "On peut envoyer le formulaire...";
} else{
    echo "Attention, au moins un des champs n'a pas été remplit !";
}

?>

Envoyer un formulaire par mail :

Attention, pour cette étape, vous devez obligatoirement avoir accés à la fonction mail() de PHP ! A ma connaissance, aucun hébergeur gratuit ne la propose.

Exemple :
<?php

if($_POST[Nom] != "" && $_POST[Prenom] != "") {
    $sujet = "Mail à partir du site";
    $redirection = "merci.php";
    $body = "";
    foreach ($HTTP_POST_VARS as $nom => $valeur)
    {
       $body = $body . "$nom = $valeur\n";
    }
    mail("mail@destinataire.net", $sujet, $body, "From:
    mail@expediteur.net");
    header("Location: $redirection");
} else{
    echo "<script language=\"JavaScript\"> alert(\"Vous devez
    obligatoirement remplir tous les champs avant de valider !\";
    </script>";
}

?>


Voici un script qui devient bien compliqué :p !
Etudions-le.

Le plan général de ce script est la vérification des deux champs. Sinon, une autre action est exécutée.

Si les champs sont OK :
Ce script parcours tout d'abord la variable d'environnement $HTTP_POST_VARS qui renvoi les couples champs-valeurs sous forme de tableau. Comme c'est un tableau, c'est donc foreach() qui est utilisé pour affecter au final à la variable $body les noms de tous les champs avec leur valeur associé par égal (=) interposé.

Ensuite, c'est la fameuse fonction mail() qui est employée en sachant qu'elle prend dans l'ordre comme arguments : l'e-mail du destinataire (vous ?), l'objet du mail, le corps du mail et enfin l'expéditeur de l'e-mail (hé oui, vous mettez qui vous voulez !).

$sujet est défini au début et $body contient donc tout le contenu du formulaire.
Pour la fonction header(), elle servira à rediriger (associée avec Location:). Un fois le mail envoyé, le visiteur est donc redirigé vers la page merci.php.

Si les champs sont pas correctement remplis :
Ici, on utilise JavaScript ! On lui demande juste d'afficher un message alert et l'utilisateur reste sur la page du formulaire.
Pour visualiser l'aspect du message, cliquez ici.
Remarque :
Pour envoyer un mail au format HTML, ajoutez Content-Type: text/html; charset=us-ascii au From:.
Pour finir en beauté, voyons enfin l'une des utilisation la plus courante et utile de PHP, les pseudo-frames.



<< Précédent - Sommaire - Suivant >>

Un problème ? Quelque chose que vous n'avez pas saisit ?
Posez vos questions sur les forums(+) !


Toute reproduction interdite - Intégralement écrits par le Webmaster
Valid XHTML 1.0! Valid CSS!
By JSAND [All right reserved] - Windows est une marque de Microsoft Corporation
Toute copie compléte comme partielle sans autorisation est passible d'amende - Avertissements