Bonjour,

Je suis entrain de mettre en place un script pour l'extraction de pièces jointes.
Les pièces jointes sont en format CSV de ce type :

Système linux redhat , PHP 5.2, APACHE2, MYSQL 5

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
XXXXXX;xxxxxx xxxxxx - xxxxx;xxxxxx xx xxx;xxx xx xxxx;xxxxxxx x  <--- Nom colonnes
YYYYY;YYYYYY YY y;YYYYY Y YYYY; YYYYYyyyyYY;YYYYYyyyyYYY <--DATA
Fichier csv avec champs délimités par ";"

J'ai mis en place une extraction de la pièce jointe de ce type :
Extrait du code:

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
$piece = imap_fetchbody($mail,$j,2);
if ($part->encoding == "3")
{
for ($i = 0; $i < count($part->parameters); $i++)
{
$param = $part->parameters[$i];
if ($param->attribute == "NAME")
{
$nom_fichier = $param->value;
}
else
{
$nom_fichier = "Nom de fichier introuvable";
}
}
$piece = imap_base64($piece);
}
$newfichier = fopen("/var/www/presta/data/data.csv","w+");
fwrite($newfichier,$piece);
fclose($newfichier);
}
}
Une fois la pièce jointe extraite , elle est lu par "fgetcsv" et insérée dans ma Bd puis supprimée.

Voici mon problème , lorsque mon fichier csv est extrait par mon script , il est dans un format bizarre :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
xxxx xxx;xxxxxx- xxxx;xxxxxx xx xxxxx;xxxxxxx;xxx=
xxxxx;xxxxxxx;xxxxxxxxx;xxxx;xxxxxxx;xxxxx;xxxxxxx;x=
Toutes les lignes se termine par un "=" avec nom de colonne coupée.
J'ai dessuite pensé à un problème de retour chariot, j'ai essayé "/n" et meme "/r/n" mais aucun résultat.

Si vous avez une idée ou une meilleure solution.

Merci d'avance de votre aide.