Bonjour,
J'ai un petit problème d'import CSV, mon code suivant fonctionne bien avec des CSV séparé par virgule et texte séparé par des guillemets, par contre si le CSV est séparé par des point-virgules tout fout foire :(
En d'autre terme, si le fichier CSV est fabriqué par microsoft : il vous fait un CSV avec ;
Si le fichier est fabriqué avec open office : il vous fait un CSV avec ,
Alors que pour moi csv cela veut dire coma separated value.
Bref voici le code en question
Code PHP :
$content_dir = 'import_csv/tmp/';
$tmp_file = $_FILES['fichiercsv']['tmp_name'];
if (!is_uploaded_file($tmp_file)) {
exit("The file is lost");
}
$type_file = $_FILES['fichiercsv']['type'];
$name_file = $_FILES['fichiercsv']['name'];
if (!move_uploaded_file($tmp_file, $content_dir . $name_file)) {
exit("Impossible to copy the file to $content_dir");
}
$file = "$content_dir" . "$name_file";
if (file_exists($file)) {
$fic = fopen($file, 'rb');
} else {
exit("file dont exist");
}
for ($ligne = fgetcsv($fic, 1024,';'); !feof($fic); $ligne = fgetcsv($fic, 1024,';')) {
echo "<tr>";
$j = sizeof($ligne);
for ($i = 0; $i < $j; $i++) {
echo "<td>$ligne[$i]</td>";
}
echo "</tr>";
$nbLigne++;
}
Merci