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

JavaScript Discussion :

Envoi de formulaire


Sujet :

JavaScript

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2012
    Messages
    335
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2012
    Messages : 335
    Points : 70
    Points
    70
    Par défaut Envoi de formulaire
    Bonjour à tous,

    Je vous donne d'abord mon code html pour que vous m'aidiez à identifier ce que j'ai mal fait parce qu'en cliquant sur le bouton "envoyer" c'est une fenêtre qui me propose d'enregistrer le fichier php que j'ai défini dans le champ "action".
    Le fichier php en question a pour but de récupérer toutes les données de l'utilisateur puis de les envoyer par email au fournisseur

    Que dois-je rectifier, modifier, changer ?

    Merci de votre aide

    Code Html
    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
    <!DOCTYPE html>
    <html lang="fr">
    <head>
         <title>Besoin Client</title>               
    </head>
    <body class="global">
    <form action='formMatCons.php?wanted=matcons' method='post' class='formMatCons'>
     
          <label for="type"><span class="maj">t</span>ype </label>
                             <select name="type">
                             <option class="fers_a_beton" value="fers_a_beton" selected><span class="maj">f</span>er &agrave; b&eacute;ton</option>
    					<option class="toleondulee_toleplane" value="toleondulee_toleplane" ><span class="maj">t</span>&ocirc;le ondul&eacute;e <span class="maj">t</span>&ocirc;le plane</option>
    					<option class="grillages" value="grillages"><span class="maj">g</span>rillages</option>	
    				     <option class="moulures" value="moulures"><span class="maj">m</span>oulures</option>				     
    				     <option class="vitrages" value="vitrages"><span class="maj">v</span>itrages</option>				     
    				       </select>
         <span> <br></span>
     
         <label for="length"><span class="maj">l</span>ongueur </label>
         <input name="length"type="num" placeholder="longueur ?">
         <span> m&egrave;tres <br></span>
     
         <label for="width"><span class="maj">l</span>argeur   </label>
         <input name="width"type="num" placeholder="largeur ?">
         <span> m&egrave;tres <br></span>
     
         <label for="epaisseur"><span class="maj">&eacute;</span>paisseur </label>
         <input name="epaisseur"type="num" placeholder="épaisseur ?">
         <span> mm <br></span>
     
         <label for="quantity"><span class="maj">q</span>uantit&eacute;   </label>
         <input name="quantity"type="num" placeholder="quantité ?">
         <span> <br></span>
     
         <label for="material"><span class="maj">m</span>ati&egrave;re </label>
                             <select name="material">
         				<option class="verre" value="verre" selected><span class="maj">v</span>erre</option>
    					<option class="acier" value="acier" ><span class="maj">a</span>cier</option>
    					<option class="autre" value="autre"><span class="maj">a</span>utre</option>				     
    				     </select>
         <span> <br></span>
     
         <label for="currency"><span class="maj">d</span>evise   </label>
         <select name="currency">
    					<option class="euro" value="euro" selected><span class="maj">E</span>uro</option>
    					<option class="USD" value="USD"><span class="maj">U</span>SD</option>
    	</select>     
         <span> <br></span>
     
         <label for="deliveryplace"><span class="maj">l</span>ieu de livraison </label>
         <input name="deliveryplace"type="text" placeholder="lieu de livraison ?">
         <span> <br></span>
     
         <label for="deliverydate"><span class="maj">p</span>&eacute;riode de livraison   </label>
         <input name="deliverydate"type="text" placeholder="Période de livraison ?">
         <span> <br></span>  
     
         <label for="incoterms"><span class="maj">i</span>ncoterms   </label>
         <select name="incoterms">
         <option class="FOB" value="FOB" selected><span class="maj">F</span>OB</option>
    	<option class="DAP" value="DAP"><span class="maj">D</span>AP</option>
    	</select> 
         <span> <br></span>
     
         <label for="mail "><span class="maj">A</span>dresse email pour r&eacute;ponse </label>
         <input name="mail" type="email">
         <span> <br></span> 
     
     <input name="wanted" type="hidden" value="matcons">   
     <input type="submit">      
     </form>
     
    </body> 
    <a class = "productsReload" href="javascript:history.back()"> Retourner à la page Produits</a>
     
     <script type="text/javascript">
     
         //début fonction addEvent
            function addEvent (ev, func, elem) {
           
            if (elem.addEventListener) {
                elem.addEventListener (ev, func, false);
            }
           
            else if (elem.attachEvent) {              // For IE 8 and earlier versions
                elem.attachEvent('on' + ev, func);
            }
            
            }
         // fin fonction addEvent
    function (productsReload) {
    window.history.back()}
     var return = document.querySelector('.return');  
     addEvent('click', productsReload, return);
     
     </script>
     
    </html>

    Code php : 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
    <?php
    echo"0";
    $email = 'berthe.truc@wanadoo.fr';
    $wanted = $_get['wanted']; 
    switch ($wanted) {
         case 'matcons':
              $type = $_POST['type'];
              $length = $_POST['length'];         
              $width = $_POST['width'];
              $epaisseur = $_POST['epaisseur']; 
              $quantity = $_POST ['quantity']; 
              $material = $_POST['material'];
              $currency = $_POST['currency'];
              $deliveryplace = $_POST['deliveryplace'];
              $deliverydate = $_POST['deliverydate'];
              $incoterms = $_POST['incoterms'];
    $mail = $_POST ['mail'];
    $subject = 'besoin du client' . $mail . 'pour matériaux de construction';
     
    $message = 'Bonjour Mr truc, \n\n Voici ma demande :\n\nType :' . $type . '\t Longueur :' .$length . '\t Largeur :' .$width . '\t Epaisseur :' .$epaisseur . '\t Quantité :' .$quantity . '\t Matière :' .$material . '\t Devise :' .$currency . '\t Lieu de Livraison :' .$deliveryplace . '\t Date de Livraison :' .$deliverydate . "\t Incoterms :" .$incoterms ;                      
    mail($email, $subject, $message);
    break;
    }
    echo"22"
    ?>

  2. #2
    Expert confirmé
    Avatar de javatwister
    Homme Profil pro
    danseur
    Inscrit en
    Août 2003
    Messages
    3 681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : danseur

    Informations forums :
    Inscription : Août 2003
    Messages : 3 681
    Points : 5 221
    Points
    5 221
    Par défaut
    Bonjour,

    - aucune raison d'ajouter wanted=matcons en argument de action;
    - je ne connais pas la syntaxe suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    function (productsReload) {
    window.history.back();  
    }
    - après la fermeture de la balise body, il n'y a plus de code à écrire...
    - l'instruction javascript: n'a pas sa place dans une balise de lien (ni ailleurs);
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a class = "productsReload" href="javascript:history.back()"> Retourner à la page Produits</a>

    - d'autre part, ton history.back() est une curieuse fantaisie pour un formulaire;

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2012
    Messages
    335
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2012
    Messages : 335
    Points : 70
    Points
    70
    Par défaut
    Bonjour,

    Merci pour cette réponse.
    D'abord, le 'wanted' m'est utile pour le php car je réalise dedans un switch sur ce wanted et j'ai par la suite l'intention de rajouter des 'case'.

    Ensuite, pour le 'javascript' écrit dans le formulaire en fait j'avais complètement oublié que je l'avais mis. Merci de me l'avoir signalé. C'était parce que toute la vue de mon site est réalisée en html et javascript. C'était donc pour moi un moyen de faire un bouton de "retour à la page précédente" .

    Enfin, j'ai ajouté un "<script>" en JS pour créer une fonction de retour à la page précédente
    Mais après j'ai pensé qu'elle ne fonctionnait pas c'est pourquoi j'ai ajouté le "javascript:history.back()".
    Mais maintenant je voulais tout d'abord que vous m'aidiez à ce que ce <script> fonctionne pour pouvoir enlever ce "javascript:history.back()".

    Merci beaucoup

  4. #4
    Expert confirmé
    Avatar de javatwister
    Homme Profil pro
    danseur
    Inscrit en
    Août 2003
    Messages
    3 681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : danseur

    Informations forums :
    Inscription : Août 2003
    Messages : 3 681
    Points : 5 221
    Points
    5 221
    Par défaut
    Je t'assure, tant que tu auras des incohérences dans les instructions javascript, inutile d'aller plus loin: mes remarques 1 et 2 n'étaient pas des plaisanteries...
    J'en ajoute une: l'élément ".return" que tu appelles n'existe pas dans ton html;
    Et en plus, return est un mot clé hautement réservé donc tu ne peux donner ce nom à une variable;

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2012
    Messages
    335
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2012
    Messages : 335
    Points : 70
    Points
    70
    Par défaut
    Bonjour,
    Alors j'ai essayé de régler les problèmes évoqués par "javatwister" mais je ne comprends pas comment appeler le script php à partir du html sans indiquer un paramètre dans le champ -action-.
    Voici mon code html. Le code php n'a pas changé.

    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
    <!DOCTYPE html>
    <html lang="fr">
    <head>
         <title>Besoin Client</title>               
    </head>
    <body class="global">
    <form action='formMatCons.php?wanted=matcons' method='post' class='formMatCons'>
     
          <label for="type"><span class="maj">t</span>ype </label>
                             <select name="type">
                             <option class="fers_a_beton" value="fers_a_beton" selected><span class="maj">f</span>er &agrave; b&eacute;ton</option>
    					<option class="toleondulee_toleplane" value="toleondulee_toleplane" ><span class="maj">t</span>&ocirc;le ondul&eacute;e <span class="maj">t</span>&ocirc;le plane</option>
    					<option class="profiles" value="profiles"><span class="maj">p</span>rofil&eacute;s</option>
    					<option class="treillis_soudes" value="treillis_soudes"><span class="maj">t</span>reillis soud&eacute;s</option>
    					<option class="grillages" value="grillages"><span class="maj">g</span>rillages</option>				     
    				     <option class="contreplaques_isorel" value="contreplaques_isorel"><span class="maj">c</span>ontreplaqu&eacute;s Isorel</option>				     
    				     <option class="lambris_pvc" value="lambris_pvc"><span class="maj">l</span>ambris PVC</option>				     
    				     <option class="moulures" value="moulures"><span class="maj">m</span>oulures</option>				     
    				     <option class="vitrages" value="vitrages"><span class="maj">v</span>itrages</option>				     
    				       </select>
         <span> <br></span>
     
         <label for="length"><span class="maj">l</span>ongueur </label>
         <input name="length"type="num" placeholder="longueur ?">
         <span> m&egrave;tres <br></span>
     
         <label for="width"><span class="maj">l</span>argeur   </label>
         <input name="width"type="num" placeholder="largeur ?">
         <span> m&egrave;tres <br></span>
     
         <label for="epaisseur"><span class="maj">&eacute;</span>paisseur </label>
         <input name="epaisseur"type="num" placeholder="épaisseur ?">
         <span> mm <br></span>
     
         <label for="quantity"><span class="maj">q</span>uantit&eacute;   </label>
         <input name="quantity"type="num" placeholder="quantité ?">
         <span> <br></span>
     
         <label for="material"><span class="maj">m</span>ati&egrave;re </label>
                             <select name="material">
         				<option class="verre" value="verre" selected><span class="maj">v</span>erre</option>
    					<option class="acier" value="acier" ><span class="maj">a</span>cier</option>
    					<option class="plastique" value="plastique"><span class="maj">p</span>lastique</option>
    					<option class="plexiglas" value="plexiglas"><span class="maj">p</span>lexiglas</option>
    					<option class="autre" value="autre"><span class="maj">a</span>utre</option>				     
    				     </select>
         <span> <br></span>
     
         <label for="currency"><span class="maj">d</span>evise   </label>
         <select name="currency">
    					<option class="euro" value="euro" selected><span class="maj">E</span>uro</option>
    					<option class="USD" value="USD"><span class="maj">U</span>SD</option>
    	</select>     
         <span> <br></span>
     
         <label for="deliveryplace"><span class="maj">l</span>ieu de livraison </label>
         <input name="deliveryplace"type="text" placeholder="lieu de livraison ?">
         <span> <br></span>
     
         <label for="deliverydate"><span class="maj">p</span>&eacute;riode de livraison   </label>
         <input name="deliverydate"type="text" placeholder="Période de livraison ?">
         <span> <br></span>  
     
         <label for="incoterms"><span class="maj">i</span>ncoterms   </label>
         <select name="incoterms">
         <option class="FOB" value="FOB" selected><span class="maj">F</span>OB</option>
    	<option class="DAP" value="DAP"><span class="maj">D</span>AP</option>
    	</select> 
         <span> <br></span>
     
         <label for="mail "><span class="maj">A</span>dresse email pour r&eacute;ponse </label>
         <input name="mail" type="email">
         <span> <br></span> 
     
     <input name="wanted" type="hidden" value="matcons">   
     <input type="submit">      
     </form>
     
    <a class = "riton" > Retourner à la page Produits</a>  
     
     <script type="text/javascript">
     
         //début fonction addEvent
            function addEvent (ev, func, elem)   {
           
            if (elem.addEventListener) {
                elem.addEventListener (ev, func, false);
                                       }
           
            else if (elem.attachEvent) {              // For IE 8 and earlier versions
                elem.attachEvent('on' + ev, func);
                                       }       
                                                 }
         // fin fonction addEvent
    function productsReload () { 
    window.history.back;    
    }
     var riton = document.querySelector('.riton');  
     addEvent('click', productsReload, riton);
     
     </script>
     
    </body> 
     
    </html>

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2012
    Messages
    335
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2012
    Messages : 335
    Points : 70
    Points
    70
    Par défaut
    Bonjour,

    alors, excusez-moi, j'ai un peu oublié ce que j'avais codé dernièrement et donc revoici mes codes :

    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
    <!DOCTYPE html>
    <html lang="fr">
    <head>
         <title>Besoin Client</title>               
    </head>
    <body class="global">
    <form action='formMatCons.php' method='post' class='formMatCons'>
     
          <label for="type"><span class="maj">t</span>ype </label>
                             <select name="type">
                             <option class="fers_a_beton" value="fers_a_beton" selected><span class="maj">f</span>er &agrave; b&eacute;ton</option>
    					<option class="toleondulee_toleplane" value="toleondulee_toleplane" ><span class="maj">t</span>&ocirc;le ondul&eacute;e <span class="maj">t</span>&ocirc;le plane</option>
    					<option class="profiles" value="profiles"><span class="maj">p</span>rofil&eacute;s</option>
    					<option class="treillis_soudes" value="treillis_soudes"><span class="maj">t</span>reillis soud&eacute;s</option>		     
    				     <option class="vitrages" value="vitrages"><span class="maj">v</span>itrages</option>				     
    				       </select>
         <span> <br></span>
     
         <label for="length"><span class="maj">l</span>ongueur </label>
         <input name="length"type="num" placeholder="longueur ?">
         <span> m&egrave;tres <br></span>
     
         <label for="width"><span class="maj">l</span>argeur   </label>
         <input name="width"type="num" placeholder="largeur ?">
         <span> m&egrave;tres <br></span>
     
         <label for="epaisseur"><span class="maj">&eacute;</span>paisseur </label>
         <input name="epaisseur"type="num" placeholder="épaisseur ?">
         <span> mm <br></span>
     
         <label for="quantity"><span class="maj">q</span>uantit&eacute;   </label>
         <input name="quantity"type="num" placeholder="quantité ?">
         <span> <br></span>
     
         <label for="material"><span class="maj">m</span>ati&egrave;re </label>
                             <select name="material">
         				<option class="verre" value="verre" selected><span class="maj">v</span>erre</option>
    					<option class="acier" value="acier" ><span class="maj">a</span>cier</option>
    					<option class="plastique" value="plastique"><span class="maj">p</span>lastique</option>
    					<option class="plexiglas" value="plexiglas"><span class="maj">p</span>lexiglas</option>
    					<option class="autre" value="autre"><span class="maj">a</span>utre</option>				     
    				     </select>
         <span> <br></span>
     
         <label for="currency"><span class="maj">d</span>evise   </label>
         <select name="currency">
    					<option class="euro" value="euro" selected><span class="maj">E</span>uro</option>
    					<option class="USD" value="USD"><span class="maj">U</span>SD</option>
    	</select>     
         <span> <br></span>
     
         <label for="deliveryplace"><span class="maj">l</span>ieu de livraison </label>
         <input name="deliveryplace"type="text" placeholder="lieu de livraison ?">
         <span> <br></span>
     
         <label for="deliverydate"><span class="maj">p</span>&eacute;riode de livraison   </label>
         <input name="deliverydate"type="text" placeholder="Période de livraison ?">
         <span> <br></span>  
     
         <label for="incoterms"><span class="maj">i</span>ncoterms   </label>
         <select name="incoterms">
         <option class="FOB" value="FOB" selected><span class="maj">F</span>OB</option>
    	<option class="DAP" value="DAP"><span class="maj">D</span>AP</option>
    	</select> 
         <span> <br></span>
     
         <label for="mail "><span class="maj">A</span>dresse email pour r&eacute;ponse </label>
         <input name="mail" type="email">
         <span> <br></span> 
     
     <input name="wanted" type="hidden" value="matcons">   
     <input type="submit">      
     </form>
     
    <a class = "riton" href="#"> Retourner à la page Produits</a>  
     
     <script type="text/javascript">
     
         //début fonction addEvent
            function addEvent (ev, func, elem)   {
           
            if (elem.addEventListener) {
                elem.addEventListener (ev, func, false);
                                       }
           
            else if (elem.attachEvent) {              // For IE 8 and earlier versions
                elem.attachEvent('on' + ev, func);
                                       }       
                                                 }
         // fin fonction addEvent
    function productsReload () { 
    window.history.back;    
    }
     var riton = document.querySelector('.riton');  
     addEvent('click', productsReload, riton);
     
     </script>
     
    </body> 
     
    </html>


    Code php : 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
    <?php
    echo"0";
    $email = 'berthe.truc@wanadoo.fr';
    $wanted = $_POST['wanted']; 
    switch ($wanted) {
         case 'matcons':
              $type = $_POST['type'];
              $length = $_POST['length'];         
              $width = $_POST['width'];
              $epaisseur = $_POST['epaisseur']; 
              $quantity = $_POST ['quantity']; 
              $material = $_POST['material'];
              $currency = $_POST['currency'];
              $deliveryplace = $_POST['deliveryplace'];
              $deliverydate = $_POST['deliverydate'];
              $incoterms = $_POST['incoterms'];
    $mail = $_POST ['mail'];
    $subject = 'besoin du client' . $mail . 'pour matériaux de construction';
     
    $message = 'Bonjour Mr truc, \n\n Voici ma demande :\n\nType :' . $type . '\t Longueur :' .$length . '\t Largeur :' .$width . '\t Epaisseur :' .$epaisseur . '\t Quantité :' .$quantity . '\t Matière :' .$material . '\t Devise :' .$currency . '\t Lieu de Livraison :' .$deliveryplace . '\t Date de Livraison :' .$deliverydate . "\t Incoterms :" .$incoterms ;                      
    mail($email, $subject, $message);
    break;
    }
    echo"22 voila les flics"
    ?>


    Avec ces 2 fichiers, lorsque l'on clique sur "Envoyer", une fenêtre s'ouvre et on doit choisir entre ouvrir le fichier formMatcons.php ou enregistrer ce fichier formMatcons.php ce qui n'est pas ce que je veux faire puisque je veux envoyer le formulaire par email.

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2012
    Messages
    335
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2012
    Messages : 335
    Points : 70
    Points
    70
    Par défaut Envoi d'un formulaire
    Bonjour à tous,

    J'avais mal écrit window.history.back dans la fonction productsReload. Après correction (j'ai mis () à la place du , le bouton "retour à la page produits" fonctionne.

    Il me reste encore le pb de fond "l'envoi de mon formulaire".
    Je vous joins mes codes html, php et ce qui s'affiche quand je clique sur Envoyer Nom : pb formulaire.png
Affichages : 206
Taille : 290,0 Ko

    Code HTML
    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
    <!DOCTYPE html>
    <html lang="fr">
    <head>
         <title>Besoin Client</title>               
    </head>
    <body class="global">
    <form action='formMatCons.php' method='post' class='formMatCons'>
     
          <label for="type"><span class="maj">t</span>ype </label>
                             <select name="type">
                             <option class="fers_a_beton" value="fers_a_beton" selected><span class="maj">f</span>er &agrave; b&eacute;ton</option>
    					<option class="toleondulee_toleplane" value="toleondulee_toleplane" ><span class="maj">t</span>&ocirc;le ondul&eacute;e <span class="maj">t</span>&ocirc;le plane</option>
    					<option class="profiles" value="profiles"><span class="maj">p</span>rofil&eacute;s</option>
    					<option class="treillis_soudes" value="treillis_soudes"><span class="maj">t</span>reillis soud&eacute;s</option>		     
    				     <option class="vitrages" value="vitrages"><span class="maj">v</span>itrages</option>				     
    				       </select>
         <span> <br></span>
     
         <label for="length"><span class="maj">l</span>ongueur </label>
         <input name="length"type="num" placeholder="longueur ?">
         <span> m&egrave;tres <br></span>
     
         <label for="width"><span class="maj">l</span>argeur   </label>
         <input name="width"type="num" placeholder="largeur ?">
         <span> m&egrave;tres <br></span>
     
         <label for="epaisseur"><span class="maj">&eacute;</span>paisseur </label>
         <input name="epaisseur"type="num" placeholder="épaisseur ?">
         <span> mm <br></span>
     
         <label for="quantity"><span class="maj">q</span>uantit&eacute;   </label>
         <input name="quantity"type="num" placeholder="quantité ?">
         <span> <br></span>
     
         <label for="material"><span class="maj">m</span>ati&egrave;re </label>
                             <select name="material">
         				<option class="verre" value="verre" selected><span class="maj">v</span>erre</option>
    					<option class="acier" value="acier" ><span class="maj">a</span>cier</option>
    					<option class="plastique" value="plastique"><span class="maj">p</span>lastique</option>
    					<option class="plexiglas" value="plexiglas"><span class="maj">p</span>lexiglas</option>
    					<option class="autre" value="autre"><span class="maj">a</span>utre</option>				     
    				     </select>
         <span> <br></span>
     
         <label for="currency"><span class="maj">d</span>evise   </label>
         <select name="currency">
    					<option class="euro" value="euro" selected><span class="maj">E</span>uro</option>
    					<option class="USD" value="USD"><span class="maj">U</span>SD</option>
    	</select>     
         <span> <br></span>
     
         <label for="deliveryplace"><span class="maj">l</span>ieu de livraison </label>
         <input name="deliveryplace"type="text" placeholder="lieu de livraison ?">
         <span> <br></span>
     
         <label for="deliverydate"><span class="maj">p</span>&eacute;riode de livraison   </label>
         <input name="deliverydate"type="text" placeholder="Période de livraison ?">
         <span> <br></span>  
     
         <label for="incoterms"><span class="maj">i</span>ncoterms   </label>
         <select name="incoterms">
         <option class="FOB" value="FOB" selected><span class="maj">F</span>OB</option>
    	<option class="DAP" value="DAP"><span class="maj">D</span>AP</option>
    	</select> 
         <span> <br></span>
     
         <label for="mail "><span class="maj">A</span>dresse email pour r&eacute;ponse </label>
         <input name="mail" type="email">
         <span> <br></span> 
     
     <input name="wanted" type="hidden" value="matcons">   
     <input type="submit">      
     </form>
     
    <a class = "riton" href="#"> Retourner à la page Produits</a>  
     
     <script type="text/javascript">
     
         //début fonction addEvent
            function addEvent (ev, func, elem)   {
           
            if (elem.addEventListener) {
                elem.addEventListener (ev, func, false);
                                       }
           
            else if (elem.attachEvent) {              // For IE 8 and earlier versions
                elem.attachEvent('on' + ev, func);
                                       }       
                                                 }
         // fin fonction addEvent
    function productsReload () { 
    window.history.back()    
    }
     var riton = document.querySelector('.riton');  
     addEvent('click', productsReload, riton);
     
     </script>
     
    </body> 
     
    </html>



    Ci-après le code php :

    Code php : 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
    <?php
    echo"0";
    $email = 'truc.foup@wanadoo.fr';
    $wanted = $_POST['wanted']; 
    switch ($wanted) {
         case 'matcons':
              $type = $_POST['type'];
              $length = $_POST['length'];         
              $width = $_POST['width'];
              $epaisseur = $_POST['epaisseur']; 
              $quantity = $_POST ['quantity']; 
              $material = $_POST['material'];
              $currency = $_POST['currency'];
              $deliveryplace = $_POST['deliveryplace'];
              $deliverydate = $_POST['deliverydate'];
              $incoterms = $_POST['incoterms'];
    $mail = $_POST ['mail'];
    $subject = 'besoin du client' . $mail . 'pour matériaux de construction';
     
    $message = 'Bonjour Mr tucer, \n\n Voici ma demande :\n\nType :' . $type . '\t Longueur :' .$length . '\t Largeur :' .$width . '\t Epaisseur :' .$epaisseur . '\t Quantité :' .$quantity . '\t Matière :' .$material . '\t Devise :' .$currency . '\t Lieu de Livraison :' .$deliveryplace . '\t Date de Livraison :' .$deliverydate . "\t Incoterms :" .$incoterms ;                      
    mail($email, $subject, $message);
    break;
    }
    echo"22 voila les flics"
    ?>


    Avez-vous d'autres idées, que dois-je encore améliorer, quelles erreurs y-a-t-il encore ?

  8. #8
    Membre à l'essai Avatar de VertoDebru
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2020
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Octobre 2020
    Messages : 15
    Points : 21
    Points
    21
    Par défaut
    1. Si ton fichier PHP se télécharge c'est peut-être parce que ton serveur PHP n'est pas activé...

    2. J'arrive pas à comprendre pourquoi tu utilises un switch ?
    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
    <?php
    echo"0";
    $email = 'truc.foup@wanadoo.fr';
    $wanted = $_POST['wanted']; 
    switch ($wanted) {
         case 'matcons':
              $type = $_POST['type'];
              $length = $_POST['length'];         
              $width = $_POST['width'];
              $epaisseur = $_POST['epaisseur']; 
              $quantity = $_POST ['quantity']; 
              $material = $_POST['material'];
              $currency = $_POST['currency'];
              $deliveryplace = $_POST['deliveryplace'];
              $deliverydate = $_POST['deliverydate'];
              $incoterms = $_POST['incoterms'];
    $mail = $_POST ['mail'];
    $subject = 'besoin du client' . $mail . 'pour matériaux de construction';
     
    $message = 'Bonjour Mr tucer, \n\n Voici ma demande :\n\nType :' . $type . '\t Longueur :' .$length . '\t Largeur :' .$width . '\t Epaisseur :' .$epaisseur . '\t Quantité :' .$quantity . '\t Matière :' .$material . '\t Devise :' .$currency . '\t Lieu de Livraison :' .$deliveryplace . '\t Date de Livraison :' .$deliverydate . "\t Incoterms :" .$incoterms ;                      
    mail($email, $subject, $message);
    break;
    }
    echo"22 voila les flics"
    ?>
    3. Ton code HTML pique les yeux quand même ...
    Les SPAN pour mettre les majuscules autant le faire directement dans ton code.
    Exemple :
    Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <label for="type"><span class="maj">t</span>ype </label>
     
    // Essaye comme ca c'est plus clair
    <label for="type">Type</label>
    Surtout que je vois aucun CSS lié à ton fichier HTML.

  9. #9
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2012
    Messages
    335
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2012
    Messages : 335
    Points : 70
    Points
    70
    Par défaut Envoi de Formulaire
    Bonjour,

    Merci pour cette réponse.

    1 Serveur PHP non activé : d'accord il se peut que mon serveur PHP ne soit pas activé mais comment le vérifier ? Je vais regarder de mon coté en attendant.

    2 Utilisation d'un switch : j'utilise un switch avec comme variable $wanted pour pouvoir ensuite mettre des cas différents. En fait, mon $wanted a pour but de dire au fichier PHP quels sont les variables envoyées par le formulaire.
    Pour l'instant, vu que je ne suis qu'au début de mon code il est normal qu'il n'y ait qu'un seul cas.
    Mais j'ai l'intention d'en ajouter d'autres...

    3 Majuscules : oui, je suis d'accord. Seulement, j'avais prévu de l'écrire en CSS après. Je sais que je l'ai oublié . Merci de me l'avoir rappelé, mais il me semblait que le problème PHP était plus important.
    Je vais quand même le ré-écrire.

  10. #10
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2012
    Messages
    335
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2012
    Messages : 335
    Points : 70
    Points
    70
    Par défaut
    J'ai cotinué depuis tout à l'heure

    Voici mes nouveaux fichiers :

    Code PHP : 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
    <?php
    echo"0";
    $email = 'truc.foup@wanadoo.fr';
    $wanted = $_POST['wanted']; 
    switch ($wanted) {
         case 'matcons':
              $type = $_POST['type'];
              $length = $_POST['length'];         
              $width = $_POST['width'];
              $epaisseur = $_POST['epaisseur']; 
              $quantity = $_POST ['quantity']; 
              $material = $_POST['material'];
              $currency = $_POST['currency'];
              $deliveryplace = $_POST['deliveryplace'];
              $deliverydate = $_POST['deliverydate'];
              $incoterms = $_POST['incoterms'];
    $mail = $_POST ['mail'];
    $subject = 'besoin du client' . $mail . 'pour matériaux de construction';
     
    $message = 'Bonjour Mr tucer, \n\n Voici ma demande :\n\nType :' . $type . '\t Longueur :' .$length . '\t Largeur :' .$width . '\t Epaisseur :' .$epaisseur . '\t Quantité :' .$quantity . '\t Matière :' .$material . '\t Devise :' .$currency . '\t Lieu de Livraison :' .$deliveryplace . '\t Date de Livraison :' .$deliverydate . "\t Incoterms :" .$incoterms ;                      
    mail($email, $subject, $message);
    break;
    }
    echo"22 voila les flics"
    ?>


    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
    <!DOCTYPE html>
    <html lang="fr">
    <head>
         <title>Besoin Client</title>               
    </head>
    <body class="global">
    <form action='formMatCons.php' method='post' class='formMatCons'>
     
          <label for="type"><span class="maj">t</span>ype </label>
                             <select name="type">
                             <option class="fers_a_beton" value="fers_a_beton" selected><span class="maj">f</span>er &agrave; b&eacute;ton</option>
    					<option class="toleondulee_toleplane" value="toleondulee_toleplane" ><span class="maj">t</span>&ocirc;le ondul&eacute;e <span class="maj">t</span>&ocirc;le plane</option>
    					<option class="profiles" value="profiles"><span class="maj">p</span>rofil&eacute;s</option>
    					<option class="treillis_soudes" value="treillis_soudes"><span class="maj">t</span>reillis soud&eacute;s</option>		     
    				     <option class="vitrages" value="vitrages"><span class="maj">v</span>itrages</option>				     
    				       </select>
         <span> <br></span>
     
         <label for="length"><span class="maj">l</span>ongueur </label>
         <input name="length"type="num" placeholder="longueur ?">
         <span> m&egrave;tres <br></span>
     
         <label for="width"><span class="maj">l</span>argeur   </label>
         <input name="width"type="num" placeholder="largeur ?">
         <span> m&egrave;tres <br></span>
     
         <label for="epaisseur"><span class="maj">&eacute;</span>paisseur </label>
         <input name="epaisseur"type="num" placeholder="épaisseur ?">
         <span> mm <br></span>
     
         <label for="quantity"><span class="maj">q</span>uantit&eacute;   </label>
         <input name="quantity"type="num" placeholder="quantité ?">
         <span> <br></span>
     
         <label for="material"><span class="maj">m</span>ati&egrave;re </label>
                             <select name="material">
         				<option class="verre" value="verre" selected><span class="maj">v</span>erre</option>
    					<option class="acier" value="acier" ><span class="maj">a</span>cier</option>
    					<option class="plastique" value="plastique"><span class="maj">p</span>lastique</option>
    					<option class="plexiglas" value="plexiglas"><span class="maj">p</span>lexiglas</option>
    					<option class="autre" value="autre"><span class="maj">a</span>utre</option>				     
    				     </select>
         <span> <br></span>
     
         <label for="currency"><span class="maj">d</span>evise   </label>
         <select name="currency">
    					<option class="euro" value="euro" selected><span class="maj">E</span>uro</option>
    					<option class="USD" value="USD"><span class="maj">U</span>SD</option>
    	</select>     
         <span> <br></span>
     
         <label for="deliveryplace"><span class="maj">l</span>ieu de livraison </label>
         <input name="deliveryplace"type="text" placeholder="lieu de livraison ?">
         <span> <br></span>
     
         <label for="deliverydate"><span class="maj">p</span>&eacute;riode de livraison   </label>
         <input name="deliverydate"type="text" placeholder="Période de livraison ?">
         <span> <br></span>  
     
         <label for="incoterms"><span class="maj">i</span>ncoterms   </label>
         <select name="incoterms">
         <option class="FOB" value="FOB" selected><span class="maj">F</span>OB</option>
    	<option class="DAP" value="DAP"><span class="maj">D</span>AP</option>
    	</select> 
         <span> <br></span>
     
         <label for="mail "><span class="maj">A</span>dresse email pour r&eacute;ponse </label>
         <input name="mail" type="email">
         <span> <br></span> 
     
     <input name="wanted" type="hidden" value="matcons">   
     <input type="submit">      
     </form>
     
    <a class = "riton" href="#"> Retourner à la page Produits</a>  
     
     <script type="text/javascript">
     
         //début fonction addEvent
            function addEvent (ev, func, elem)   {
           
            if (elem.addEventListener) {
                elem.addEventListener (ev, func, false);
                                       }
           
            else if (elem.attachEvent) {              // For IE 8 and earlier versions
                elem.attachEvent('on' + ev, func);
                                       }       
                                                 }
         // fin fonction addEvent
    function productsReload () { 
    window.history.back()    
    }
     var riton = document.querySelector('.riton');  
     addEvent('click', productsReload, riton);
     
     </script>
          <link rel="stylesheet" href="../css/formMatCons.css" />
    </body> 
     
    </html>

    Code css : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    body {
              display: flex;  /* crée un contexte flex pour ses enfants*/
    }
     
    .maj {
              text-transform: uppercase;
    }
    form {
              border-width: 100px;
              border-radius: 1px;
              border-color: black;
              margin: auto;
    }

    Avec ces codes, le formulaire est bien centré verticalement et horizontalement. Mais les bordures me posent un pb ; meme en mettant 100px, il ne se passe rien.

    Il me reste à regarder comment activer le PHP ; je sens que je vais m'arracher les cheveux.

  11. #11
    Membre à l'essai Avatar de VertoDebru
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2020
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Octobre 2020
    Messages : 15
    Points : 21
    Points
    21
    Par défaut
    Essaye ca pour ta bordure

    Code css : Sélectionner tout - Visualiser dans une fenêtre à part
    border: 1px solid #000;

  12. #12
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2012
    Messages
    335
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2012
    Messages : 335
    Points : 70
    Points
    70
    Par défaut
    Bonjour à tous,

    1 Activation du serveur PHP.
    Rassurez-vus ; il me reste encore des cheveux...
    C'était bien un problème d'activation .

    Je vais revoir mon petit souci de bordure en parallèle.

    Merci Beaucoup

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [IIS - TOMCAT][Struts] Problème de formulaire
    Par tscoops dans le forum Tomcat et TomEE
    Réponses: 2
    Dernier message: 01/02/2005, 14h04
  2. Réponses: 7
    Dernier message: 19/10/2004, 16h12
  3. [STRUTS] problème de formulaire
    Par ultimax dans le forum Struts 1
    Réponses: 5
    Dernier message: 09/07/2004, 15h55
  4. [Struts] Problème de formulaire(s) ...
    Par djoukit dans le forum Struts 1
    Réponses: 8
    Dernier message: 10/03/2004, 23h48
  5. Réponses: 12
    Dernier message: 24/09/2003, 15h26

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