Lire fichier csv [Résolu]

cs_keket 91 Messages postés lundi 25 juillet 2005Date d'inscription 18 mai 2010 Dernière intervention - 31 janv. 2008 à 08:32 - Dernière réponse : malalam 10918 Messages postés lundi 24 février 2003Date d'inscription 2 mars 2010 Dernière intervention
- 31 janv. 2008 à 19:47
Bonjour, je reviens vous voir pour un problème avec un fichier csv. je travaille en ce moment sur un système d'importation.

J'arrive biensur a apporter le fichier, mais n'arrive pas a le lire.


voila mon code source :


         $h= fopen ($file, "r");

        $cpt=0;

        while($rep=fgetcsv($h,filesize($file),''))

        {

            $ligne[$cpt]=$rep[0];

            $cpt++;

        }

        fclose($h);

        //on charge les lignes de la table

        for($i=0;$i<$cpt;$i++)

        {

            $tab[$i]=array();

            $tab[$i]=split(";",$ligne[$i]);

        }


je n'arrive jamais a rentrer dans la première boucle (while)

et voici mon fichier .csv :


CIVILITE;NOM;PRENOM;VIP;TELEPHONE;FAX;PORTABLE;MAIL;

;DUPOND;Mauricette;Oui;05XXXXXXXX;03XXXXXXXXX;06XXXXXXXX;


Est-ce-que quelqu'un pourrait m'aider ?

       
Afficher la suite 

Votre réponse

8 réponses

Meilleure réponse
cs_keket 91 Messages postés lundi 25 juillet 2005Date d'inscription 18 mai 2010 Dernière intervention - 31 janv. 2008 à 09:10
3
Merci
Voici la solution a mon problème :
       $file="C:/txt.csv";
        $h = fopen ($file, "r") or die("Cannot open $file");
        $cpt=0;
        while($rep=fgetcsv($h,filesize($file)))
        {
            $ligne[$cpt]=$rep[0];
            $cpt++;
        }
        fclose($h);
        $caract_remplace=";";
        $caract_place=",";
        $coma=0;
        //on charge les lignes de la table
        for($i=0;$i<$cpt;$i++)
        {
            $tab[$i]=array();
            $tab[$i]=split(";",$ligne[$i]);
        }
       
        echo$tab[0][0];
        echo$tab[0][1];

Merci cs_keket 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 93 internautes ce mois-ci

Commenter la réponse de cs_keket
cs_mike17 19 Messages postés mardi 20 mai 2003Date d'inscription 3 mars 2009 Dernière intervention - 31 janv. 2008 à 08:44
0
Merci
Salut,

c'est peut-être là : while($rep==fgetcsv($h,filesize($file),''))

essai déjà ca.
Commenter la réponse de cs_mike17
cs_keket 91 Messages postés lundi 25 juillet 2005Date d'inscription 18 mai 2010 Dernière intervention - 31 janv. 2008 à 08:55
0
Merci
Merci d'avoir répondu, mais sa ne change pas mon problème, au contraire, cela fait une boucle de la mort, .
soit mon problème se situe qur le while :   while($rep==fgetcsv($h,filesize($file),''))
soit c'est un problème dans mon csv ^^.
Commenter la réponse de cs_keket
cs_keket 91 Messages postés lundi 25 juillet 2005Date d'inscription 18 mai 2010 Dernière intervention - 31 janv. 2008 à 09:03
0
Merci
je pense que j'ai cerner mon problème. il n'arrive pas a ouvrir le fichier !!!

voici ma ligne : $h = fopen ($file, "r") or die("Cannot open $file");

et voila la reponse : Cannot open contact.csv !!!!
Commenter la réponse de cs_keket
Teclis01 1423 Messages postés mardi 14 décembre 2004Date d'inscription 29 décembre 2012 Dernière intervention - 31 janv. 2008 à 09:33
0
Merci
J'avais fait ça ya quelques temps... si ça peut t'aider a factoriser

http://www.codyx.org/snippet_lire-fichier-csv_469.aspx

--------------------------------------------------------------------------------------------------
         Il vaut mieux poser une question et passer pour bête que le rester toute sa vie
Commenter la réponse de Teclis01
cs_keket 91 Messages postés lundi 25 juillet 2005Date d'inscription 18 mai 2010 Dernière intervention - 31 janv. 2008 à 10:40
0
Merci
Merci de ton coup de main mais je peut pas utiliser ta méthode puisque je travail en php 4.0 c'est un petit problème.
Commenter la réponse de cs_keket
Teclis01 1423 Messages postés mardi 14 décembre 2004Date d'inscription 29 décembre 2012 Dernière intervention - 31 janv. 2008 à 11:08
0
Merci
Je revois le code est ce n'est pas du php5 me semble...
c'est juste une fonction tirée d'une de mes classe (qui elle était en php5)
Essaye ça devrait fonctionner (attention le debug est actif)
--------------------------------------------------------------------------------------------------
         Il vaut mieux poser une question et passer pour bête que le rester toute sa vie
Commenter la réponse de Teclis01
malalam 10918 Messages postés lundi 24 février 2003Date d'inscription 2 mars 2010 Dernière intervention - 31 janv. 2008 à 19:47
0
Merci
Hello,

<?php
$aLines = file($sFile);
foreach($aLines as $sLine) {
    $aCols = explode(';', $sLine);
    echo'',print_r($aCols, true),'

';
}
?>
Commenter la réponse de malalam

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.