Bonjour, voila un script php qui permet d'envoyer un mail, avec une pièce jointe représentant l'export sql to csv grâce à une requête. Le problème c'est qu'il n'envoit rien du tout, et pas d'erreur. Mes paramètres smtp sont bien configurés puisque j'ai testé une simple fonction d'envoit de mail et tout marche.

Là, je ne vois pas ...

Auriez-vous une idée?

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
<html>
<body>
<?
 
$connect = mysql_connect("XXX", "XXX", "XXX");
mysql_select_db("sie13783_national_fleet_aus");
 
$file = "csvmysql.csv";
 $fp=fopen($file ,"wb"); // Ouverture du fichier avec le mode écriture
 
 $request = "SELECT * FROM tbl_list WHERE date_added >= '20140116 ";
 if ($result = mysql_query($request))
 {
  while($ligne = mysql_fetch_row($result))
  {
   $ident= $ligne[0];
   $first_name= $ligne[1];
   $chaine ="$ident;$first_name\r";
   fwrite($fp, $chaine);
  }
 }
 
 $headers ='From: "bla bla"<XXX>'."\n";
 $headers .='Reply-To: XXX'."\n";
 $headers .='Content-Type: text/plain; charset="iso-8859-1"'."\n";
 $headers .='Content-Transfer-Encoding: 8bit';
 $message .= 'Content-Type: application/csv-tab-delimited-table; name="csvmysql.csv"'."\n";
 $message .= 'Content-Transfer-Encoding: base64'."\n";
 $message .= 'Content-Disposition:attachement; filename="csvmysql.csv"'."\n\n";
 $message .= chunk_split(base64_encode(file_get_contents('csvmysql.csv')))."\n";
 mail('XX', 'Sujet', 'Envoi quotidien CRON',$message,$headers);
 
 unlink("csvmysql.csv");
?>
</body>
</html>