A voir également:
- [PHP] Probleme validation adresse email
- Darkino nouvelle adresse - Guide
- Adresse mac - Guide
- Changer adresse dns - Guide
- Adresse url - Guide
- Darkino : le grand site pirate change d'adresse et d'interface - Accueil - Services en ligne
9 réponses
Bonsoir,
qqs remarques:
- ton tag <? php n'est pas bon il y a un espace entre >, et php
- dans <form... action=''> tu n'appelles pas de fichier pour traiter ton formulaire
- pourquoi as tu mis function test_mail, tu peux mettre ça directement dans ton script " traitement.php"
et si tu mets <form method=post" action=traitement.php">
et attention le header doit être envoyé avant tout caractère HTML, même pas une ligne vide au début du fichier
qqs remarques:
- ton tag <? php n'est pas bon il y a un espace entre >, et php
- dans <form... action=''> tu n'appelles pas de fichier pour traiter ton formulaire
- pourquoi as tu mis function test_mail, tu peux mettre ça directement dans ton script " traitement.php"
<?php if (isset($_POST['ok'])) { if (empty($_POST['email'])) { $message = "Indiquez votre adresse email"; } else { if( eregi("^[_\.0-9a-z-]+@([0-9a-z-]+\.)+[a-z]{2,4}$",$email) ){ // L'adresse email est valide header('Location: ../merci.php'); }else { // L'adresse email n'est pas valide $message = "Adresse non valide"; } } } ?>
et si tu mets <form method=post" action=traitement.php">
et attention le header doit être envoyé avant tout caractère HTML, même pas une ligne vide au début du fichier
Enooooorme Merci Alain,
Les contrôles fonctionnent.
Effectivement, les espaces en trop, le <?php... et la function qui n'avait pas lieu d'etre.
Tout ceci est super.
Je mets <form action=""> car je souhaite que, s'il y a erreur, le message s'affiche avant que la page soit envoyée.
Si l'adresse email est correct, en revanche, pb avec mon header... Il me met un message de warning
Warning: Cannot modify header information - headers already sent by (output started at /aaa/bbb/www/blablabla/communication.php:11) in /aaa/bbb/www/blablabla/include/pied-de_page.php on line 7
Effectivement dans mon fichier communication.php, en ligne 153, j'ai fait un include de mon pied de page...
Je vais chercher une solution [peut être est-ce mon chemin d'accès] mais si déjà, c'est limpide pour toi, ou qqun, surtout faites moi signe.
Merci encore pour avoir débloqué ma situation.
ed.
Les contrôles fonctionnent.
Effectivement, les espaces en trop, le <?php... et la function qui n'avait pas lieu d'etre.
Tout ceci est super.
Je mets <form action=""> car je souhaite que, s'il y a erreur, le message s'affiche avant que la page soit envoyée.
Si l'adresse email est correct, en revanche, pb avec mon header... Il me met un message de warning
Warning: Cannot modify header information - headers already sent by (output started at /aaa/bbb/www/blablabla/communication.php:11) in /aaa/bbb/www/blablabla/include/pied-de_page.php on line 7
Effectivement dans mon fichier communication.php, en ligne 153, j'ai fait un include de mon pied de page...
Je vais chercher une solution [peut être est-ce mon chemin d'accès] mais si déjà, c'est limpide pour toi, ou qqun, surtout faites moi signe.
Merci encore pour avoir débloqué ma situation.
ed.
Je complète au fur et a mesure que je trouve des solutions.
1 - pour le warning, je n'ai pas trouvé mieux que de mettre du javascript à la place du header.
echo '<script language="Javascript">
<!--
document.location.replace("merci.php");
// -->
</script>';
//header('Location:merci.php');
2 - qd je parviens à passer sur la page "merci.php", l'adresse email n'a pas suivi.
Help !
Merci d'avance à ceux qui se pencheront avec indulgence sur mon cas.
ed
1 - pour le warning, je n'ai pas trouvé mieux que de mettre du javascript à la place du header.
echo '<script language="Javascript">
<!--
document.location.replace("merci.php");
// -->
</script>';
//header('Location:merci.php');
2 - qd je parviens à passer sur la page "merci.php", l'adresse email n'a pas suivi.
Help !
Merci d'avance à ceux qui se pencheront avec indulgence sur mon cas.
ed
Bonjour,
Non, tu étais sur la bonne voie !
Remets ton header !
Pour que nous corrigions ton pb, envoie-nous le contenu exact (à la ligne vide près, oui oui, c'est important pour le header) de tes fichiers communication.php et pied-de_page.php
Ha oui, et aussi, aujourd'hui, on n'utilise plus directement la variable transmise par le formulaire avec $var mais on utilise $_POST['var'].
Non, tu étais sur la bonne voie !
Remets ton header !
Pour que nous corrigions ton pb, envoie-nous le contenu exact (à la ligne vide près, oui oui, c'est important pour le header) de tes fichiers communication.php et pied-de_page.php
Ha oui, et aussi, aujourd'hui, on n'utilise plus directement la variable transmise par le formulaire avec $var mais on utilise $_POST['var'].
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonsoir,
Tout d'abord, encore merci de votre aide.
J'ai bien compris que le pb du header c'était les caractères blancs dans le fichier communication.
Mais j'ai au moins une vingtaine de pages avec le même pied de page en include dans le bas de mes pages html. Et donc, trop de boulot de poster tout mon site ici.
Alors, comme je n'ai pas trouvé les espaces blancs qui posent probleme, j'ai contourné le pb autrement.
Plus de header mais le message merci avec envoi confirmation à l'expediteur et au destinataire dans le fichier pied de page. Ce qui donne maintenant:
<?php
if (isset($_POST['ok'])) {
if (empty($_POST['email'])) {
$message = "Indiquez votre adresse email";
} else {
if( eregi("^[_\.0-9a-z-]+@([0-9a-z-]+\.)+[a-z]{2,4}$",$email) ){ // L'adresse email est valide
Mail("$notremail","$sujet","$m2","from: $notremail");
Mail($email, $sujet, $txt, $headers);
$message = "Merci ! Vous êtes inscrit.";
} else { // L'adresse email n'est pas valide
$message = "Adresse non valide";
}
}
}
?>
Voilà. En espérant que cela puisse aider certains.
ed
Tout d'abord, encore merci de votre aide.
J'ai bien compris que le pb du header c'était les caractères blancs dans le fichier communication.
Mais j'ai au moins une vingtaine de pages avec le même pied de page en include dans le bas de mes pages html. Et donc, trop de boulot de poster tout mon site ici.
Alors, comme je n'ai pas trouvé les espaces blancs qui posent probleme, j'ai contourné le pb autrement.
Plus de header mais le message merci avec envoi confirmation à l'expediteur et au destinataire dans le fichier pied de page. Ce qui donne maintenant:
<?php
if (isset($_POST['ok'])) {
if (empty($_POST['email'])) {
$message = "Indiquez votre adresse email";
} else {
if( eregi("^[_\.0-9a-z-]+@([0-9a-z-]+\.)+[a-z]{2,4}$",$email) ){ // L'adresse email est valide
Mail("$notremail","$sujet","$m2","from: $notremail");
Mail($email, $sujet, $txt, $headers);
$message = "Merci ! Vous êtes inscrit.";
} else { // L'adresse email n'est pas valide
$message = "Adresse non valide";
}
}
}
?>
Voilà. En espérant que cela puisse aider certains.
ed
Bonjour,
Si j'ai bien compris, ce code c'est celui de ton pied de page, cela veut dire que tu l'inclue dans toutes tes pages à la fin de celles ci.
Donc si dans ce pied de page tu mets un header(), forcément il y tout le reste de la page qui est envoyé au navigateur avec avant (beaucoup) de HTML, et ton header() ne marchera pas.
Il faut trouver une autre solution que le header(), c'est ce que tu as fait.
@lain
Si j'ai bien compris, ce code c'est celui de ton pied de page, cela veut dire que tu l'inclue dans toutes tes pages à la fin de celles ci.
Donc si dans ce pied de page tu mets un header(), forcément il y tout le reste de la page qui est envoyé au navigateur avec avant (beaucoup) de HTML, et ton header() ne marchera pas.
Il faut trouver une autre solution que le header(), c'est ce que tu as fait.
@lain
Effectivement @lain,
Merci pour cette précision, cela me conforte dans la nouvelle voie que j'ai trouvé. J'ai eu du mal à renoncer au header !!
En même temps, je trouve cela facile en cas de modification d'avoir un pied de page que je peux changer une seule fois et qui s'applique à toutes mes pages. Pas question de renoncer alors à mon include... lol
ed
Merci pour cette précision, cela me conforte dans la nouvelle voie que j'ai trouvé. J'ai eu du mal à renoncer au header !!
En même temps, je trouve cela facile en cas de modification d'avoir un pied de page que je peux changer une seule fois et qui s'applique à toutes mes pages. Pas question de renoncer alors à mon include... lol
ed