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 :

[PHP-JS] Undefined offset > Incompréhensible <


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de JmL40
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    348
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 348
    Par défaut [PHP-JS] Undefined offset > Incompréhensible <
    Bonjour,

    Je cherche à modifier un script PHP permettant d'importer des données contenues dans un fichier CSV, vers une BD MySQL.

    Le problème est que le fichier d'origine contient une erreur du type : Undefined offset.

    Cela fait une heure voir plus que je cherche la solution et sans succès j'ai essayé de déclarer un tableau $liste = array(); de redefinir les indices du tableau...

    Je pense que le problème vient de la fonction explode du moins de ce que liste récupère.

    Je vous donne le code :

    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
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
     
    while (!feof($fp))  // On parcours le fichier
    {
        $ligne = fgets($fp,4096);  // On se déplace d'une ligne
     
        $liste = explode($separateur,$ligne);  // Champs séparés par |
    	echo $liste[0];
    	echo $liste[1];
    // ici important
     
        $col1 = $liste[0];
        $col2 = $liste[1];
        $col3 = $liste[2];
        $col4 = $liste[3];
        $col5 = $liste[4];
        $col6 = $liste[5];
     
        if (trim($col1)!= '')                     // si fin fichier
          echo  "<tr>";
     
        echo  "<td>$col1</td>";
        echo  "<td>$col2</td>";
        echo  "<td>$col3</td>";
        echo  "<td>$col4</td>";
        echo  "<td>$col5</td>";
        echo  "<td>$col6</td>";
        echo  "</tr>";
     
     
    // important dans la base SQL
    $query="insert into fichier (col1,col2,col3,col4,col5,col6) ";
    $query.="values ('$col1','$col2','$col3','$col4','$col5','$col6') ";
    $resul=mysql_query($query);
    if (!$resul)  echo "Impossible d'ajouter\n";
     
    }
    En espérant avoir des réponses, merci merci !

    Cordialement

  2. #2
    Membre Expert Avatar de guigui5931
    Profil pro
    Chef de projet NTIC
    Inscrit en
    Avril 2006
    Messages
    1 667
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 667
    Par défaut
    A quelle ligne ce situe l'erreur?
    Dans ton fichier CSV tu es bien sur d'avoir 6 colonne (et donc 5 |)?

  3. #3
    Membre éclairé Avatar de JmL40
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    348
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 348
    Par défaut
    Ce sont les lignés 41 à 46, donc ces lignes :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
        $col1 = $liste[0];
        $col2 = $liste[1];
        $col3 = $liste[2];
        $col4 = $liste[3];
        $col5 = $liste[4];
        $col6 = $liste[5];
    Voila pour les lignes !

    Merci pour ta réponses

  4. #4
    Membre chevronné

    Avatar de Deepin
    Homme Profil pro
    Ingénieur - Chef de projet Modélisation/Simulation
    Inscrit en
    Avril 2004
    Messages
    3 164
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Afrique Du Sud

    Informations professionnelles :
    Activité : Ingénieur - Chef de projet Modélisation/Simulation
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2004
    Messages : 3 164
    Par défaut
    Salut,
    pour ce qui du traitement des fichiers csv tu as une fonction assez sympa fgetcsv(). je te conseille de regarder par ici ya des exemples nickel : http://us.php.net/manual/en/function.fgetcsv.php
    ++ et bon courage

Discussions similaires

  1. Erreur php : "Notice: Undefined offset: 1"
    Par bobette16 dans le forum Langage
    Réponses: 3
    Dernier message: 08/04/2013, 09h44
  2. [MySQL] Erreur de programmation PHP & MySQL (Notice: Undefined offset: 890)
    Par petit.quent dans le forum PHP & Base de données
    Réponses: 11
    Dernier message: 29/12/2011, 14h38
  3. [MySQL] Problème message PHP / Undefined offset
    Par lemzo84 dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 09/11/2011, 13h40
  4. undefined offset en php
    Par zabdaniel dans le forum Langage
    Réponses: 4
    Dernier message: 08/06/2008, 10h10

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