Bonjour à tous,
J'ai actuellement un soucis avec la fonction mail et les mails au format HTML.
J'ai testé en local ma fonction d'envoi de mail et tout va bien jusque là.
J'ai mon joli petit tableau avec mes images, mon style, ...

Mais aujourd'hui lorsque j'utilise cette fonction depuis l'hébergeur plus rien ne vas.
Il semblerait que je ne puisse pas attacher la feuille de style à mon mail pour y appliquer les règles.

Voici ma fonction si toute fois cela peut vous aider:

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
65
66
67
68
69
70
71
72
73
74
function envoi_mail($destinataire, $raison_sociale, $nom, $prenom, $adresse, $code_postal, $ville, $mail, $telephone, $contenu)
{
		//Début de la composition du mail
		$headers ='From: " Formulaire de contact '.$_SERVER['SERVER_NAME'].' "<noreply@'.$_SERVER['SERVER_NAME'].'>'."\n";
		$headers .='Reply-To: noreply@'.$_SERVER['SERVER_NAME']."\n";
		$headers .='Content-Type: text/html; charset="iso-8859-1"'."\n";
		$headers .='Content-Transfer-Encoding: 8bit'; 
		$sujet = $nom.' '.$prenom.' vous a envoyé un message depuis le site '.$_SERVER['SERVER_NAME'];
		 $message ='<html>';
		 $message .='<head>';
		 $message .='<title>'.$nom.' '.$prenom.' vous a envoyé un message</title>';
		 $message .= '<link rel="stylesheet" href="http://'.$_SERVER['SERVER_NAME'].'/css/mail.css" type="text/css"  media="screen" />';
		 $message .='</head>';
		 $message .='<body>';
		 $message .= '<div id="mail_main">';
		$message .= '<table width="600px;" cellspacing="0" border="0">
		 <tr>
		  <td class="header" ></td>
		 </tr>
		 <tr>
			<td>
				<br />
				http://'.$_SERVER['SERVER_NAME'].'/css/mail.css
				<h2><font face="Arial, Helvetica, sans-serif" color="white">'.$sujet.'</font></h2>
				<font face="Arial, Helvetica, sans-serif" size="2" color="white">
				Vous avez reçu un message via votre site internet.
				<br />
				Voici le contenu du message:
				<br />
				<br />
				'.nl2br($contenu).'
				<br />
				<br />
				Voici les informations de la personne.
				<br />
				Raison sociale : '.$raison_sociale.'
				<br />
				Nom & prénom : '.$nom.' '.$prenom.'
				<br />
				Adresse : '.$adresse.'
				<br />
				Code postal & Ville: '.$code_postal.' '.$ville.'
				<br />
				Téléphone : '.$telephone.'
				<br />
				E-mail : '.$mail.'
				</font>
				<br />
				<br />
				<font face="Arial, Helvetica, sans-serif" size="2" color="white">Ceci est un mail envoyé automatiquement. Il n\'est pas nécessaire d\'y répondre.</font>
				<br />
				<br />
			</td>
		 </tr>
		 <tr>
		  <td></td>
		 </tr>
		</table>';
		$message .= '</div>';
		 $message .='</body>';
		 $message .='</html>';
 
		  if(mail($destinataire, $sujet, $message, $headers))
     {
          $reponse = 'Le message a été envoyé';
 
     }
     else
     {
          $reponse = 'Le message n\'a pu être envoyé';
     } 
 
	return $reponse;
}
Comme vous pouvez le voir, dans le corps du mail j'affiche volontairement le lien vers la feuille de style pour voir si il est correct. (Oui le code présent est en mode débug).
Et il se trouve que le lien est correct.
Du coup je ne comprends pas ce qui peut bloquer.

Si vous avez une idée....

Merci d'avance !