Page 1 sur 1

Infos récupérées, phrase pour champs vide

Posté : 16 mai 2014, 12:40
par xroad
Hello à tous,

Je rame bcp en PHP et j'aurais besoin d'un peu d'aide.

Comment rajouter une phrase du type "Non renseigné" pour les champs laissé vide par le visiteur dans le mail que je reçois ?

Du genre si les champs adresse et téléphone sont laissés vides je reçois quelque chose comme ça :

Nom : Test
Prénom : Test
Adresse : Non renseigné
Téléphone : Non renseigné
Email : [email protected]

J'ai écrit ça pour mon fichier de traitement :
<?php
    if(isset($_POST) && isset($_POST['form3_prenom']) && isset($_POST['form3_nom']) && isset($_POST['form3_email']) && isset($_POST['form3_telephone']) && isset($_POST['form3_message'])) {
        extract($_POST);
        if(!empty($form3_prenom) && !empty($form3_nom) && !empty($form3_email) && !empty($form3_message)) {
 
            $to = '[email protected]'; // Mon adresse réelle
 
            $subject = 'Contact depuis le site';
 
            $headers = 'MIME-Version: 1.0' . "\r\n";
            $headers .= 'Content-Type: text/html; charset=UTF-8' . "\r\n";
            $headers .= 'From:' .$form3_firstname. " " .$form3_name. "\r\n";
            $headers .= 'Reply-To:'.$form3_email. "\r\n";
 
            $message = '<html><body>';
            $message .= '<head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head>';
            $message .= '<table>';
            $message .= '<tr><td colspan="2"><p>MESSAGE</p></td></tr>';
            $message .= '<tr><td>Prénom :</td><td>'.$form3_prenom.'</td></tr>';
            $message .= '<tr><td>Nom :</td><td>'.$form3_nom.'</td></tr>';
            $message .= '<tr><td>Email :</td><td>'.$form3_email.'</td></tr>';
            $message .= '<tr><td>Telephone :</td><td>'.$form3_telephone.'</td></tr>';
            $message .= '<tr><td>Message :</td<td>'.stripslashes($form3_message).'</td></tr>';
            $message .= '</table>';
            $message .= '</body></html>';
 
 
            if(mail($to, $subject, $message, $headers)){
                echo "Formulaire envoyé";
            } else {
                echo "Formulaire non envoyé";
            }
 
        } else {
            echo "Vous n'avez pas rempli tous les champs";
        }
    }
    ?>
Merci d'avance pour votre aide.

Re: Infos récupérées, phrase pour champs vide

Posté : 16 mai 2014, 13:31
par telnes
hello

si dans $_POST tu n'as que des var liées au form alors tu peux faire un truc du genre
foreach($_POST as $index=>$valeur){ //pour chaque élément dans le tableau $_POST je récupère l'index et la valeur

   if($_POST[$index] === ""){ // si il n'y a rien comme valeur
      $_POST[$index] = "Non renseigné"; //je met 'non renseigné'
   }
}

Re: Infos récupérées, phrase pour champs vide

Posté : 16 mai 2014, 15:58
par Invité
Merci pour ta réponse !

C'est une portion de code qui est "générique" ? Ou je dois le personnaliser pour chaque champ ?

Si c'est générique je dois l'insérer ou dans mon code exactement ? Avant l'isset ?

Merci d'avance

Re: Infos récupérées, phrase pour champs vide

Posté : 16 mai 2014, 16:51
par telnes
hello

après isset et avant extract

Re: Infos récupérées, phrase pour champs vide

Posté : 16 mai 2014, 17:16
par Invité
C'est juste parfait, je te remercie ! :D :D