fgetcsv ne renvoie rien

Petit nouveau ! | 9 Messages

04 juil. 2013, 14:44

Bonjour,

Je tripatouille tranquillement depuis tout à l'heure mais rien n'y fait : la fonction fgetcsv ne veut rien me renvoyer ! Au debug, je ne reçois rien (même pas une chaîne vide ou null).
En revanche, curieusement, fgetc me renvoie bien le premier caractère de mon fichier. MAIS fgets ne renvoie rien non plus.
Je pensais que ça pouvait venir du csv qui passe mal mais vu que même fgets ne marche pas, il y a peut-être autre chose.
Certains d'entre vous ont-ils déjà manipulé ces fonctions et pourraient me dire ce qui est susceptible de produire cela?

Merci d'avance !

PS : je reçois un fichier depuis un file upload, je prends son nom (il est stocké dans un tmp directory) et ouvre le fichier, cette partie semble OK puis je peux lire le 1er caractère avec fgetc.

ViPHP
ViPHP | 2577 Messages

04 juil. 2013, 16:10

Eventuellement montre le code.
Est ce tu vérifies bien l'ouverture du fichier ?

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

04 juil. 2013, 17:41

salut,

+1 pour l'ouverture de fichier, ajoute un var_dump() sur la ressource fournie par fopen.
je pense que tu ne prend pas la bonne info dans le table $_FILES (tmp_name).

pour lire du csv tu peux éviter de te prendre la tête et utiliser la fonction file qui va te fournir un tableau avec une ligne de fichier par ligne de tableau.
ensuite un foreach + str_getcsv pour avoir les infos.

@+
Il en faut peu pour être heureux ......