IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[CSV] script de gestion de fichier csv


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 17
    Points : 11
    Points
    11
    Par défaut [CSV] script de gestion de fichier csv
    Bonjour à tous.
    Je ne sais pas si je suis dans le bon sous forum pour poster ce message. Si ce n'est pas le cas, veuillez m'en excusez par avance.

    J'ai une grosse interrogation :
    Je veux traiter un fichier csv pour l'inclure dans une base de données.
    J'ai trouvé des scripts simples pour faire ce que je voulais.
    Je vous mets ce que j'ai fait :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    <?php
     
    if(isset($_FILES['fichier']))
    {
     
    $fichier = $_FILES['fichier']['tmp_name'];
    $handle = fopen($fichier, "r");
    $row = 1;
    $handle = fopen("$fichier","r");
    while (($data = fgetcsv($handle, 1000, ";")) !== FALSE && $row<10) 
    	{
    		$num = count($data);
    		echo "<p> $num champs sur la ligne $row: <br /></p>\n";
    		$row++;
    		for ($c=0; $c < $num; $c++) 
    		{
    			echo $data[$c] . "<br />\n";
    		}
    	}
    fclose($handle);
    }
    else
    {
    echo "pas de fichier";
    }
    ?>
    Si on regarde attentivement ce code trouvé sur pas mal de sites, on peut voir que $handle est définie 2 fois.
    Première fois :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $handle = fopen($fichier, "r");
    Deuxième fois : (deux lignes en dessous)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $handle = fopen("$fichier", "r");
    Pourquoi a-t-on besoin d'effectuer cette redéfinition de $handle ?

    Merci pour votre réponse.

  2. #2
    Membre expert
    Avatar de ThomasR
    Homme Profil pro
    Directeur technique
    Inscrit en
    Décembre 2007
    Messages
    2 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2007
    Messages : 2 230
    Points : 3 972
    Points
    3 972
    Par défaut
    Bonjour,

    À priori tu peux enlever cette ligne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $handle = fopen("$fichier", "r");

Discussions similaires

  1. [Batch] Problème: Remplacer un caractère d'un fichier .csv (Script batch)
    Par littlebear dans le forum Scripts/Batch
    Réponses: 7
    Dernier message: 04/06/2012, 16h57
  2. [VBA] Script pour compiler des fichiers csv
    Par dol75 dans le forum VBA Access
    Réponses: 1
    Dernier message: 15/01/2011, 08h25
  3. Script extraction données dans fichier CSV
    Par nollier dans le forum VBScript
    Réponses: 18
    Dernier message: 20/06/2008, 09h32
  4. [script batch] parser un fichier csv
    Par mustang-ffw02 dans le forum Windows
    Réponses: 8
    Dernier message: 09/10/2007, 13h58
  5. Gestion des fichiers CSV
    Par sony351 dans le forum C++Builder
    Réponses: 5
    Dernier message: 02/11/2006, 10h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo