Bonjour
Voici mon problème. Notre serveur PHP est sous Linux. On me demande de créer des fichiers CSV et d'autoriser leur téléchargement. Problème: mes clients sont sous WinXP et veulent pouvoir ouvrir le fichier sous notepad.
Or, bien que le fichier soit créé correctement, mon problème vient des sauts de lignes, j'obtiens un caractère bizarre à la place.
Voici mon code:
Merci d'avance de votre aide.
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 function writeCSV($request, $username, $filetype, $titles, $extension="txt"){ $filename = $filetype."_".$username."_".setDateFormatted().".".$extension; $tmp = sys_get_temp_dir()."/".$filename; $out = fopen($tmp, "w"); getCsvContent($titles, $request, $out); fclose($out); system(escapeshellcmd("sed -i -e 's/$/\r/' ".$tmp)); header('Content-Type: application/force-download'); header('Content-Disposition: attachment; filename='.basename($tmp)); header("Content-Length: ".filesize($tmp)); readfile($tmp); unlink($tmp); } function getCsvContent($titles, $request, $out){ fputcsv($out, $titles); foreach($request as $index=>$elements){ fputcsv($out, $elements); } }
@++
Partager