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 :

Problème importation fichier MYSQL


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Décembre 2009
    Messages
    164
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 164
    Par défaut Problème importation fichier MYSQL
    Bonjour,

    Je sollicite votre aide concernant un requete d'importation, je souhaite importer un fichier en "LOAD DATA INFILE" dans ma base.
    J'ai effectué 2 pages comme détaillés ci-dessous:

    Recherche du fichier :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <form method="POST" action="upload.php" enctype="multipart/form-data">
         <!-- On limite le fichier à 100Ko -->
         <input type="hidden" name="MAX_FILE_SIZE" value="100000">
         Fichier : <input type="file" name="fichier">
         <input type="submit" name="envoyer" value="Envoyer le fichier">
     
    </form>
    Puis Insertion dans la base :
    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
    <?php
     
    // Connexion au serveur MySQL 
    mysql_connect("localhost", "root", "");
    // Séléction de base de données
    mysql_select_db("as");
    // On construit le chemin du fichier
    $chemin_du_fichier['fichier']['name'];
     
    // Si le fichier existe bien
    if (file_exists($chemin_du_fichier))
            {
     
                    // Requête d'enregistrement
                    mysql_query("LOAD DATA INFILE '$chemin_du_fichier'
                    INTO TABLE `archiveimport`
                    FIELDS TERMINATED BY ','
                    ENCLOSED BY '"' 
                    ESCAPED BY '\' 
                    LINES TERMINATED BY 'rn';") or die (mysql_error());
                    
                    // Fermeture de la base !
                    mysql_close();
            }
    else
            {
                    // On affiche une erreur
                    echo "Fichier introuvable \\"$chemin_du_fichier\\"<br />";
            }
    
    ?>
    Cependant le code ne fonctionne pas et je ne vois pas d'ou viens l'erreur.

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Tu as mangé un bout de ton code je pense :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $chemin_du_fichier = $_FILES['fichier']['tmp'];
    Plutot que file_exists(), utilise is_uploaded_file()
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Décembre 2009
    Messages
    164
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 164
    Par défaut
    J'ai mofiié le code qui ressemble à ça maintenant :
    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
    <?php
     
    // Connexion au serveur MySQL 
    mysql_connect("localhost", "root", "");
    // Séléction de base de données
    mysql_select_db("as");
    // On construit le chemin du fichier
    $chemin_du_fichier = $_FILES['fichier']['tmp'];
     
    // Si le fichier existe bien
    if (is_uploaded_file($chemin_du_fichier))
            {
     
                    // Requête d'enregistrement
                    mysql_query("LOAD DATA INFILE '$chemin_du_fichier'
                    INTO TABLE `archiveimport`
                    FIELDS TERMINATED BY ','
                    ENCLOSED BY '"' 
                    ESCAPED BY '\' 
                    LINES TERMINATED BY 'rn';") or die (mysql_error());
    								
                    // Fermeture de la base !
                    mysql_close();
            }
    else
            {
                    // On affiche une erreur
                    echo "Fichier introuvable \\"$chemin_du_fichier\\"<br />";
            }
    
    ?>
    Mais cela me renvoi un message erreur "Parse error: parse error in C:\wamp\www\test import\upload.php on line 19" ce qui correspond à la ligne "ESCAPED BY '\' "

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Il faut que tu echappes ton guillemet :
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Décembre 2009
    Messages
    164
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 164
    Par défaut
    J'ai modifié mon code comme ci-dessous, je n'ai plus de message d'erreur cependant le code ne trouve pas le fichier.

    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
    <?php
     
    // Connexion au serveur MySQL 
    mysql_connect("localhost", "root", "");
    // Séléction de base de données
    mysql_select_db("as");
    // On construit le chemin du fichier
    $chemin_du_fichier = $_FILES['fichier']['name'];
     
    // Si le fichier existe bien
    if (is_uploaded_file($chemin_du_fichier))
            {
     
     
                    // Requête d'enregistrement
                    mysql_query("LOAD DATA INFILE '$chemin_du_fichier'
    INTO TABLE `archiveimport` FIELDS TERMINATED BY \',\' ENCLOSED BY \'\"\' ESCAPED BY \'\\\\\' LINES TERMINATED BY \'\\r\\n\';") or die (mysql_error());
     
                    // Fermeture de la base !
                    mysql_close();
            }
    else
            {
                    // On affiche une erreur
                    echo "Fichier introuvable <br />";
            }
    ?>

  6. #6
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Tu as remis name au lieu de tmp
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  7. #7
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Décembre 2009
    Messages
    164
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 164
    Par défaut
    J'ai modifié le tmp mais le code ne trouve pas le fichier.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème import fichier.txt
    Par ndundux dans le forum Import/Export
    Réponses: 4
    Dernier message: 23/09/2008, 17h12
  2. Réponses: 3
    Dernier message: 17/07/2008, 21h59
  3. Problème Import fichier Excel
    Par yblok dans le forum VBA Access
    Réponses: 2
    Dernier message: 25/05/2008, 18h56
  4. Problème Import fichier texte
    Par Fantomas13 dans le forum VBA Access
    Réponses: 3
    Dernier message: 16/01/2008, 23h08
  5. Probléme import Fichier CSV
    Par wylls dans le forum Outils
    Réponses: 12
    Dernier message: 12/12/2006, 12h48

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