Bonsoir,
Je viens poster un message ici avant de me retrouver complètement chauve!
Sur une de mes pages de mon site, et seulement celle-là, mes header(....) ne fonctionnement pas et me donnent une belle erreur :
Voici le code:Warning: Cannot modify header information - headers already sent by (output started at /home/lafolied/public_html/envoi_mail_annonce.php:26) in /home/lafolied/public_html/centre/formulaire_mail_annonce.php on line 38
Le mail part bien mais c'est tout...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64 <?php require("php/connexion_base.php"); if(isset($_GET['id'])){ $id_annonce = $_GET['id']; $_SESSION['id_annonce_mail'] = $_GET['id']; }else{ $adresse="affiche_annonce_visu.php?id=".$_SESSION['id_annonce_mail']; if((!isset($_POST['nom']) || $_POST['nom'] == "") || (!isset($_POST['mail']) || $_POST['mail'] == "") || (!isset($_POST['message']) || $_POST['message'] == "") ){ $_SESSION['envoi_mail'] = false; header("location:".$adresse); }else{ $id_annonce = $_POST['id']; $titre = $_POST['titre']; $nom = $_POST['nom']; $mail = $_POST['mail']; $mail_troqueur = $_POST['mail_troqueur']; $tel = $_POST['tel']; $msg = $_POST['message']; $headers ="From: ......\r\n"; $headers.="Reply-To: ".$mail."\r\n"; $headers.="Content-Type: text/html; charset='UTF-8'\r\n"; $headers.="Content-Transfer-Encoding: 8bit\r\n"; $message ="Bonjour,<br/><br/>"; $message.=$nom." vous a envoyé le message suivi concernant votre annonce \"".$titre."\":<br/>"; $message.="<br/><br/>"; $message.=$msg."<br/><br/>"; $message.=$nom." ne connaîtra votre adresse e-mail uniquement si vous répondez à son message."."<br/>"; $message.="Merci pour votre confiance.<br/><br/>"; if(mail($mail_troqueur, "Message concernant votre annonce : \"".$titre."\" sur ......", $message, $headers)){ $_SESSION['envoi_mail'] = true; header("location:".$adresse); }else{ $_SESSION['envoi_mail'] = false; header("location:".$adresse); } } } $req = "select titre, identifiant, mail from troqueurs inner join annonces on annonces.id_troqueur = troqueurs.num_id where num_annonce = ".$id_annonce; $result = mysql_query($req) or die("Impossible de récupérer les infos troqueur"); while($data = mysql_fetch_array($result)){ $titre = $data['titre']; $identifiant = $data['identifiant']; $mail = $data['mail']; } ?> Vous souhaitez envoyer un message à <?php echo $identifiant; ?> à propos de l'annonce "<?php echo $titre; ?>"<br/><br/> <form method="POST" action="envoi_mail_annonce.php" > <p>Votre nom* : <input type="text" name="nom" <?php if(isset($_SESSION["ident"])){echo"value='".$_SESSION["ident"]."'";} ?>/></p> <p>Votre mail* : <input type="text" name="mail" <?php if(isset($_SESSION["mail"])){echo"value='".$_SESSION["mail"]."'";} ?>/></p> <p>Votre numéro de téléphone : <input type="text" name="tel" <?php if(isset($_SESSION["tel"])){echo"value='".$_SESSION["tel"]."'";} ?>/></p> <p><textarea name="message" cols=60 rows=10></textarea>*</p> <input type="hidden" name="id" value= <?php echo $id_annonce; ?> /> <input type="hidden" name="titre" value= <?php echo $titre; ?> /> <input type="hidden" name="mail_troqueur" value= <?php echo $mail; ?> /> <p><input type="submit" value="Envoyer" /></p> </form>
J'ai d'autres header dans d'autres pages et je n'ai pas de souci alors que l'encodage est le même pour toutes les pages. Doit y avoir une erreur ici c'est sûr mais impossible de la trouver.
J'ai vérifié les éventuels espaces qu'il pourrait y avoir sur les balises <?php et ?> de la page contenant ce morceau mais j'ai rien trouvé.
Je ne sais plus où chercher.
L'un de vous a t'il une idée? merci d'avance!
PS : j'ai oublié de préciser que mon site est hébergé chez planethoster si ça peut aider... Sous wamp je n'avais pas tous ces problèmes
Partager