simsgodzilla
Messages postés24Date d'inscriptionvendredi 17 mars 2006StatutMembreDernière intervention25 juin 2006
-
10 juin 2006 à 18:31
simsgodzilla
Messages postés24Date d'inscriptionvendredi 17 mars 2006StatutMembreDernière intervention25 juin 2006
-
11 juin 2006 à 13:08
Bonjour!
J'ai crée un formulaire et je lui ai demandé d'affiché une mess d'erreur si l'envoi ne peut se faire, et ça n'apparait pas; je lui ai demandé de dire aussi à l'internaute sil avait oublié de remplir un champ...mais il ne lui dit pas!
Tout ce quil fait c envoyer (souvent, meme si l'adresse n'a meme pas de @) ou pas (sinon sans rien marquer que la date et retour accueil)
voilà mon code (résultat page formulaire) :
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<?php
// Interface PHP pour mail()
function sendMail($mFrom,$mTo,$sujet,$body) {
// l'émetteur
$tete = 'From: '.$mFrom."\n";
$tete .= 'Reply-To: '.$mFrom."\n";
// si erreur d'émission
return mail($mTo,$sujet,$body,$tete);
}
?>
<html>
<head>
<title>Confirmation d'envoi liée au formulaire de messagerie</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="JavaScript">
<!--
function mmLoadMenus() {
if (window.mm_menu_0527162929_0) return;
window.mm_menu_0527162929_0 = new Menu("root",121,18,"Arial, Helvetica, sans-serif",12,"#FF9900","#FFFFFF","#000000","#000000","left","middle",0,0,1000,-5,7,true,false,true,0,true,true);
mm_menu_0527162929_0.addMenuItem("Présentation","window.open('index.htm', '_blank');");
mm_menu_0527162929_0.fontWeight="bold";
mm_menu_0527162929_0.hideOnMouseOut=true;
mm_menu_0527162929_0.bgColor='#555555';
mm_menu_0527162929_0.menuBorder=1;
mm_menu_0527162929_0.menuLiteBgColor='#FFFFFF';
mm_menu_0527162929_0.menuBorderBgColor='#777777';
window.mm_menu_0602162213_0 = new Menu("root",394,24,"Georgia, Times New Roman, Times, serif",18,"#FF9900","#FFFFFF","#000000","#000000","left","middle",3,0,1000,-5,7,true,false,true,0,true,true);
mm_menu_0602162213_0.addMenuItem("Banque / Immobilier","window.open('clientele_banque_immobilier.php', '_blank');");
mm_menu_0602162213_0.addMenuItem("Collectivités","window.open('clientele_collectivites.php', '_blank');");
mm_menu_0602162213_0.addMenuItem("Grande distribution","window.open('clientele_grande_distribution.php', '_blank');");
mm_menu_0602162213_0.addMenuItem("Industrie / Produits industriels","window.open('clientele_industrie_produits_industriels.php', '_blank');");
mm_menu_0602162213_0.addMenuItem("Restauration / Cafés / Boisson / Alimentation","window.open('clientele_restauration_cafes_boisson_alimentation.php', '_blank');");
mm_menu_0602162213_0.addMenuItem("Sports Auto / Moto","window.open('clientele_sports_auto_moto.php', '_blank');");
mm_menu_0602162213_0.addMenuItem("Tourisme / Loisirs","window.open('clientele_tourisme_loisirs.php', '_blank');");
mm_menu_0602162213_0.hideOnMouseOut=true;
mm_menu_0602162213_0.bgColor='#555555';
mm_menu_0602162213_0.menuBorder=0;
mm_menu_0602162213_0.menuLiteBgColor='#FFFFFF';
mm_menu_0602162213_0.menuBorderBgColor='#666666';
window.mm_menu_0602162947_0 = new Menu("root",254,24,"Georgia, Times New Roman, Times, serif",18,"#FF9900","#FFFFFF","#000000","#000000","left","middle",3,0,1000,-5,7,true,false,true,0,true,true);
mm_menu_0602162947_0.addMenuItem("Coordonnées / Plan d'accès","window.open('contacts.php', '_blank');");
mm_menu_0602162947_0.addMenuItem("Formulaire de messagerie","window.open('contacts_formulaire_messagerie.php', '_blank');");
mm_menu_0602162947_0.hideOnMouseOut=true;
mm_menu_0602162947_0.bgColor='#555555';
mm_menu_0602162947_0.menuBorder=0;
mm_menu_0602162947_0.menuLiteBgColor='#FFFFFF';
mm_menu_0602162947_0.menuBorderBgColor='#666666';
window.mm_menu_0602163252_0 = new Menu("root",179,24,"Georgia, Times New Roman, Times, serif",18,"#FF9900","#FFFFFF","#000000","#000000","left","middle",3,0,1000,-5,7,true,false,true,0,true,true);
mm_menu_0602163252_0.addMenuItem("Produits proposés","window.open('produits.php', '_blank');");
mm_menu_0602163252_0.addMenuItem("Liste de produits","window.open('Liste_produits.pdf', '_blank');");
mm_menu_0602163252_0.hideOnMouseOut=true;
mm_menu_0602163252_0.bgColor='#555555';
mm_menu_0602163252_0.menuBorder=0;
mm_menu_0602163252_0.menuLiteBgColor='#FFFFFF';
mm_menu_0602163252_0.menuBorderBgColor='#666666';
window.mm_menu_0602163722_0 = new Menu("root",182,24,"Georgia, Times New Roman, Times, serif",18,"#FF9900","#FFFFFF","#000000","#000000","left","middle",3,0,1000,-5,7,true,false,true,0,true,true);
mm_menu_0602163722_0.addMenuItem("Services proposés","window.open('services.php', '_blank');");
mm_menu_0602163722_0.addMenuItem("Matériel utilisé","window.open('Liste_materiel.pdf', '_blank');");
mm_menu_0602163722_0.hideOnMouseOut=true;
mm_menu_0602163722_0.bgColor='#555555';
mm_menu_0602163722_0.menuBorder=0;
mm_menu_0602163722_0.menuLiteBgColor='#FFFFFF';
mm_menu_0602163722_0.menuBorderBgColor='#666666';
Il est
<?php echo $heure; ?>,
...confirmation d'envoi
de votre message...(si
aucun message n'apparaît, considérez que votre requête n'a
pu aboutir)
<?php // SI LE FORM A ETE POSTE
if(!empty($_POST['Email'])) {
// Récupère les éléments du form
$temp='';
while (list($truc, $val) = each($_POST))
$temp .= $truc.' : '.$val."\n\n";
// Caractères spéciaux
$temp = stripslashes($temp);
// Envoie le message
if(@sendmail($_POST['Email'], 'mon.nom@wanadoo.fr', 'Message venant du site', $temp)) {
// Affiche un message de confirmation
echo 'Votre message a bien été envoyé à ','mon.nom@wanadoo.fr',' ,';
} else {
// ou un message d'erreur
echo 'Impossible d\'envoyer le formulaire !';
}
// SINON AFFICHAGE DU FORM
} else { ?>
<script language="text/JavaScript">
// Teste si le mail a une forme correcte
function checkmail(Email) {
var (reg= '/^[a-z0-9._-]+@[a-z0-9.-]{2,}[.][a-z]{2,4}$/')
return (reg.exec(Email)!=null)
}
// Teste le contenu des champs du form avant submit
function test(Nom,Email) {
if(Nom.value=='') {
alert('Indiquez votre nom !'); Nom.focus(); return false;
} else if(!checkmail(Email.value)) {
alert('Email incorrect !'); Email.focus(); return false;
}
return true;
}
</script>
coockiesch
Messages postés2268Date d'inscriptionmercredi 27 novembre 2002StatutMembreDernière intervention13 septembre 20134 11 juin 2006 à 10:48
Salut?
Et.... ?
Enfin, je veux dire, quelle est l'erreur précise? Pcq on va pas décortiquer tout ton code!
De plus, si tu peuxm essaie de l'alléger avant de le poster (par exemple le code JavaScript inutile).... :)
@++
R@f
www.allpotes.ch: Photos, humour, vidéos, gags, ...
"On dit que seulement 10 personnes au monde comprenaient Einstein. Personne ne me comprends. Suis-je un génie???"
simsgodzilla
Messages postés24Date d'inscriptionvendredi 17 mars 2006StatutMembreDernière intervention25 juin 2006 11 juin 2006 à 10:55
Bonjour !
Ba je l'ai dit mon problème... :
J'ai crée un formulaire et je lui ai demandé d'affiché une mess d'erreur si l'envoi ne peut se faire, et ça n'apparait pas; je lui ai demandé de dire aussi à l'internaute sil avait oublié de remplir un champ...mais il ne lui dit pas!
Tout ce quil fait c envoyer (souvent, meme si l'adresse n'a meme pas de @) ou pas (sinon sans rien marquer que la date et retour accueil)
ça doit venir de ce bout de code...mais je vois pas où :
<?php // SI LE FORM A ETE POSTE
if(!empty($_POST['Email'])) {
// Récupère les éléments du form
$temp= '';
while (list($truc, $val) = each($_POST))
$temp .= $truc.' : '.$val."\n\n";
// Caractères spéciaux
$temp = stripslashes($temp);
// Envoie le message
if(@sendmail($_POST['Email'], [mailto:'mon.nom@wanadoo.fr' 'mon.nom@wanadoo.fr'], 'Message venant du site', $temp)) {
// Affiche un message de confirmation
echo 'Votre message a bien été envoyé à ','mon.nom@wanadoo.fr',' ,';
} else {
// ou un message d'erreur
echo 'Impossible d\'envoyer le formulaire !';
}
// SINON AFFICHAGE DU FORM
} else { ?>
<script language ="text/JavaScript">
// Teste si le mail a une forme correcte
function checkmail(Email) {
var (reg= '/^[a-z0-9._-]+@[a-z0-9.-]{2,}[.][a-z]{2,4}$/')
return (reg.exec(Email)!=null)
}
// Teste le contenu des champs du form avant submit
function test(Nom,Email) {
if(Nom.value=='') {
alert('Indiquez votre nom !'); Nom.focus(); return false;
} else if(!checkmail(Email.value)) {
alert('Email incorrect !'); Email.focus(); return false;
}
return true;
}
</script>
Tu devrais faire la vérification sur l'email dans le if (càd si email n'est pas vide). Je vois des fonctions que dans le else... De plus tu mélanges javascript et php, c'est pas conseillà on s'y perd vite, après.
@++
R@f
www.allpotes.ch: Photos, humour, vidéos, gags, ...
"On dit que seulement 10 personnes au monde comprenaient Einstein. Personne ne me comprends. Suis-je un génie???"