Probleme fonction mail

Fermé
drogba7213 Messages postés 1524 Date d'inscription mardi 14 août 2007 Statut Membre Dernière intervention 3 avril 2010 - 17 mai 2008 à 19:40
drogba7213 Messages postés 1524 Date d'inscription mardi 14 août 2007 Statut Membre Dernière intervention 3 avril 2010 - 19 mai 2008 à 15:02
Bonjour,

Je viens de faire un formulaire et je rencontre deux difficultés

la première :

<br>
<input name="femme" id="femme" type="checkbox">
<label for="femme">femme</label><br>
<input name="homme" id="homme" type="checkbox">
<label for="homme">homme</label></p>

et voila ce que je fais pour que ca le renvoie pr mail :

switch ($i) {
case "femme":
$msg .="La personne ayant répondu à ce questionnaire est une femme\n";
break;
case "homme":
$msg .="La personne ayant répondu à ce questionnaire est un homme\n";
break;

La deuxième c'est a partir d'une liste déroulante :

<select name="Note" id="Note">
<option value="Note0">0</option>
<option value="Note1">1</option>
<option value="Note2">2</option>
<option value="Note3">3</option>
<option value="Note4">4</option>
<option value="Note5">5</option>
<option value="Note6">6</option>
<option value="Note7">7</option>
<option value="Note8">8</option>
<option value="Note9">9</option>
<option value="Note10">10</option>
</select>

et la par contre je ne vois pas du tout ce que je doit faire pour renvoyer par mail pouvez vous m'aider svp?

Merci d'avance
A voir également:

20 réponses

Mimiste Messages postés 1149 Date d'inscription samedi 17 mai 2008 Statut Membre Dernière intervention 6 mars 2016 206
17 mai 2008 à 19:56
Salut

J'ai pas saisie ou était le problème justement dans ton premier "problème"

Pour le second je pense que tu veux savoir la note, dans ce cas dans le "value" au lieu de mettre "Note0" tu met juste 0 par exemple et tu le recup normalement si tu le passe en POST :

$note = $_POST['Note'];
$msg .= "La note est " . $Note;
0
drogba7213 Messages postés 1524 Date d'inscription mardi 14 août 2007 Statut Membre Dernière intervention 3 avril 2010 21
17 mai 2008 à 20:01
Bah oui j'ai pas pensé a ca juis bete!!!

Par contre pour le premier problème qu'est ce que tu ne saisi pas je te dirais
0
drogba7213 Messages postés 1524 Date d'inscription mardi 14 août 2007 Statut Membre Dernière intervention 3 avril 2010 21
17 mai 2008 à 20:20
juste pour te tenir au courant ta solution

$note = $_POST['Note'];
$msg .= "La note est " . $Note;

ca ne fonctionne pas c'est bizarre
0
Mimiste Messages postés 1149 Date d'inscription samedi 17 mai 2008 Statut Membre Dernière intervention 6 mars 2016 206
17 mai 2008 à 20:30
J'ai pas mis de majuscule au premier $note, j'ai pas fais attention

Ben ton premier problème en fait il ce passe quoi, ça ne marche pas ? y a rien dans $msg ?
0

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

Posez votre question
drogba7213 Messages postés 1524 Date d'inscription mardi 14 août 2007 Statut Membre Dernière intervention 3 avril 2010 21
17 mai 2008 à 20:37
rectification ta solution fonctionne très bien pardon

Pour la première rien ne s'affiche dans mon mail en fait mais ca se passe que quand c'est des input en fait et je ne sais pas de quoi ca vient
0
Mimiste Messages postés 1149 Date d'inscription samedi 17 mai 2008 Statut Membre Dernière intervention 6 mars 2016 206
17 mai 2008 à 20:47
Dans ta variable $i tu est sur qu'il y a bien "Femme" ou "Homme" ? Vérifie avec des "echo"
Idem pour la variable $msg, vérifie la avant l'envoi

0
drogba7213 Messages postés 1524 Date d'inscription mardi 14 août 2007 Statut Membre Dernière intervention 3 avril 2010 21
17 mai 2008 à 21:21
Je ne sais pas je suis étudiant en première année d'info donc je ne suis sur de rien lol

Que me proposerait tu par rapport a mon code html?
0
Mimiste Messages postés 1149 Date d'inscription samedi 17 mai 2008 Statut Membre Dernière intervention 6 mars 2016 206
17 mai 2008 à 21:39
ben en fait, je pense que le mieu serai d'utiliser un bouton radio et pas checkbox, puisque quelqu'un peut etre soit femme soit homme mais pas les deux. sa donnerai quelque chose du genre

HTML

<input type=radio name=genre value=homme>
<input type=radio name=genre value=femme>

PHP

$genre = $_POST['genre'];

switch ($genre)
{
case "homme" : $msg .= "Un homme"; break;
case "femme" : $msg .= "Une femme"; break;
}

0
drogba7213 Messages postés 1524 Date d'inscription mardi 14 août 2007 Statut Membre Dernière intervention 3 avril 2010 21
17 mai 2008 à 21:50
petite question futile mais j'ai trop de mal

$msg .= "La note pour l'assistance à domicile est " . $Note \n;

Ca bloque pourquoi svp
0
Mimiste Messages postés 1149 Date d'inscription samedi 17 mai 2008 Statut Membre Dernière intervention 6 mars 2016 206
17 mai 2008 à 22:11
ton \n doit etre entre guillement ", il fais partit de la chaine

$msg .= "La note pour l'assistance à domicile est " . $Note ."\n";
0
drogba7213 Messages postés 1524 Date d'inscription mardi 14 août 2007 Statut Membre Dernière intervention 3 avril 2010 21
18 mai 2008 à 00:17
Voila j'ai régler tout mes problèmes hors mis le fait de forcer les gens à remplir quelques champs pourrait tu me donner un exemple stp merci en tout cas
0
Mimiste Messages postés 1149 Date d'inscription samedi 17 mai 2008 Statut Membre Dernière intervention 6 mars 2016 206
18 mai 2008 à 01:57
pour vérifier si un champ est rempli ou pas tu teste la variable avec la fonction isset par exemple :

if (isset($_POST['Champ']))
{
//Le champ est rempli tu peu envoyer le mail
}
else
{
//Le champ n'est pas rempli, retour au formulaire avec un message d'erreur par exemple...
}
0
drogba7213 Messages postés 1524 Date d'inscription mardi 14 août 2007 Statut Membre Dernière intervention 3 avril 2010 21
18 mai 2008 à 20:21
et ca je le met dans la partie html ou dans la page de réponse en php?
0
Mimiste Messages postés 1149 Date d'inscription samedi 17 mai 2008 Statut Membre Dernière intervention 6 mars 2016 206
18 mai 2008 à 20:48
ça c'est du code php, donc dans ta page de réponse oui
0
drogba7213 Messages postés 1524 Date d'inscription mardi 14 août 2007 Statut Membre Dernière intervention 3 avril 2010 21
18 mai 2008 à 21:25
Ok j'ai un autre petit soucis c'est que mon formulaire répond très bien sous IE mais pas sous firefox aurais tu une idée pourquoi? stp
0
drogba7213 Messages postés 1524 Date d'inscription mardi 14 août 2007 Statut Membre Dernière intervention 3 avril 2010 21
18 mai 2008 à 21:28
Et par exemlpe pour la sécurité des champs peux tu me donner un exemple stp car je lutte

ce serais avec ce code j'adapterais pour le reste

<input maxlength="15" size="15" name="age">
0
Mimiste Messages postés 1149 Date d'inscription samedi 17 mai 2008 Statut Membre Dernière intervention 6 mars 2016 206
18 mai 2008 à 22:50
Pour les différences d'interprétation entre firefox et IE sa peut venir de pas mal de choses comme par exemple le fait de ne pas coder dans les normes W3C, en general en respectant cette norme ton site est sensé être identique sur tous les navigateurs mais c'est parfois un peu contraignant. Pour ton site la je peu pas vraiment dire sans voir le formulaire mais ce qui cloche c'est le HTML ou le CSS si tu en a.

Pour la sécurité des champs avec ton exemple ça donnerai un truc comme ça :

if (isset($_POST['age']))
{
//Le champ est rempli tu peu envoyer le mail
}
else
{
echo "<div align=center>Il faut remplir tous les champs du formulaire<br><br><a href='javascript:history.back();'>Retour</a></div>";
}
0
drogba7213 Messages postés 1524 Date d'inscription mardi 14 août 2007 Statut Membre Dernière intervention 3 avril 2010 21
18 mai 2008 à 22:52
tiens voici mon php

<?php $dest_mail = 'rsr.pcworld@gmail.com'; # Destinataire du mail
$sujet = "Réponse au questionnaire RSR-pc-world-agence informatique";
echo "<p>Votre réponse à ce questionnaire a bien été prise en compte. Nous vous remercions de votre participation. Aucune information relative à ce questionnaire ne sera divulguée.</p>";

$msg .= "Une réponse au questionnaire a été faites\n\n";
$genre = $_POST['genre'];
$msg .="La personne ayant répondu à ce questionnaire est 1" . $genre . "\n";
$msg .=" Son age : ($_POST[age]) \n" ;
$msg .=" Son adresse mail est : ($_POST[mail]) \n" ;
$msg .=" Sa région est : ($_POST[region]) \n" ;
$msg .=" Sa ville est : ($_POST[ville]) \n" ;
$provenance = $_POST['provenance'];
$msg .=" Son ordinateur provient dune " . $provenance . "\n" ;
$type = $_POST['type'];
$msg .=" Elle possède un ordinateur de " . $type . "\n" ;
$operateur = $_POST['operateur'];
$msg .=" Elle est chez " . $operateur . "\n" ;
$msg .=" Si elle vient de cocher autres alors cest chez : ($_POST[Autres2]) \n" ;
$niveau = $_POST['niveau'];
$msg .=" La personne se considère comme " . $niveau . "\n" ;
$note = $_POST['Note'];
$msg .= "La note pour l'assistance à domicile est " . $Note ."\n";
$note1 = $_POST['Note1'];
$msg .= "La note pour les formations à domicile est " . $Note1 ."\n";
$note2 = $_POST['Note2'];
$msg .= "La note pour les installations de matérielle soi meme est " . $Note2 . "\n";
$note3 = $_POST['Note3'];
$msg .= "La note pour les achats sur le net est " . $Note3 . "\n";
$note5 = $_POST['Note5'];
$msg .= "La note pour les formations des enfants est " . $Note4 . "\n";
$note6 = $_POST['Note6'];
$msg .= "La note pour les créations de site est " . $Note5 . "\n";
if (mail($dest_mail, $sujet, $msg)) {
echo "Mail envoyé";
} else {
echo "Echec envoi mail";
}
?>
0
drogba7213 Messages postés 1524 Date d'inscription mardi 14 août 2007 Statut Membre Dernière intervention 3 avril 2010 21
18 mai 2008 à 22:54
Je n'ai pas de css et donc tu mettrait pour la sécurité le code avant ou après celui que je t'ai passé?
0
Mimiste Messages postés 1149 Date d'inscription samedi 17 mai 2008 Statut Membre Dernière intervention 6 mars 2016 206
18 mai 2008 à 23:00
<?PHP
if (isset($_POST['age']) && isset($_POST['mail']) && isset($_POST['region']) && isset($_POST['ville']))
{
// Les champs sont rempli donc on envoi le mail
$dest_mail = 'rsr.pcworld@gmail.com'; # Destinataire du mail
$sujet = "Réponse au questionnaire RSR-pc-world-agence informatique";
echo "<p>Votre réponse à ce questionnaire a bien été prise en compte. Nous vous remercions de votre participation. Aucune information relative à ce questionnaire ne sera divulguée.</p>";

$msg .= "Une réponse au questionnaire a été faites\n\n";
$genre = $_POST['genre'];
$msg .="La personne ayant répondu à ce questionnaire est 1" . $genre . "\n";
$msg .=" Son age : ($_POST[age]) \n" ;
$msg .=" Son adresse mail est : ($_POST[mail]) \n" ;
$msg .=" Sa région est : ($_POST[region]) \n" ;
$msg .=" Sa ville est : ($_POST[ville]) \n" ;
$provenance = $_POST['provenance'];
$msg .=" Son ordinateur provient dune " . $provenance . "\n" ;
$type = $_POST['type'];
$msg .=" Elle possède un ordinateur de " . $type . "\n" ;
$operateur = $_POST['operateur'];
$msg .=" Elle est chez " . $operateur . "\n" ;
$msg .=" Si elle vient de cocher autres alors cest chez : ($_POST[Autres2]) \n" ;
$niveau = $_POST['niveau'];
$msg .=" La personne se considère comme " . $niveau . "\n" ;
$note = $_POST['Note'];
$msg .= "La note pour l'assistance à domicile est " . $Note ."\n";
$note1 = $_POST['Note1'];
$msg .= "La note pour les formations à domicile est " . $Note1 ."\n";
$note2 = $_POST['Note2'];
$msg .= "La note pour les installations de matérielle soi meme est " . $Note2 . "\n";
$note3 = $_POST['Note3'];
$msg .= "La note pour les achats sur le net est " . $Note3 . "\n";
$note5 = $_POST['Note5'];
$msg .= "La note pour les formations des enfants est " . $Note4 . "\n";
$note6 = $_POST['Note6'];
$msg .= "La note pour les créations de site est " . $Note5 . "\n";
if (mail($dest_mail, $sujet, $msg)) {
echo "Mail envoyé";
} else {
echo "Echec envoi mail";
}
}
else
{
// Un ou plusieurs champs ne sont pas remplis donc on affiche un message d'erreur et un lien retour
echo "<div align=center>Il faut remplir tous les champs du formulaire<br><br><a href='javascript:history.back();'>Retour</a></div>";
}
?>

Si je me suis pas planté c'est un truc comme ça
0
drogba7213 Messages postés 1524 Date d'inscription mardi 14 août 2007 Statut Membre Dernière intervention 3 avril 2010 21
18 mai 2008 à 23:03
ok je test et au niveau de firefox?
0
Mimiste Messages postés 1149 Date d'inscription samedi 17 mai 2008 Statut Membre Dernière intervention 6 mars 2016 206
18 mai 2008 à 23:08
Y faudrai que je voi ton formulaire coté HTML avec les bouton tout ça pour voir ce qui ce passe
0
drogba7213 Messages postés 1524 Date d'inscription mardi 14 août 2007 Statut Membre Dernière intervention 3 avril 2010 21
18 mai 2008 à 23:11
et en faite ton code n'est pas bon car il passe toujours
meme les si les champs ne sont pas remplis
0
Mimiste Messages postés 1149 Date d'inscription samedi 17 mai 2008 Statut Membre Dernière intervention 6 mars 2016 206
18 mai 2008 à 23:14
ha bizzare j'ai testé chez moi sa marche

essai de remplacer la ligne du if

if (isset($_POST['age']) && isset($_POST['mail']) && isset($_POST['region']) && isset($_POST['ville']))

par

if ($_POST['age'] != "" && $_POST['mail'] != "" && $_POST['region'] != "" && $_POST['ville'] != "")
0
drogba7213 Messages postés 1524 Date d'inscription mardi 14 août 2007 Statut Membre Dernière intervention 3 avril 2010 21
18 mai 2008 à 23:11
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html><head>
<meta content="text/html; charset=ISO-8859-1" http-equiv="content-type"><title>questionnaire.html</title></head>
<body>
<form method="post" action="questionnaire.php">
<p style="text-align: center;"><big style="text-decoration: underline;"><big><span style="font-weight: bold;">Questionnaire </span></big></big></p>
<p style="text-align: left;"></p>
<p style="text-align: left;"><big style="font-weight: bold;">Vous êtes :</big></p>
<p style="text-align: left;"><br>
<select name="genre" id="genre"><option value="femme">Femme</option><option value="homme">Homme</option></select>
</p>
<br>
<div style="text-align: left;"><big><big><span style="font-weight: bold;"><small><br>
Adresse E-Mail : (Facultatif)</small><br>
<br>
</span></big></big><big><big><span style="font-weight: bold;"><input maxlength="40" size="40" name="mail"></span></big></big><br>
<br>
<big style="font-weight: bold;">Votre âge ?
</big><br>
<br>
<input maxlength="15" size="15" name="age"><br>
<br>
<big>
<p class="MsoNormal"><span style="font-weight: bold;">Dans
quelle région de France habitez-vous ?</span> </p>
</big><br>
<big><input maxlength="15" size="15" name="region"></big><br>
<br>
<big>
</big>
<p style="font-weight: bold;" class="MsoNormal"><big>Dans
quelle ville résidez-vous ?</big></p>
<p class="MsoNormal"><big><input maxlength="15" size="15" name="ville"></big></p>
<p style="font-weight: bold;" class="MsoNormal"><big>Avez-vous
un ordinateur ? Si
oui préciser sa provenance</big></p>
<select name="provenance" id="provenance"><option value="boutiquedassemblage">Boutique d'assemblage</option><option value="grandesurface">Grandesurface</option></select>
<br>
<br>
<big><span style="font-weight: bold;">Quel
type d’ordinateur possédez-vous ?</span></big><big style="font-weight: bold; text-decoration: underline;">
</big><br>
<br>
<select name="type" id="type"><option value="bureau">Bureau</option><option value="portable">portable</option></select>
<br>
<br>
<p style="font-weight: bold;" class="MsoNormal"><big>Avez-vous
internet par
l’ADSL ? Si oui quel operateur ?</big></p>
<br>
<select name="operateur" id="operateur"><option value="orange">Orange</option><option value="neuf">Neuf</option><option value="sfr">SFR</option><option value="free">Free</option><option value="autres">Autres</option></select>
<br>
<br>
<big><span style="font-weight: bold;">Précisez
pour autre svp :</span></big>
<br>
<br>
<input maxlength="40" size="40" name="Autres2">
<p style="font-weight: bold;" class="MsoNormal"><big>Comment
vous considérez-vous en la matière ?</big></p>
<select name="niveau" id="niveau"><option value="debutant">Débutant</option><option value="intermediaire">Intermédiaire</option><option value="expert">Expert</option></select>
<br>
<br>
<div style="text-align: center;"><big><span style="font-weight: bold;">Pour cette nouvelle série de question,
vous devrez effectuer
une notation  entre
0 et 10 ce qui nous
permettra de juger les différents besoins de services de nôtre
clientèle.</span>
</big></div>
<p style="font-weight: bold;" class="MsoNormal"></p>
<p class="MsoListParagraph" style="text-indent: -18pt; font-weight: bold;"><big><span style=""><span style=""><span style="font-family: "Times New Roman"; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;"> 
</span></span></span>    Que
pensez-vous d’une
assistance à
domicile ?</big></p>
<select name="Note" id="Note"><option value="0">0</option><option value="1">1</option><option value="2">2</option><option value="3">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><option value="9">9</option><option value="10">10</option></select>
<p class="MsoListParagraph" style="text-indent: -18pt; font-weight: bold;"></p>
<p style="font-weight: bold;" class="MsoNormal"><big>Seriez-vous
intéressés par des formations à domicile ?</big></p>
<select name="Note1" id="Note"><option value="0">0</option><option value="1">1</option><option value="2">2</option><option value="3">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><option value="9">9</option><option value="10">10</option></select>
<p style="font-weight: bold;" class="MsoNormal"></p>
<p style="font-weight: bold;" class="MsoNormal"><big>Trouvez-vous
contraignant d’installer votre matériel
informatiques vous même ?</big></p>
<select name="Note2" id="Note"><option value="0">0</option><option value="1">1</option><option value="2">2</option><option value="3">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><option value="9">9</option><option value="10">10</option></select>
<p style="font-weight: bold;" class="MsoNormal"></p>
<big style="font-weight: bold;"><span style="font-size: 11pt; line-height: 115%; font-family: "Calibri","sans-serif";"><big>Commanderiez-vous
des pièces informatiques par internet si vous en aviez
l’opportunité ?</big> </span><br>
<select name="Note3" id="Note"><option value="0">0</option><option value="1">1</option><option value="2">2</option><option value="3">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><option value="9">9</option><option value="10">10</option></select>
<br>
<br>
<big><span style="font-size: 11pt; line-height: 115%; font-family: "Calibri","sans-serif";">Aimeriez-
vous que votre enfant bénéficie d’une formation informatique<span style="">  </span>à l’école dès son plus
jeunes âges
(Primaire) ?</span></big><br>
<select name="Note4" id="Note"><option value="0">0</option><option value="1">1</option><option value="2">2</option><option value="3">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><option value="9">9</option><option value="10">10</option></select>
<br>
<big style="text-decoration: underline;"><br>
</big><big><span style="font-size: 11pt; line-height: 115%; font-family: "Calibri","sans-serif";">Avez-vous
déjà pensé à créer un site internet ? </span></big></big><br>
<select name="Note5" id="Note"><option value="0">0</option><option value="1">1</option><option value="2">2</option><option value="3">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><option value="9">9</option><option value="10">10</option></select>
<br>
<br>
<div style="text-align: center;"><big><big><span style="font-weight: bold;"><a href="questionnaire.php"><input value="Valider" type="submit"></a>   
       
    </span></big></big><input value="annuler" type="reset">
</div>
</div>
</form>

</body></html>
0
Mimiste Messages postés 1149 Date d'inscription samedi 17 mai 2008 Statut Membre Dernière intervention 6 mars 2016 206
18 mai 2008 à 23:22
pour mon code qui marchai pas j'ai repondu au dessus de ton dernier post, je sais pas si tu l'a lu on a post en même temps.

essai d'enlever le lien autour de ton bouton submit, il sert a rien puisque dans la balise <form> plus haut tu a déjà defini qu'il devai aller sur la page questionnaire.php
0
drogba7213 Messages postés 1524 Date d'inscription mardi 14 août 2007 Statut Membre Dernière intervention 3 avril 2010 21
18 mai 2008 à 23:24
Si j'ai essayer avec ton nouveau code et il ne fonctionne pas non plus
0
drogba7213 Messages postés 1524 Date d'inscription mardi 14 août 2007 Statut Membre Dernière intervention 3 avril 2010 21
18 mai 2008 à 23:26
bon dans tout les cas on reprendra demain je vais me pioter merci et a demain
0
drogba7213 Messages postés 1524 Date d'inscription mardi 14 août 2007 Statut Membre Dernière intervention 3 avril 2010 21
19 mai 2008 à 15:02
as tu trouvé mec car ca bug toujours autant lol
0