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énom: $prenom
\n";
$msg .= "Nom: $nom
\n";
$msg .= "Télé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 été envoyé</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 été rempli</p>’;
}
}
echo $pour_qui;
unset($_GET[’f_p_sent’]);
?>