PHP export CSV
Résolu
DAG
-
gUY. -
gUY. -
Bonjour,
J'ai un problème lors de l'export d'une de mes table au format CSV.
J'ai écris le bout de code suivant :
Comme vous pouvez le voir j'ai essyé pas mal de Header...
Il me propose bien de télécharger le ficher table.csv, mais lorsque je veux le lire avec Excel : il me dit qu'il y a une erreur ! Je peux ignorer l'erreur, il continu à ouvrir le fichier, et il ne m'afficher rien.
Si j'essaie d'ouvrir le fichier avec un éditeur texte, je peux voir mes champs séparés par des ";" comme je souhaite le fiare.
Si j'essaie de l'ouvrir avec OpenOffice, il me demander quel type de fichier CSV j'utilise, je lui répond "avec spéarateur ";"" et là il me l'ouvre sans problème.
Je n'arrive pas à trouver l'erreur, et je ne comprend pas trop comment ça marche en plus...
Est-ce que qqu'un aurai un exemple qui marche avec MS Excel, ou aurai trouvé ou est le problème ??
Merci d'avance pour votre aide
J'ai un problème lors de l'export d'une de mes table au format CSV.
J'ai écris le bout de code suivant :
<?php // Liste les données de la table // ------------------------------------------- include '../bdd/connexion_bdd.php'; $resQuery = mysql_query("SELECT * FROM ayant_droit"); //header("Content-type: application/vnd.ms-excel"); // header("Content-type: application/octet-stream"); header('Content-Type: application/octet-stream; charset=iso-8859-1'); // header("content-type: application/excel; charset=iso-8859-1"); //header("Content-Type: application/csv-tab-delimited-table"); header("Content-disposition: filename=table.csv"); if (mysql_num_rows($resQuery) != 0) { // titre des colonnes $fields = mysql_num_fields($resQuery); $i = 0; while ($i < $fields) { echo mysql_field_name($resQuery, $i).";"; $i++; } echo "\n"; // données de la table while ($arrSelect = mysql_fetch_array($resQuery, MYSQL_ASSOC)) { foreach($arrSelect as $elem) { echo "$elem;"; } echo "\n"; } } ?>
Comme vous pouvez le voir j'ai essyé pas mal de Header...
Il me propose bien de télécharger le ficher table.csv, mais lorsque je veux le lire avec Excel : il me dit qu'il y a une erreur ! Je peux ignorer l'erreur, il continu à ouvrir le fichier, et il ne m'afficher rien.
Si j'essaie d'ouvrir le fichier avec un éditeur texte, je peux voir mes champs séparés par des ";" comme je souhaite le fiare.
Si j'essaie de l'ouvrir avec OpenOffice, il me demander quel type de fichier CSV j'utilise, je lui répond "avec spéarateur ";"" et là il me l'ouvre sans problème.
Je n'arrive pas à trouver l'erreur, et je ne comprend pas trop comment ça marche en plus...
Est-ce que qqu'un aurai un exemple qui marche avec MS Excel, ou aurai trouvé ou est le problème ??
Merci d'avance pour votre aide
A voir également:
- PHP export CSV
- Export favoris chrome - Guide
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Roissy piac export ✓ - Forum Consommation & Internet
- Export favoris firefox - Guide
3 réponses
Non, non c'est bon ça marche ! C"était pas ça l'erreur... Ca marche avec des " ; ". Je viens trouver l'erreur.
C'est une erreur normale !! Un fichier .csv ne doit pas commencer par la chaîne de caractère "ID" !! Allucinant !
La preuve : https://support.microsoft.com/fr-fr/help/215591
Merci bilou !
Il faut soit remplacer "ID" par 'id' ou '_ID' ou autre chose !
Voila j'en est chier pour trouver ça !! lol
C'est une erreur normale !! Un fichier .csv ne doit pas commencer par la chaîne de caractère "ID" !! Allucinant !
La preuve : https://support.microsoft.com/fr-fr/help/215591
Merci bilou !
Il faut soit remplacer "ID" par 'id' ou '_ID' ou autre chose !
Voila j'en est chier pour trouver ça !! lol
Salut,
CSV = "Comma Separated Value"
Et le comma en question c'est la virgule, pas le point-virgule. Donc sépare tes champs par des virgules et avec excel il ne devrait pas y avoir de soucis.
Ou bien tu peux prendre la tabulation comme séparateur mais en ce cas renomme l'extension de ton fichier en .xls
CSV = "Comma Separated Value"
Et le comma en question c'est la virgule, pas le point-virgule. Donc sépare tes champs par des virgules et avec excel il ne devrait pas y avoir de soucis.
Ou bien tu peux prendre la tabulation comme séparateur mais en ce cas renomme l'extension de ton fichier en .xls
Merci !