Création de csv

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Création de csv

par Xenon_54 » 04 janv. 2007, 16:42

Super! J'avais jamais vu ces fonctions.

On en apprend à tous les jours. :P

par netsupra » 04 janv. 2007, 15:47

Salut,
php a des fonctions dediées au csv :
fgetcsv()
fputcsv()

par jyer » 04 janv. 2007, 15:39

parfait, merci bcp.
J'avais entre temps résolu le problme en mettant des | et en configurant excel en conséquence...

par ouckileou » 04 janv. 2007, 15:11

Création de csv

par jyer » 04 janv. 2007, 15:04

Bonjour,
J'suis en train de créer un site et j'aimerai pouvoir générer un fichier csv afin que les données récoltées par le formulaire puissent être importées dans un fichier excel.
 $datedujour = date('d/m/y-H:i:s');
    	$filename="../test.csv";
    	$fl=fopen($filename,"a+");
fwrite($fl,"$datedujour;$vtitle;$vfirst_name;$vlast_name;[...]$vlunch_veg\n\r");
		fclose($fl);
Sans surprise, ce petit code fonctionne à merveille. Seulement deux petits problèmes pointent leur nez lorsqu'on le test à font:
1. Pour un fichier csv "en normes" il faudrait que chaque donnée soit encadrée par "...". Ceci n'est pas possible car fwrite nécessite que toutes les données soit comprises dans "...". Ceci n'est cependant pas très grave, puisque oo a pu lire comme même.
2. Plus grave, le séparateur utilisé est ;. Ceci pose problème lorsqu'une donnée contient un é, è, à etc qui se traduit dans mon fichier par é &eagrave; ou &aagrave;. Ainsi, un prénom comme Jéremi va être reporté Jéremi dans le fichier csv. Excel ou oo va alors considéré que Jéremi est au fait deux champs (j&eacute et remi) et remi prendra donc la place de la valeur suivante, créant un déplacement de toutes les valeurs et foutre le bordel dans le tableau.
Donc --> peut-on faire en sorte que les caractères avec des aigus ou graves soit reportés "juste" dans le fichier csv. En d'autre termes, que Jéremi soit écrit Jéremi dans le fichier csv et non Jéremi?
J'espère avoir été compris.
Merci.