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] Importation cvs -> SQL problème de controle


Sujet :

Langage PHP

  1. #1
    Nouveau Candidat au Club
    Inscrit en
    Juin 2007
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 2
    Points : 1
    Points
    1
    Par défaut [CSV] Importation cvs -> SQL problème de controle
    Bonjour,
    J'ai réalisé un fichier d'importation du format csv vers mes tables SQL.
    Le fichier marche super mais je voudrais pouvoir laisser les colonnes excels en début de fichier.
    En effet lorsque je transforme le xls avec excel, pour que ce la fonctionne bien, je dois commencer par la première ligne et supprimer les lignes en haut de page.
    Pour information: j'ouvre mon fichier et je le parcourt, par contre mon parcourt commence dès le début.
    voici les quelques lignes du début du parcourt:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    while (!feof($fp))  // On parcourt le fichier
    {
        $ligne = fgets($fp,4096); 
    	 // On se déplace d'une ligne
    	 $liste = explode($separateur,$ligne);  
                 // Champs séparés par ;
    	//parcourt du fichier csv et affectation de chaque variable à   chaque valeur
    	//test d'affichage à chaque ligne voire si l'on entre bien dans la boucle
     
    			$col0 = $liste[1];
    			echo 'case zéro okay </BR>';
    			$col1 = $liste[2];
    			echo 'première case okay </BR>';
    			$col2 = $liste[3];
    Si quelqu'un pouvai me guider pour commencer l'importation quand je veux je suis preneur.
    Merci d'avance.

  2. #2
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 327
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 327
    Points : 15 670
    Points
    15 670
    Par défaut
    puisque tu lis le fichier en entier tu peux commencer par utilise la fonction http://php.net/file
    ensuite tu as juste besoin d'un test pour faire un traitement spécial pour la première ligne
    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
    $contenu = file('fichier.csv');
     
    $traitementPremierLigneFait = FALSE;
     
    foreach ($contenu as $ligne) {
        if (!$traitementPremierLigneFait) {
            // traitement de la première ligne
            // ...    
     
            $traitementPremierLigneFait = TRUE;
        } else {
            $liste = explode($separateur, $ligne);  
            // ... suite
        }
    }

  3. #3
    Nouveau Candidat au Club
    Inscrit en
    Juin 2007
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    Citation Envoyé par mathieu
    puisque tu lis le fichier en entier tu peux commencer par utilise la fonction http://php.net/file
    ensuite tu as juste besoin d'un test pour faire un traitement spécial pour la première ligne
    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
    $contenu = file('fichier.csv');
     
    $traitementPremierLigneFait = FALSE;
     
    foreach ($contenu as $ligne) {
        if (!$traitementPremierLigneFait) {
            // traitement de la première ligne
            // ...    
     
            $traitementPremierLigneFait = TRUE;
        } else {
            $liste = explode($separateur, $ligne);  
            // ... suite
        }
    }

    Ouais je vois bien, le problème c'est que je ne sais pas si il y a une ou plusieurs ligne avant le début du controle. ( Le fichier ce n'est pas moi l'édite, c'est une personne pour qui ça ne doit pas être une contrainte de mettre plein de choses avant son tableau de BD), mon rôle est de faciliter au mieu la souplesse du fichier excel. Vous voyez ce que je veux dire ?

Discussions similaires

  1. importer csv ou txt dans SQL SERVER
    Par db48752b dans le forum ASP
    Réponses: 0
    Dernier message: 13/11/2012, 10h22
  2. Réponses: 1
    Dernier message: 16/02/2011, 23h52
  3. [phpMyAdmin] Importer un csv dans une table SQL
    Par Mohican69 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 4
    Dernier message: 17/08/2010, 13h07
  4. Réponses: 2
    Dernier message: 27/05/2007, 13h26
  5. [SQL] Problème exécution sql pour insertion fichier csv
    Par Kyvin dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 20/08/2006, 17h47

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