IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Envoi des valeurs php dans mail()


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Homme Profil pro
    Etudiant
    Inscrit en
    Janvier 2013
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Etudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2013
    Messages : 26
    Points : 15
    Points
    15
    Par défaut Envoi des valeurs php dans mail()
    Bonjour à tous ,

    Je suis débutant en PHP et j'ai un petit soucis dans le cadre d'un de mes projets.
    J'ai tourné en rond pas mal de temps, en changeant mon code plusieurs fois mais toujours aucune réponse.

    voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
      $expediteur=(isset($_POST["expediteur"])) ? $_POST["expediteur"] : ""; 
    	$civilite=(isset($_POST["civilite"])) ? $_POST["civilite"] : ""; 
    	$nom=(isset($_POST["nom"])) ? $_POST["nom"] : ""; 
    	$matricule=(isset($_POST["matricule"])) ? $_POST["matricule"] : "";
    	$nomn1=(isset($_POST["nomn1"])) ? $_POST["nomn1"] : "";
    	$nomn2=(isset($_POST["nomn2"])) ? $_POST["nomn2"] : "";
    	$datedebut=(isset($_POST["datedebut"])) ? $_POST["datedebut"] : "";
    	$datefin=(isset($_POST["datefin"])) ? $_POST["datefin"] : "";
    	$contrat=(isset($_POST["contrat"])) ? $_POST["contrat"] : "";
    	$bureau=(isset($_POST["bureau"])) ? $_POST["bureau"] : "";
    	$etage=(isset($_POST["etage"])) ? $_POST["etage"] : "";
    	$direction=(isset($_POST["direction"])) ? $_POST["direction"] : "";
    	$service=(isset($_POST["service"])) ? $_POST["service"] : "";
    	$fonction=(isset($_POST["fonction"])) ? $_POST["fonction"] : "";
    	$choix=(isset($_POST["choix"])) ? $_POST["choix"] : "";
    	$profilType=(isset($_POST["profilType"])) ? $_POST["profilType"] : "";
    	$profilBureautique=(isset($_POST["profilBureautique"])) ? $_POST["profilBureautique"] : "";
    	$choix2=(isset($_POST["choix2"])) ? $_POST["choix2"] : "";
    	$choix3=(isset($_POST["choix3"])) ? $_POST["choix3"] : "";
    	$choix4=(isset($_POST["choix4"])) ? $_POST["choix4"] : "";
    	$demandeSpecifique=(isset($_POST["demandeSpecifique"])) ? $_POST["demandeSpecifique"] : "";
     
    // }
     
    /* Destinataire (votre adresse e-mail) */
    $to = '***';
    /* Sujet du mail */
    $sujet = 'Arrivée d\'un nouveau collaborateur ';
    /* Construction du message */
    $msg = 'Bonjour,'."\r\n\r\n";
    $msg = 'Ce mail a été envoyé depuis XXX par '.$expediteur."\r\n\r\n";
    $msg = 'Les donnés concernant l\'entrée du nouveau collaborateur sont :'."\r\n";
    $msg = 'L\'expediteur est :'.$expediteur."\r\n";
    $msg = 'Le nouveau collaborateur s\'appel '.$civilite.''.$nom."\r\n";
    $msg ='Son matricule est : '.$matricule."\r\n\r\n";
    $msg ='Son N+1 est : '.$nomn1.' et son N+2 est : '.$nomn2."\r\n";
    $msg ='Il debutera son contrat le : '.$datedebut."\r\n";
    $msg ='pour le terminer le : '.$datefin."\r\n";
    $msg ='Son contrat est un '.$contrat."\r\n";
    $msg ='Il sera au '.$etage.'e etage et sera dans le bureau '.$bureau."\r\n";
    $msg ='Il appartiendra a la '.$direction.', sera dans le service '.$service.' et occupera la fonction de '.$fonction."\r\n";
    $msg ='Le nouveau collaborateur appartient à la Direction commerciale :'.$choix."\r\n";
    $msg ='Si oui, il aura le profil type : '.$profilType.' et le  profil bureautique de '.$profilBureautique."\r\n";
    $msg ='Le nouveau collaborateur a accés a Internet professionnel : '.$choix2."\r\n";
    $msg ='Si non, il a accés au kiosque virtuel XXX:'.$choix3."\r\n";
    $msg ='Il doit également avoir les habilitations sur '.$choix4."\r\n\r\n";
    $msg ='.Il y a une demande spécifique : '.$demandeSpecifique."\r\n";
    $msg ='Fin du mail'."\r\n";
     
    /* En-têtes de l'e-mail */
    $headers = 'From: '.$expediteur.''."\r\n\r\n";
     
    	/* Envoi de l'e-mail */
    	mail($to, $sujet, $msg, $headers);
    	echo "E-mail envoyé au Support avec succés.";

    Le mail s'envoie mais ne contient que l'en-tête et la phrase de fin "Fin du mail"

    Je suis sur que ca vous parait simpliste mais moi j'en deviens fou

    Merci d'avance pour vos réponses!

  2. #2
    Membre averti Avatar de camyo
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Juin 2004
    Messages
    400
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Juin 2004
    Messages : 400
    Points : 386
    Points
    386
    Par défaut
    Car tu as oublier le point de concaténation des variables ,donc $msg n'a que la valeur de la dernière ligne
    Quand une réponse vous aide
    Et quand ça marche

  3. #3
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 418
    Points
    91 418
    Billets dans le blog
    20
    Par défaut
    Comme dit camyo, tu réaffectes ta variable à chaque ligne au lieu de concaténer...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $variable = 'foo';
    $variable = 'bar';
    echo $variable; // affiche bar
    $variable = 'foo';
    $variable .= 'bar';
    echo $variable; // affiche foobar
    A part ça, tu as un léger souci au niveau sécurité sur ton code : tu ne vérifies jamais le contenu des données reçues !
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  4. #4
    Membre à l'essai
    Homme Profil pro
    Etudiant
    Inscrit en
    Janvier 2013
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Etudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2013
    Messages : 26
    Points : 15
    Points
    15
    Par défaut
    Ah oui on m'avais déja parlé de ce type fréquent d'erreur mais bon je suis débutant ne m'en voulez pas lol


    Le mail s'envoi desormais en entier mais je ne recoi aucune des variables que j'y ai mis....

  5. #5
    Membre à l'essai
    Homme Profil pro
    Etudiant
    Inscrit en
    Janvier 2013
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Etudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2013
    Messages : 26
    Points : 15
    Points
    15
    Par défaut
    Peut etre une erreur de syntaxe??
    Je ne vois pas trop .
    Vous avez des idées??

  6. #6
    Membre averti Avatar de camyo
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Juin 2004
    Messages
    400
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Juin 2004
    Messages : 400
    Points : 386
    Points
    386
    Par défaut
    je commencerais par faire un var_dump() des $_POST pour être sûr déjà




    tiens, je connaissais pas la balise CODELINE
    Quand une réponse vous aide
    Et quand ça marche

  7. #7
    Membre à l'essai
    Homme Profil pro
    Etudiant
    Inscrit en
    Janvier 2013
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Etudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2013
    Messages : 26
    Points : 15
    Points
    15
    Par défaut
    effectivement avec var_dump je vois que mes valeurs sont a 0 !
    Alors la je seche encore plus!

  8. #8
    Membre actif
    Homme Profil pro
    développeur
    Inscrit en
    Février 2013
    Messages
    123
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : développeur
    Secteur : Bâtiment

    Informations forums :
    Inscription : Février 2013
    Messages : 123
    Points : 256
    Points
    256
    Par défaut
    Bonjour,
    Peux tu nous envoyer le formulaire, ca nous aidera à t'aider ^^'

    EDIT: Et regarde dans ta base de donnée si le type de tes variables correspond
    #Hashtag

  9. #9
    Expert éminent
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Points : 7 762
    Points
    7 762
    Par défaut
    Si t'avais une erreur de syntaxe, ton script ne fonctionnerait pas...

    Au passage, ça fait beaucoup de lignes bien denses pour pas grand chose. T'as jamais essayé avec les filtres et les templates ??

    Ex.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    <?php
     
    function array_key_prefix (array $arr, $prefix) {
        if (empty($arr))
            return $arr;
        foreach ($arr as $key => $value)
            $res[$prefix.$key] = $value;
        return $res;
    }
     
    $expected[INPUT_POST] = array(
        'foo' => FILTER_SANITIZE_STRING,
        'bar' => FILTER_SANITIZE_STRING,
        // ...
    );
     
    $mail_tpl = <<< EOF
    Bonjour :foo
    Je suis :bar
    EOF;
     
    $obtained[INPUT_POST] = filter_input_array(INPUT_POST, $expected[INPUT_POST]);
     
    // validation à mettre ici...
     
    $replace = array_key_prefix($obtained[INPUT_POST], ':');
    $message = str_replace(array_keys($replace), $replace, $mail_tpl);
     
    // envoi du mail ici...
    Ce sera probablement plus lisible

  10. #10
    Membre à l'essai
    Homme Profil pro
    Etudiant
    Inscrit en
    Janvier 2013
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Etudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2013
    Messages : 26
    Points : 15
    Points
    15
    Par défaut
    Oui c'est vrai que ca fait beaucoup pour pas grand choses mais tout ca je ne connais pas donc jessaye de faire ce qui marche et apres peut etre ameliorer tout ca

    Voici le formulaire :
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    <?php require("collaborateurs.class.php"); ?>
    <u><h4><font color= "#E66C2C"> Informations génerales</font></h4></u> <br><br>
     
    <form method="post" action="send_email.php" value="Envoyer">
    	<p>
    		<label for="email">Votre E-mail *:</label>
    		<input type="text" id="email" name="email" />
    	</p><br>
     
    	<p>
    		<label for="civilite">Civilité *:</label>
    		<select id="civilite" name="civilite">
    			<option value="mr" selected="selected">Monsieur</option>
    			<option value="mme">Madame</option>
    			<option value="mlle">Mademoiselle</option>
    		</select>
     
    		<label for="nom">Nom/Prénom *: </label>
    		<input type="text" id="nom" name="nom" required />
     
    		<label for="matricule">Matricule*:</label>
    		<input type="text" id="mat" name="mat" required />
    	</p>
     
    	<p>
    		<label for="nomn1">Nom N+1 *:</label>
    		<input type="text" id="n1" name="n1" required />
     
    		<label for="nomn2">Nom N+2 :</label>
    		<input type="text" id="n2" name="n2" />
    	</p><br>
     
    	<p>
    		<label for="datedeb">Date d'arrivee *:</label>
    		<input type="text" id="datedeb" name="datedeb" required />
     
    		<label for="datefin">Date de depart :</label>
    		<input type="text" id="datefin" name="datefin" />
    	</p>
     
    	<p>
    		<label for="contrat">Contrat *:</label>
    		<select id="contrat" name="contrat">
    			<option value="cdi" selected="selected">CDI</option>
    			<option value="cdd">CDD</option>
    			<option value="interimaire">Interimaire</option>
    			<option value="prestataire">Prestataire</option>
    			<option value="aux">Auxiliaire d'été</option>
    			<option value="stagiaire">Stagiaire</option>
    			<option value="alternant">Alternant</option>
    		</select>
     
    		<label for="bureau">Bureau :</label>
    		<input type="text" id="bureau" name="bureau" />
     
    		<label for="etage">Etage :</label>
    		<select id="etage" name="etage">
    			<option value="1" selected="selected">1</option>
    			<option value="2">2</option>
    			<option value="2">3</option>
    			<option value="4">4</option>
    			<option value="5">5</option>
    			<option value="6">6</option>
    			<option value="7">7</option>
    			<option value="8">8</option>
    		</select>
    	</p>
    	<br><br>
     
    	<p>
    		<label for="dir">Direction *:</label>
    		<select id="dir" name="dir">
    			<option value="DCR_GCI'" selected="selected">DCR_Gd_Cpts_et_International</option>
    			<option value="DCR_MDG">DCR_Mandats_de_Gestion	</option>
    			<option value="DCR_NE">DCR_Nord_Est</option>
    			<option value="DCR_OU">DCR_Ouest</option>
    			<option value="DCR_PN">DCR_Paris_Normandie</option>
    			<option value="DCR_SE">DCR_Sud_Est</option>
    			<option value="DCR_SO">DCR_Sud_Ouest</option>
    		</select>
     
    		<label for="service">Service :* :</label>
    		<select id="service" name="service">
    			<option value="sup" selected="selected">Support et Implementation</option>
    			<option value="compta">Comptabilité</option>
    			<option value="PdT">Poste de travail</option>
    		</select>
    	<br>
    		<label for="fonction">Fonction *: </label>
    		<select id="fonction" name="fonction">
    			<option value="gestac" selected="selected">Gestionnaire acheteur</option>
    			<option value="gestpoly">Gestionnaire polyvalent</option>
    			<option value="PdT">Chargé de clientèle</option>
    		</select>
    	</p>				
    	<br><br>
     
    	<hr style="width:750px; color:#E66C2C; background-color:#E66C2C; height:3px;" /><br>
    	<u><h4><font color= "#E66C2C"> Affectations / Habilitations</font></h4></u> 
    	<br><br>
     
    	Le nouveau collaborateur appartient-il à la Direction Commerciale? <br>
    <form>
    	<INPUT type='checkbox' name='choix' value='1'> OUI
    	<INPUT type='checkbox' name='choix' value='2' checked> NON <br>
    </form>
    	<br>
    	Si oui il aura par défaut un accès OpenPl@net,SARA,VPN, une clé Orange 3G+, ainsi qu'un BlackBerry.<br>
    	Si non, merci de remplir le champs suivant: 
     
    		<label for="profil_type">Profil type *:</label>
    		<select id="profil_type" name="profil_type">
    			<option value="gestac" selected="selected">Gestionnaire acheteur</option>
    			<option value="gestpoly">Gestionnaire polyvalent</option>
    			<option value="cc">Chargé de clientèle</option>
    		</select><br>
     
    		<label for="profBur">Profil bureautique tel  :</label>
    		<select id="profBur" name="profBur">
    			<option value="sup" selected="selected">XXX</option>
    			<option value="compta">YYY</option>
    			<option value="PdT">ZZZ</option>
    		</select><br>
     
     
    	Acces internet professionnel *: <form>
    		<INPUT type='checkbox' name='choix2' value='1'> OUI
    		<INPUT type='checkbox' name='choix2' value='2' checked> NON
    	</form><br>
     
    	Si NON , accés au kiosque virtuel NATIXIS ? 	<form>
    														<INPUT type='checkbox' name='choix3' value='1'> OUI
    														<INPUT type='checkbox' name='choix3' value='2' checked> NON
    													</form>
     
    	<input type='radio' name='choix4' value='geide' checked> Geide
    	<input type='radio' name='choix4' value='bde'> Affass/BDE
    	<input type='radio' name='choix4' value='Aes'> Archives e services 
    	<input type='radio' name='choix4' value='SARA'> SARA
    	<br><br>
     
    	<br>
    	<label for="dde_spec">Demande Specifique:</label>
    	<textarea rows='2' cols='30' id="dde_spec" name ='dde_spec'></textarea><br><br>
     
     
     
    <form action="send_email.php" method="post" style="margin-bottom: 0"> 
     
    	<input type="submit" value="Envoyer"> 
    </form> 
     
     
    <br><br>
     
     
    <span class="footnote"><b> * Champs obligatoire</b><br></span>
    </form>



    et la page send_email.php :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    <?php			
    $expediteur=(isset($_POST["expediteur"])) ? $_POST["expediteur"] : ""; 
    $civilite=(isset($_POST["civilite"])) ? $_POST["civilite"] : ""; 
    $nom=(isset($_POST["nom"])) ? $_POST["nom"] : ""; 
    $matricule=(isset($_POST["matricule"])) ? $_POST["matricule"] : "";
    $nomn1=(isset($_POST["nomn1"])) ? $_POST["nomn1"] : "";
    $nomn2=(isset($_POST["nomn2"])) ? $_POST["nomn2"] : "";
    $datedebut=(isset($_POST["datedebut"])) ? $_POST["datedebut"] : "";
    $datefin=(isset($_POST["datefin"])) ? $_POST["datefin"] : "";
    $contrat=(isset($_POST["contrat"])) ? $_POST["contrat"] : "";
    $bureau=(isset($_POST["bureau"])) ? $_POST["bureau"] : "";
    $etage=(isset($_POST["etage"])) ? $_POST["etage"] : "";
    $direction=(isset($_POST["direction"])) ? $_POST["direction"] : "";
    $service=(isset($_POST["service"])) ? $_POST["service"] : "";
    $fonction=(isset($_POST["fonction"])) ? $_POST["fonction"] : "";
    $choix=(isset($_POST["choix"])) ? $_POST["choix"] : "";
    $profilType=(isset($_POST["profilType"])) ? $_POST["profilType"] : "";
    $profilBureautique=(isset($_POST["profilBureautique"])) ? $_POST["profilBureautique"] : "";
    $choix2=(isset($_POST["choix2"])) ? $_POST["choix2"] : "";
    $choix3=(isset($_POST["choix3"])) ? $_POST["choix3"] : "";
    $choix4=(isset($_POST["choix4"])) ? $_POST["choix4"] : "";
    $demandeSpecifique=(isset($_POST["demandeSpecifique"])) ? $_POST["demandeSpecifique"] : "";
     
     
    /* Destinataire (votre adresse e-mail) */
    $to = '***';
    /* Sujet du mail */
    $sujet = 'Arrivée d\'un nouveau collaborateur ';
    /* Construction du message */
    $msg = 'Bonjour,'."\r\n\r\n";
    $msg .= 'Ce mail a été envoyé depuis XXX par '.$expediteur."\r\n\r\n";
    $msg .= 'Les donnés concernant l\'entrée du nouveau collaborateur sont :'."\r\n";
    $msg .= 'L\'expediteur est :'.$expediteur."\r\n";
    $msg .= 'Le nouveau collaborateur s\'appel '.$civilite.''.$nom."\r\n";
    $msg .='Son matricule est : '.$matricule."\r\n\r\n";
    $msg .='Son N+1 est : '.$nomn1.' et son N+2 est : '.$nomn2."\r\n";
    $msg .='Il debutera son contrat le : '.$datedebut."\r\n";
    $msg .='pour le terminer le : '.$datefin."\r\n";
    $msg .='Son contrat est un '.$contrat."\r\n";
    $msg .='Il sera au '.$etage.'e etage et sera dans le bureau '.$bureau."\r\n";
    $msg .='Il appartiendra a la '.$direction.', sera dans le service '.$service.' et occupera la fonction de '.$fonction."\r\n";
    $msg .='Le nouveau collaborateur appartient à la Direction commerciale :'.$choix."\r\n";
    $msg .='Si oui, il aura le profil type : '.$profilType.' et le  profil bureautique de '.$profilBureautique."\r\n";
    $msg .='Le nouveau collaborateur a accés a Internet professionnel : '.$choix2."\r\n";
    $msg .='Si non, il a accés au kiosque virtuel XXX:'.$choix3."\r\n";
    $msg .='Il doit également avoir les habilitations sur '.$choix4."\r\n\r\n";
    $msg .='.Il y a une demande spécifique : '.$demandeSpecifique."\r\n";
    $msg .='Fin du mail'."\r\n";
     
    /* En-têtes de l'e-mail */
    $headers = 'From: '.$expediteur.''."\r\n\r\n";
     
     
    	/* Envoi de l'e-mail */
    	mail($to, $sujet, $msg, $headers);
    	echo "E-mail envoyé au Support avec succés.";
    	var_dump($_POST["expediteur"]);
    ?>
    Il faut juste que l'envoi du mail contienne les variables que je saisie dans le formulaire.
    Ensuite j'ameliorerai le script au niveau sécurité avec mon collègue qui se charge de cette partie du projet.
    En tout cas je vois que vous me proposez pleins de choses merci beaucoup ! ^^

  11. #11
    Membre averti Avatar de camyo
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Juin 2004
    Messages
    400
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Juin 2004
    Messages : 400
    Points : 386
    Points
    386
    Par défaut
    Beaucoup de tes post n'ont pas du tout le même nom que les éléments de ton formulaire !!
    Quand une réponse vous aide
    Et quand ça marche

  12. #12
    Membre actif
    Homme Profil pro
    développeur
    Inscrit en
    Février 2013
    Messages
    123
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : développeur
    Secteur : Bâtiment

    Informations forums :
    Inscription : Février 2013
    Messages : 123
    Points : 256
    Points
    256
    Par défaut
    le var_dump() tu l'as fait sur quelle(s) variable(s)?
    as-tu vérifié si le type de tes variable dans ta base de donnée te correspondait?
    #Hashtag

  13. #13
    Expert éminent
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Points : 7 762
    Points
    7 762
    Par défaut
    jessaye de faire ce qui marche et apres peut etre ameliorer tout ca
    Si j'avais reçu 1€ à chaque fois qu'on ma dit ça (et qu'on l'a jamais fait)

    as-tu vérifié si le type de tes variable dans ta base de donnée te correspondait?
    Y'en a qui voient la vierge, toi tu vois une base de données là ou y'en a pas

  14. #14
    Membre actif
    Homme Profil pro
    développeur
    Inscrit en
    Février 2013
    Messages
    123
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : développeur
    Secteur : Bâtiment

    Informations forums :
    Inscription : Février 2013
    Messages : 123
    Points : 256
    Points
    256
    Par défaut
    Y'en a qui voient la vierge, toi tu vois une base de données là ou y'en a pas
    php --> base de donnée, c'est devenu un automatisme pour moi ^^'
    non mais sérieusement, je suis débutant moi aussi(2 mois de php une semaine sur 2, vive l'alternance ^^') et dés que je fais un formulaire les variables --> direction base de donnée 4 étoiles
    #Hashtag

  15. #15
    Membre à l'essai
    Homme Profil pro
    Etudiant
    Inscrit en
    Janvier 2013
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Etudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2013
    Messages : 26
    Points : 15
    Points
    15
    Par défaut
    oui moi aussi d'habitude je fonctionne avec une BDD mais pas pour ce projet.
    Donc aucun type de variable prédéfini à aller vérifier mais je retiens l'idée pour l'avenir

    Donc je ne vois toujours pas pourquoi l'envoi des données par mail() ne recupère pas les valeurs saisies dans les champs du formulaire collaborateur.php

    J'ai fait un var_dump sur la première variable, histoire de vérifier sa valeur, mais elle est à NULL, je pense donc qu'elles sont toutes à NULL puisque dans le mail que je reçois il n'y a aucune valeur.......

    Non seulement je suis perdu mais alors la je désespère du PHP ^^

  16. #16
    Membre averti Avatar de camyo
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Juin 2004
    Messages
    400
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Juin 2004
    Messages : 400
    Points : 386
    Points
    386
    Par défaut
    je vais donc me répéter, t'as du rater mon message :
    ça, c'est les noms de tes champs du formulaire ( que tu dois récupérer par des $_POST)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    Nom
     
    email
     
    civilite
     
    nom
     
    mat
     
    n1
     
    n2
     
    datedeb
     
    datefin
     
    contrat
     
    bureau
     
    etage
     
    dir
     
    service
     
    fonction
    ça c'est les $_POST
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    <?php			
    $expediteur=(isset($_POST["expediteur"])) ? $_POST["expediteur"] : ""; 
    $civilite=(isset($_POST["civilite"])) ? $_POST["civilite"] : ""; 
    $nom=(isset($_POST["nom"])) ? $_POST["nom"] : ""; 
    $matricule=(isset($_POST["matricule"])) ? $_POST["matricule"] : "";
    $nomn1=(isset($_POST["nomn1"])) ? $_POST["nomn1"] : "";
    $nomn2=(isset($_POST["nomn2"])) ? $_POST["nomn2"] : "";
    $datedebut=(isset($_POST["datedebut"])) ? $_POST["datedebut"] : "";
    $datefin=(isset($_POST["datefin"])) ? $_POST["datefin"] : "";
    $contrat=(isset($_POST["contrat"])) ? $_POST["contrat"] : "";
    $bureau=(isset($_POST["bureau"])) ? $_POST["bureau"] : "";
    $etage=(isset($_POST["etage"])) ? $_POST["etage"] : "";
    $direction=(isset($_POST["direction"])) ? $_POST["direction"] : "";
    $service=(isset($_POST["service"])) ? $_POST["service"] : "";
    $fonction=(isset($_POST["fonction"])) ? $_POST["fonction"] : "";
    $choix=(isset($_POST["choix"])) ? $_POST["choix"] : "";
    $profilType=(isset($_POST["profilType"])) ? $_POST["profilType"] : "";
    $profilBureautique=(isset($_POST["profilBureautique"])) ? $_POST["profilBureautique"] : "";
    $choix2=(isset($_POST["choix2"])) ? $_POST["choix2"] : "";
    $choix3=(isset($_POST["choix3"])) ? $_POST["choix3"] : "";
    $choix4=(isset($_POST["choix4"])) ? $_POST["choix4"] : "";
    $demandeSpecifique=(isset($_POST["demandeSpecifique"])) ? $_POST["demandeSpecifique"] : "";
    sauf erreur de ma part .. ils ne se nomment pas tous pareil .. donc il ne les trouve pas
    Quand une réponse vous aide
    Et quand ça marche

  17. #17
    Membre à l'essai
    Homme Profil pro
    Etudiant
    Inscrit en
    Janvier 2013
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Etudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2013
    Messages : 26
    Points : 15
    Points
    15
    Par défaut
    Citation Envoyé par camyo Voir le message
    sauf erreur de ma part .. ils ne se nomment pas tous pareil .. donc il ne les trouve pas
    Je ne suis pas sur d'avoir compris, parce que justement j'ai fait exprès de leur donner à tous le même nom.^_^

    Déjà j'ai fait une erreur sur la première valeur effectivement ce n’était pas le même nom :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $expediteur=(isset($_POST["email"])) ? $_POST["email"] : "";
    Mais sinon j'ai justement fait exprès de mettre toujours le même nom de variable dans le formulaire et dans les $_POST
    Tu pourrais me mettre un exemple avec une de mes erreurs , stp camyo ?

  18. #18
    Membre averti Avatar de camyo
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Juin 2004
    Messages
    400
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Juin 2004
    Messages : 400
    Points : 386
    Points
    386
    Par défaut
    En commentaire, les nom des inputs de ton form
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    <?php			
    $expediteur=(isset($_POST["expediteur"])) ? $_POST["expediteur"] : ""; 
    $civilite=(isset($_POST["civilite"])) ? $_POST["civilite"] : ""; 
    $nom=(isset($_POST["nom"])) ? $_POST["nom"] : ""; 
    $matricule=(isset($_POST["matricule"])) ? $_POST["matricule"] : ""; // mat
    $nomn1=(isset($_POST["nomn1"])) ? $_POST["nomn1"] : ""; // n1
    $nomn2=(isset($_POST["nomn2"])) ? $_POST["nomn2"] : ""; //n2
    $datedebut=(isset($_POST["datedebut"])) ? $_POST["datedebut"] : ""; // datedeb
    $datefin=(isset($_POST["datefin"])) ? $_POST["datefin"] : "";
    $contrat=(isset($_POST["contrat"])) ? $_POST["contrat"] : "";
    $bureau=(isset($_POST["bureau"])) ? $_POST["bureau"] : "";
    $etage=(isset($_POST["etage"])) ? $_POST["etage"] : "";
    $direction=(isset($_POST["direction"])) ? $_POST["direction"] : ""; // dir
    $service=(isset($_POST["service"])) ? $_POST["service"] : "";
    $fonction=(isset($_POST["fonction"])) ? $_POST["fonction"] : "";
    $choix=(isset($_POST["choix"])) ? $_POST["choix"] : "";
    $profilType=(isset($_POST["profilType"])) ? $_POST["profilType"] : "";
    $profilBureautique=(isset($_POST["profilBureautique"])) ? $_POST["profilBureautique"] : ""; //profBur
    $choix2=(isset($_POST["choix2"])) ? $_POST["choix2"] : ""; // choix
    $choix3=(isset($_POST["choix3"])) ? $_POST["choix3"] : "";
    $choix4=(isset($_POST["choix4"])) ? $_POST["choix4"] : "";
    $demandeSpecifique=(isset($_POST["demandeSpecifique"])) ?  //$_POST["demandeSpecifique"] : "";  // dde_spec
    Quand une réponse vous aide
    Et quand ça marche

  19. #19
    Membre à l'essai
    Homme Profil pro
    Etudiant
    Inscrit en
    Janvier 2013
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Etudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2013
    Messages : 26
    Points : 15
    Points
    15
    Par défaut
    Oui c'est vrai merci !!
    Mais j'ai testé également en changeant mes input pour qu'ils correspondent au form mais ca ne marche toujours pas ! regardez :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    $expediteur=(isset($_POST["email"])) ? $_POST["email"] : ""; 
    $civilite=(isset($_POST["civilite"])) ? $_POST["civilite"] : ""; 
    $nom=(isset($_POST["nom"])) ? $_POST["nom"] : ""; 
    $matricule=(isset($_POST["mat"])) ? $_POST["mat"] : "";
    $nomn1=(isset($_POST["n1"])) ? $_POST["n1"] : "";
    $nomn2=(isset($_POST["n2"])) ? $_POST["n2"] : "";
    $datedebut=(isset($_POST["datedeb"])) ? $_POST["datedeb"] : "";
    $datefin=(isset($_POST["datefin"])) ? $_POST["datefin"] : "";
    $contrat=(isset($_POST["contrat"])) ? $_POST["contrat"] : "";
    $bureau=(isset($_POST["bureau"])) ? $_POST["bureau"] : "";
    $etage=(isset($_POST["etage"])) ? $_POST["etage"] : "";
    $direction=(isset($_POST["dir"])) ? $_POST["dir"] : "";
    $service=(isset($_POST["service"])) ? $_POST["service"] : "";
    $fonction=(isset($_POST["fonction"])) ? $_POST["fonction"] : "";
    $choix=(isset($_POST["choix"])) ? $_POST["choix"] : "";
    $profilType=(isset($_POST["profilType"])) ? $_POST["profilType"] : "";
    $profilBureautique=(isset($_POST["profBur"])) ? $_POST["profBur"] : "";
    $choix2=(isset($_POST["choix2"])) ? $_POST["choix2"] : "";
    $choix3=(isset($_POST["choix3"])) ? $_POST["choix3"] : "";
    $choix4=(isset($_POST["choix4"])) ? $_POST["choix4"] : "";
    $demandeSpecifique=(isset($_POST["dde_spec"])) ? $_POST["dde_spec"] : "";
     
     
    /* Destinataire (votre adresse e-mail) */
    $to = '***';
    /* Sujet du mail */
    $sujet = 'Arrivée d\'un nouveau collaborateur ';
    /* Construction du message */
    $msg = 'Bonjour,'."\r\n\r\n";
    $msg .= 'Ce mail a été envoyé depuis XXX par '.$expediteur."\r\n\r\n";
    $msg .= 'Les donnés concernant l\'entrée du nouveau collaborateur sont :'."\r\n";
    $msg .= 'L\'expediteur est :'.$expediteur."\r\n";
    $msg .= 'Le nouveau collaborateur s\'appel '.$civilite.''.$nom."\r\n";
    $msg .='Son matricule est : '.$matricule."\r\n\r\n";
    $msg .='Son N+1 est : '.$nomn1.' et son N+2 est : '.$nomn2."\r\n";
    $msg .='Il debutera son contrat le : '.$datedebut."\r\n";
    $msg .='pour le terminer le : '.$datefin."\r\n";
    $msg .='Son contrat est un '.$contrat."\r\n";
    $msg .='Il sera au '.$etage.'e etage et sera dans le bureau '.$bureau."\r\n";
    $msg .='Il appartiendra a la '.$direction.', sera dans le service '.$service.' et occupera la fonction de '.$fonction."\r\n";
    $msg .='Le nouveau collaborateur appartient à la Direction commerciale :'.$choix."\r\n";
    $msg .='Si oui, il aura le profil type : '.$profilType.' et le  profil bureautique de '.$profilBureautique."\r\n";
    $msg .='Le nouveau collaborateur a accés a Internet professionnel : '.$choix2."\r\n";
    $msg .='Si non, il a accés au kiosque virtuel XXX:'.$choix3."\r\n";
    $msg .='Il doit également avoir les habilitations sur '.$choix4."\r\n\r\n";
    $msg .='Il y a une demande spécifique : '.$demandeSpecifique."\r\n";
    $msg .='Fin du mail'."\r\n";
     
    /* En-têtes de l'e-mail */
    $headers = 'From: '.$expediteur.''."\r\n\r\n";
     
     
    	/* Envoi de l'e-mail */
    	mail($to, $sujet, $msg, $headers);
    	echo "E-mail envoyé au Support avec succés.";
    	var_dump($_POST["expediteur"]);
    et l'utilisation du var_dumps que vous m'avez conseillé m'indique que la valeur est NULL. J'ai pourtant suivi vos conseils mais ce mail ne veut pas récuperer les valeurs

  20. #20
    Membre averti Avatar de camyo
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Juin 2004
    Messages
    400
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Juin 2004
    Messages : 400
    Points : 386
    Points
    386
    Par défaut
    Ok, j'ai trouvé ..

    Tu ouvres et tu fermes au moins 5 balises <form> dans ton formulaire

    Exemple
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <form action="send_email.php" method="post" style="margin-bottom: 0"> 
     
    				<input type="submit" value="Envoyer"> 
    				</form>

    Ce qui rend complétement normal que tu n’envoies rien .. y'a rien dans ton formulaire
    Quand une réponse vous aide
    Et quand ça marche

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. envoi des valeurs d'un msflexgrid dans un textbox
    Par brice8890 dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 24/03/2011, 16h34
  2. [VBA-W]prendre des valeurs "texte" dans Excel
    Par teromah dans le forum VBA Word
    Réponses: 12
    Dernier message: 14/06/2007, 16h20
  3. [PHP-JS] afficher des donnée php dans popup javascript
    Par speedylol dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 05/04/2006, 17h05
  4. Réponses: 11
    Dernier message: 22/02/2006, 17h25
  5. ouverture des balises PHP dans les include
    Par FoxLeRenard dans le forum Langage
    Réponses: 5
    Dernier message: 30/01/2006, 12h08

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo