• imprimer
  • aide

Forum de discussions « PHP - SQL »

Retrouvez les publications relatives à ces discussions dans nos rubriques PHP, SQL.

envoie un courrie avec un condition

liste des forums liste des discussions Participer à la discussion

Photo de phpdos 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
Photo de coeos 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);
Photo de phpdos Message publié le vendredi 27 août 2010 - 15h39 par phpdos.
Super Gentil pour tes explications... Merci coeos.pro.

liste des forums liste des discussions Participer à la discussion

Vous devez obligatoirement vous identifier en tant que membre pour participer à cette discussion.

ACCÉS COMMUNAUTÉ

Rejoignez ALL HTML

Publiez vos articles, actualités, communiqués ... Donnez votre avis, partagez votre réseau, rencontrez d'autres membres et participez à la vie de la communauté.

Les 5 dernières discussions