-
Message publié le mardi 09 mars 2010 - 15h45 par phpdos.
-
Bonjour,
J’ai une question,
Comment en PHP peut-on dire :
Si variable est vide ou bien
Si variable n’est pas vide
S’il utilisateur est rempli le champ email [champ_email] dans un formulaire on envoie un courriel de confirmation
En fait, j’ai un formulaire, les gens remplis le formulaire, ils cliquent sur le bouton « valider »
On affiche un autre écran avec le message de confirmation « merci… » et s’ils sont rempli le champs email, ils vont recevoir aussi une confirmation par email…
Voici ce que je pense pour envoyer un courriel SANS CONDITION
// mon champs email c’est champ_email
$var_email =$_POST['champ_email'];
// $var_civilite prendre sa valeur dans un menu déroulant champ_civilite avec 2 options Monsieur ou Madame
$var_civilite =$_POST['champ_civilite'];
$var_nom =$_POST['champ_nom'];
$recipient = "info@toto.com";
$subject = "confirmation de votre eng…" ;
$msg = "Bonjour \t$var_civilite \t$var_nom\n";
$msg = "Merci de votre inscription sur notre liste d’envoi. Vous faites maintenant partie de ce vaste réseau\n\n";
$mailheaders = "From: toto.com<> \n";
mail($recipient, $subject, $msg, $mailheaders);
Est ce que c’est correct ?
Et je met un condition : s’il utilisateur est rempli le champ email [champ_email] on envoie un courriel de confirmation
// mon champs email c’est champ_email
$var_email =$_POST['champ_email'];
// $var_civilite prendre sa valeur dans un menu déroulant champ_civilite avec 2 options Monsieur ou Madame
$var_civilite =$_POST['champ_civilite'];
$var_nom =$_POST['champ_nom'];
If (!empty($var_email))
{
$recipient = "info@toto.com";
$subject = "confirmation de votre eng…" ;
$msg = "Bonjour \t$var_civilite \t$var_nom\n";
$msg = "Merci de votre inscription sur notre liste d’envoi. Vous faites maintenant partie de ce vaste réseau\n\n";
$mailheaders = "From: toto.com<> \n";
mail($recipient, $subject, $msg, $mailheaders);
}
Est-ce que c’est correct ou j’ai oublié quelque chose ?
Bonne journée
-
Message publié le mardi 09 mars 2010 - 17h32 par coeos. coeos.pro
-
Bonjour, en PHP, SI $_POST['champ_email'] n'est pas vide s'écrit :
if(!empty$_POST['champ_email'])
{
$var_email =$_POST['champ_email'];
...
}
empty = vide
!empty = n'est pas vide
ensuite il y a une chose très importante à gérer : les erreurs, si le visiteur met un " dans son mail, par exemple toto"@bidon.fr: que se passe t il ?
$recipient = "toto"@bidon.fr";
mail($recipient, $subject, $msg, $mailheaders);
autrement dit:
mail(toto"@bidon.fr, $subject, $msg, $mailheaders);
et la on vois que le " va crée une erreur donc ils faut les transformer en langage HTML avec la fonction htmlentities
/!\\ TOUTES LES VALEURS POST OU GET DOIVENT SUBIR CE TRAITEMENT /!\\
$message = htmlentities($_POST['message']); ou $message = htmlentities($_GET['message']);
De plus, verifie que l'email est une adresse mail valide :
$email = filter_var($_POST['mail'], FILTER_VALIDATE_EMAIL);
-
Message publié le vendredi 27 août 2010 - 15h39 par phpdos.
-
Super Gentil pour tes explications... Merci coeos.pro.