Formulaire PHP

Fermé
tophe 8181 - 27 nov. 2006 à 11:46
 jean-michel poulin - 31 janv. 2007 à 20:55
Bonjour j'ai creer un formulaire avec php. la fontion est quil doit envoyer des balises sur mon adresse mail.
Le probleme n'est pas la , le probleme c'est que j'ai 2 listes c'est a dire quand je choisi "intervention" dans la premiere liste il m'ouvre une deuxieme liste avec plusieur choix...
Il m'envoie bien un e-mail mais avec ce que j'ai choisie dans la premiere liste et non la deuxieme ...
Pouvez vous m'aider ?

9 réponses

kij_82 Messages postés 4089 Date d'inscription jeudi 7 avril 2005 Statut Contributeur Dernière intervention 30 septembre 2013 857
27 nov. 2006 à 11:50
Met ton code que l'on regarde
0
index.php:

<html>
<head>
<title>Demande d'intervention</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="JavaScript">
function verifSelection() {if (mail_form.nom.value == "") {
alert("Veuillez indiquer votre nom")
return false
} if (mail_form.prenom.value == "") {
alert("Veuillez indiquer votre prénom")
return false
} if (mail_form.description.value == "") {
alert("Veuillez décrire le problème")
return false
} } // Fin de la fonction


function ChoixProbleme()
{
if(mail_form.elements['probleme'].options[mail_form.elements['probleme'].selectedIndex].value ==

"Interventions" )
{
document.getElementById('interv').style.visibility = 'visible';
document.getElementById('demande').style.visibility = 'hidden';

}
if(mail_form.elements['probleme'].options[mail_form.elements['probleme'].selectedIndex].value ==

"Demandes" ){
document.getElementById('interv').style.visibility = 'hidden';
document.getElementById('demande').style.visibility = 'visible';

}

}


</script>
</head>

<body bgcolor="pink">
<form name="mail_form" method="POST" action="mail-a.php" onSubmit="return verifSelection()">
<div align="center"></div>
<p align="left"><img src="moselis.gif">

<table width="566" border="0" align="center">
<p align="center">
</p><tr>
<td><font face="Verdana" size="2">Nom Demandeur</font></td>
<td><input name="nom" type="text"></td>
</tr><tr>
<td><font face="Verdana" size="2">Prénom Demandeur</font></td>
<td><input name="prenom" type="text"></td>
</tr><tr>
<td valign="top"><font face="Verdana" size="2">Problèmes</font></td>
<td><select class=styleselect tabindex=4
name="probleme" onchange="ChoixProbleme()">


<option value="choix">-- Choisissez --</option>
<option value="Interventions">Interventions</option>
<option value="Demandes">Demandes</option>

</select>
</td>
</tr><tr>
<td valign="top"></td>
<td> <div style="visibility:hidden" id="interv">
<select class=styleselect tabindex=4
name="int" >


<option value="choixint">-- Choisissez --</option>
<option value="Logiciels">Logiciels</option>
<option value="Immoware">Immoware</option>

</select></div>
<div style="visibility:hidden" id="demande">
<select class=styleselect tabindex=4
name="demande" >


<option value="choixdem">-- Choisissez --</option>
<option value="Demande divers">Demande divers</option>
<option value="Demande de fourniture">Demande de fourniture</option>
<option value="Reservation de materiels">Reservation de materiels</option>

</select></div>

</td>

</tr><tr>
<td valign="top"><font face="Verdana" size="2">Description</font></td>
<td><textarea name="description" cols="50" rows="10">
0
kij_82 Messages postés 4089 Date d'inscription jeudi 7 avril 2005 Statut Contributeur Dernière intervention 30 septembre 2013 857
27 nov. 2006 à 13:38
fais voir ton mail-a.php
0
<?php

$email_dest = "support@......fr";


$message_remerciement = "Votre demande a bien été envoyée.";

// E-mail headers:
$headers ="MIME-Version: 1.0 \n";
$headers .="From: $_POST[prenom].$_POST[nom]@opac57.fr \n";
$headers .="Content-Type: text/html; charset=iso-8859-1 \n";

$subject = "Demande d'intervention";


$msg = "<nomdemandeur>$_POST[nom]</nomdemandeur> <br>";
$msg .= "<prenomdemandeur>$_POST[prenom]</prenomdemandeur> <br>";
$msg .= "<probleme>$_POST[probleme]</probleme> <br>";
$msg .= "<precisions>$_POST[precisions]</precisions> <br>";
$msg .= "<description>$_POST[description]</description> <br>";
$msg .= "<nomlocalisation>$_POST[localisation]</nomlocalisation> <br>";


// Send the e-mail
if (@!mail($email_dest,$subject,$msg,$headers)) {

echo "<HTML><HEAD>";
echo "<TITLE>Demande d'intervention envoyée!</TITLE></HEAD><BODY bgcolor=#d14b7a>";
echo "<br><br><br><br><br><P align=center><b>";
echo "Attention. Votre demande d'intervention n'a pas été envoyée.</P>";
echo "</BODY></HTML>";
}
else {

echo "<HTML><HEAD>";
echo "<TITLE>Demande d'intervention envoyée!</TITLE></HEAD><BODY bgcolor=#d14b7a>";
echo "<br><br><br><br><br><P align=center><b>";
echo "Votre demande d'intervention a été envoyée avec succès.</P>";
echo "</BODY></HTML>";

}// Closing if !mail...


?>
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
kij_82 Messages postés 4089 Date d'inscription jeudi 7 avril 2005 Statut Contributeur Dernière intervention 30 septembre 2013 857
27 nov. 2006 à 14:01
C'est normal que ca marche pas, tu as les deux listes suivantes :
 <select class=styleselect tabindex=4
name="int" >

<select class=styleselect tabindex=4
name="demande" > 


Mais a aucun moment dans ton mail-a.php tu ne récupère ni utilise $_POST["demande"] ou $_POST["int"] donc ca ne risque pas de l'afficher dans ton mail ;)
0
Peus tu me dire d'apres mon code comment faire ?
Merci beaucoup
0
kij_82 Messages postés 4089 Date d'inscription jeudi 7 avril 2005 Statut Contributeur Dernière intervention 30 septembre 2013 857
27 nov. 2006 à 14:22
En ajoutant ceci j'imagine (pas sur que ca fonctione)
$msg .= "&ltint>$_POST[int]</int> <br>";
$msg .= "&ltdemande>$_POST[demande]</demande> <br>"; 

0
Désole mais ca ne marche pas ...
il faut que cela fasse parti de la balise probleme ou en tous cas que ca s'integre a la balise probleme.
parce que pour l'instant l'e-mail est envoyé a un logiciel qui traite les balise et les envoie dans une base.
Le probleme est qu'il ne reconnai pas les balise int et demande.
Il reconnais la balise probleme .......
comment faire ?
0
kij_82 Messages postés 4089 Date d'inscription jeudi 7 avril 2005 Statut Contributeur Dernière intervention 30 septembre 2013 857
27 nov. 2006 à 15:25
Et bien intègre le comme tu le dis :

Au lieux de :
$msg .= "&ltprobleme>$_POST[probleme]</probleme> <br>"; 


tu met :
$msg .= "&ltprobleme>$_POST[probleme] $_POST[int] $_POST[demande]</probleme> <br>"; 


0
Merci pour tout mais ca ne marche tjrs pas .
dans la balise que je recois par mail il me met ca :

<nomdemandeur>tata</nomdemandeur>
<prenomdemandeur>toto</prenomdemandeur>
<probleme>Interventions< Logiciels< choixdem</probleme>
<precisions>ezf</precisions>
<description>dfz</description>
<nomlocalisation>siege</nomlocalisation>

et aparement il ne reconnait pas , ou entous cas il ne me fais pas le chemin de l'arborescence...<probleme>Interventions< Logiciels< choixdem</probleme>

si tu peus garder ce probleme sous le coude , je vais chercher des information technique et je reviendrai vers toi demain

Merci
0
kij_82 Messages postés 4089 Date d'inscription jeudi 7 avril 2005 Statut Contributeur Dernière intervention 30 septembre 2013 857
27 nov. 2006 à 16:29
Et ben, ca marche !

Dans :
<probleme>Interventions< Logiciels< choixdem</probleme> 

Tu as bien les résultats de tes deux listes cachées qui sont : choixdem et Logiciels, donc ca marche, je vois pas ou ca marche pas.
Tu m'as dit que tu le voulais dans la balise "probleme" donc c'est le cas.

Dis nous plus clairement ce que tu souhaites et ca ira plus vite ;)
0
jean-michel poulin
31 janv. 2007 à 20:55
bonjour,

je suis intéressé par ton script est t'il fonctionnel car je recherche a faire un envoie avec des balise du meme type pour de la gestion de parc au travers d'un help mail. peux tu m'envouyer une copie de ton script.
merci.


tel que
$msg = "<nomdemandeur>$_POST[nom]</nomdemandeur> <br>";
$msg .= "<prenomdemandeur>$_POST[prenom]</prenomdemandeur> <br>";
$msg .= "<probleme>$interv$dem</probleme> <br>";
$msg .= "<precisions>$_POST[precisions]</precisions> <br>";
$msg .= "<description>$_POST[description]</description> <br>";
$msg .= "<nomlocalisation>$loc</nomlocalisation> <br>";
0