We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 23360
    • 258 Posts
    Salut a tous,
    Je travaille sur un truc de fou!!!!
    J’ai créé un formulaire en PHP, Ce formulaire marche très très bien sur une page indépendant mapage.php, par exemple
    J’ai mis ce code dans un snippest (le code PHP qui va controler et envoyer le formulaire) et chunck(le formulaire)

    Ce code recupere la valeur d’un variable d’un URL
    if(isset($_GET[’f_p_sent’])){$sent=$_GET[’f_p_sent’];}else{ $sent="0";}
    En gros dans ma form, j’ai un champs caché "f_p_sent". Si cette variable est a 1, le code PHP qui va faire le controle et envoyé les données avec la fonction mail(), va etre executé, si non il n’est pas excuté.

    Le truc de fou c’est que c’est variable garde sa valeur, meme quand je ferme mon browser!!!!

    par exemple quand je suis sur ma page:
    http://www.crac-fonti.ch/modx/index.php?id=5

    1. ma variable $_GET[’sent’] est egal à 0
    2. quand je clique sur "envoyé" de mon formulaire, cette variable est toujours de 0, mais pourtant dans mon URL je voit bien : http://www.crac-fonti.ch/modx/index.php?id=5&f_p_sent=1

    Ensuite, j’ai meme fermé mon browser, redémarré mon ordi, puis je suis retourné sur ma page
    http://www.crac-fonti.ch/modx/index.php?id=5
    et le truc de fou c’est que ma variable $_GET[’sent’] me retourne 1 !!!!!!!!!.

    mais comment es-ce possible si j’ai pas cette variable "&f_p_sent=1" dans mon URL???????

    C’est allucinant, pourtant mon code PHP fonctionne tres bien dans une page externe: mapage.php

    Avez-vous une idée?

    Pour résumé voici mon code:
    Dans une variable de modele, j’ai ceci

    {{crac_pieces}}


    CHUNCK:
    {{crac_pieces}}

    [[check_form]]
    <form action="" method="get" id="form_piece">
    <input name="id" type="hidden" id="id" value="5" />
    <input name="f_p_sent" type="hidden" id="f_p_sent" value="1" />
    <input name="f_p_marques" type="text" id="f_p_marques" value="Marque" onFocus="this.value=’’" /> <span class="red">*</span>

    <input name="f_p_modele" type="text" id="f_p_modele" value="Modèle" onFocus="this.value=’’" />
    <span class="red">*</span>

    <input name="f_p_chassis" type="text" id="f_p_chassis" value="Chassis" onFocus="this.value=’’" />

    <input name="f_p_homologation" type="text" id="f_p_homologation" value="No homologation" onFocus="this.value=’’" />

    <input name="f_p_identification" type="text" id="f_p_identification" value="No d’identification" onFocus="this.value=’’" />

    <select name="f_p_type" id="f_p_type">
    <option value="" selected>Type de véhicule</option>
    <option value="Americaines">Américaines</option>
    <option value="Europennes">Européennes</option>
    <option value="Japonaises">Japonaises</option>
    <option value="Monospaces">Monospaces</option>
    <option value="Motos">Motos</option>
    <option value="4x4">4x4</option>
    </select> <span class="red">*</span>

    <input name="f_p_nom" type="text" id="f_p_nom" value="Votre nom" onFocus="this.value=’’" /> <span class="red">*</span>


    <input name="f_p_prenom" type="text" id="f_p_prenom" value="Votre prénom" onFocus="this.value=’’" />


    <input name="f_p_email" type="text" id="f_p_email" value="Votre e-mail" onFocus="this.value=’’" />


    <input name="f_p_tel" type="text" id="f_p_tel" value="Votre No de tél." onFocus="this.value=’’" />
    <span class="red">*</span>


    <textarea name="f_p_commentaires" id="f_p_commentaires" onFocus="this.value=’’">Vos commentaires</textarea>

    <br >
    <input type="submit" name="Submit" value="Envoyer la requette" style="width:150px;" onClick="this.value=’Patientez...’;" />


    </form>

    SNIPPEST:
    [[check_form]]

    <?php
    if(isset($_GET[’f_p_sent’])){$sent=$_GET[’f_p_sent’];}else{ $sent="0";}
    echo $sent;
    echo $_GET[f_p_sent];
    if($sent){
    (isset($_GET[’f_p_marques’])) ? $marques=$_GET[’f_p_marques’] : $marques="";
    (isset($_GET[’f_p_modele’])) ? $modele=$_GET[’f_p_modele’] : $modele="";
    (isset($_GET[’f_p_chassis’])) ? $chassis=$_GET[’f_p_chassis’] : $chassis="";
    (isset($_GET[’f_p_homologation’])) ? $homologation=$_GET[’f_p_homologation’] : $homologation="";
    (isset($_GET[’f_p_identification’])) ? $identification=$_GET[’f_p_identification’] : $identification="";
    (isset($_GET[’f_p_type’])) ? $type=$_GET[’f_p_type’] : $type="";
    (isset($_GET[’f_p_nom’])) ? $nom=$_GET[’f_p_nom’] : $nom="";
    (isset($_GET[’f_p_prenom’])) ? $prenom=$_GET[’f_p_prenom’] : $prenom="";
    (isset($_GET[’f_p_email’])) ? $email=$_GET[’f_p_email’] :$email="";
    (isset($_GET[’f_p_tel’])) ? $tel=$_GET[’f_p_tel’] : $tel="";
    (isset($_GET[’f_p_commentaires’])) ? $commentaires=$_GET[’f_p_commentaires’] :$commentaires="";

    if($marques=="Marque") $marques="";
    if($modele=="Modèle") $modele="";
    if($chassis=="Chassis") $chassis="";
    if($homologation=="No homologation") $homologation="";
    if($identification=="No d\’identification") $identification="";
    if($prenom=="Votre prénom") $prenom="";
    if($nom=="Votre nom") $nom="";
    if($email=="Votre e-mail") $email="";
    if($tel=="Votre No de tél.") $tel="";
    if($commentaires=="Vos commentaires") $commentaires="";

    echo $marques.’
    ’;
    echo $modele.’
    ’;
    echo $chassis.’
    ’;
    echo $homologation.’
    ’;
    echo $identification.’
    ’;
    echo $type.’
    ’;
    echo $prenom.’
    ’;
    echo $nom.’
    ’;
    echo $email.’
    ’;
    echo $tel.’
    ’;
    echo $commentaires.’
    ’;

    #($type=="Europennes" OR $type=="Americaines") ? $pour_qui = "[email protected]" : $pour_qui="[email protected]";
    ($type=="Europennes" OR $type=="Americaines") ? $pour_qui = "[email protected]" : $pour_qui="[email protected]";


    if (($nom!="") && ($marques!="") && ($modele!="") && ($type!="") && ($tel!=""))
    {
    #Si tous les champs sont rempli, controle si l’adresse e-mail est valide
    if(!ereg("^(.+)@(.+)\\.(.+)$",trim($email))){
    $continue=false;
    }else{
    $continue=true;
    }
    #Si l’email adresses est valide continue et envoie le fomulaire
    if($continue==true){
    // composition du message
    $Destinataire = $pour_qui;
    $Sujet = "Une nouvelle demande de pieces ".$type." ";
    $From = "From: $email\n";
    $From .= "MIME-version: 1.0\n";
    $From .= "Content-type: text/html; charset= iso-8859-1\n";
    $msg ="<b>Une nouvelle demande de pieces :</b>

    \n";
    $msg .= "<b>DE :</b>
    \n";
    $msg .= "Pr&eacute;nom: $prenom
    \n";
    $msg .= "Nom: $nom
    \n";
    $msg .= "T&eacute;l&eacute;phone: $tel
    \n";
    $msg .= "E-mail: $email

    \n";

    $msg .= "Type: $type
    \n";
    $msg .= "Marque: $marques
    \n";
    $msg .= "Modele: $modele
    \n";
    $msg .= "Chassis: $chassis

    \n";
    $msg .= "No Homologation: $homologation
    \n";
    $msg .= "No Identification: $identification

    \n";
    $msg .= "<b>Commentaires:</b>
    $commentaires

    \n";

    // fonction d’envoi du message
    mail($Destinataire,$Sujet,$msg,$From);
    #Apres l’envoi du message, redirige l’internaute cers une page de confirmation

    echo ’<p>Votre message a bien &eacute;t&eacute; envoy&eacute;</p>’;
    }else{

    #Si l’adresse email n’est pas valid, renvoi l’internaute vers une page de message d’erreur indiquand que l’adresses email n’est pas valide
    echo ’<p>Le format de votre e-mail n\’est pas valide</p>’;
    }
    }else{
    #Si un champs est vide renvoi, l’internaute vers une page d’erreur indiquand qu’un champ est vide
    echo ’<p>Un champs obligatoire (*) n\’a pas &eacute;t&eacute; rempli</p>’;
    }
    }
    echo $pour_qui;
    unset($_GET[’f_p_sent’]);
    ?>


      • 23360
      • 258 Posts
      J’ai meme essayé de tout passé en $_POST, mais ca rien changé
        • 23050
        • 1,842 Posts
        Salut Pierrot,

        Vais pas être très utile sur ce coup car je ne connais pas le PHP... mais, as-tu essayé d’appeler ton snippet non caché [! ... !] ? As-tu essayé de ne pas mettre la page en cache ?

        Sinon, pourquoi ne pas reprendre eForm ?
          • 23360
          • 258 Posts
          Merci pierrine pour ta reponse wink,
          ma page st en cache, mais qu’entends tu par un snippest non caché?
            • 23050
            • 1,842 Posts
            C’est à dire qu’au lieu de l’appeler [[check_form]] tu l’appelles comme ça [!check_form!]

            C’est indispensable quand tu passes des variables dans l’url (enfin me semble !) smiley
              • 23360
              • 258 Posts
              Oula, je crois que tu es ma sauveuse!!!!!!!
              Ca l’ai de bien fonctionné depuis ce chagement ouh!!!!!!!!!
              Je fais des teste et te confirme

              MERCIIIIIII
                • 23050
                • 1,842 Posts
                Ben de rien, j’espère que c’est ça ! wink