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

PHP & Base de données Discussion :

[CSV] Importer un fichier csv [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 165
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 165
    Par défaut [CSV] Importer un fichier csv
    Bonjour,
    je suis un peu frustrer de ne pas pouvoir faire eci, d'autant plus que je l'ai deja fait mais cette fois ca ne vas pas et que mes recherche sur le forum n'ont rein donné.
    J'ai créé un fichier .csv avec 8 colonnes que j'ai rempli
    Puis depuis MySQL, je vais sur importer et je sélectionne mon fichier et je choisi l'option CSV.
    Quand je clique "exécuter", il me mets un message d'erreur: Il n'y a rien à importer

    Mes questions sont les suivantes:
    1. Comment puis je donc importer un fichier csv dans un table sans écraser les données deja enregistrée
    2. Comment puis-je transformer mon fichier csv en un fichier text dont mes champs sont séparés par des , ou des ;

    Mille mercis

  2. #2
    Membre confirmé Avatar de Momodedf
    Inscrit en
    Juillet 2007
    Messages
    246
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations forums :
    Inscription : Juillet 2007
    Messages : 246
    Par défaut
    Pour ta premiere question :

    Sur phpMyAdmin de MySQL quand tu es sur la table où tu veux importer (au niveau de l'affichage de la structure) tout en bas tu verras un lien "Insérer des données provenant d'un fichier texte dans la table".

    De là tu arirvera sur une page pour importer ton .csv pour ne pas écraser les données déjà présentes dans ta table il suffit de ne pas cocher "Remplacer".

    Pour la seconde, un fichier .csv est en fait un ficher texte où les champs sont séparés par des ; et les lignes par des retour à la ligne.

  3. #3
    Membre expérimenté
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 165
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 165
    Par défaut
    Salut memodef,
    En fait je vois pourquoi ca marchait pas, mais ca marche toujours pas...

    En fait j'ai dabord fait le test sous EasyPhp, et en effet j'ai bien en bas, la possibilité "importer depuis un fichier texte....". En fait ca nmarchait pas parce que dans mon fichier csv j'avais une colonne vide qui disparaissait lorsque je sauvait le document. Ce que je peux comprendre puisque cette colonne je la laissait vide volontairement car elle correspond à la colonne id de mon tableau.

    Alors j'ai mis un 0 sur la premiere ligne de cette colonne pour qu'elle "reste" apres le "sauvage" de mon document et pour l'importe. Donc j'ai bien reussi a importer mon document

    Par contre depuis ma BD en production, je n'ai evidemment pas EsyPHP. J'ai phpMyAdmin2.8.0.3 et je ne trouve pas, en bas, le lien
    "Insérer des données provenant d'un fichier texte dans la tableInsérer des données provenant d'un fichier texte dans la table".
    En revanche dans le menu, en haut, j'ai un onglet "importer". La je peux selectionner un fichier text et j'ai les otpion suivant
    1 CSV
    2 CSV via LOAD DATA
    3 SQL

    J'ai choisi la premiere et la deuxieme.

    Dans les deux cas, il me mets le meme message d'erreur "Il n'y a rien a importer

    Es-ce que ca pourrait avoir avec le tyoe UTF-8 par exemple?

  4. #4
    Membre confirmé Avatar de Momodedf
    Inscrit en
    Juillet 2007
    Messages
    246
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations forums :
    Inscription : Juillet 2007
    Messages : 246
    Par défaut
    J'avoue que je ne sais pas trop quoi te dire là.
    Sur la base prod de mon boulot j'ai phpMyAdmin 2.3.1-rc1 et j'ai pourtant bien "Insérer des données provenant d'un fichier texte dans la table" au même endroit que via easyphp.

  5. #5
    Membre expérimenté
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 165
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 165
    Par défaut
    Salut
    Ok, bon ben j'ai un peu contourner mon problem en important le fichier csv sur EasPhp puis je les exporter un SQL (code) pour le reimporter dans ma base en production. C'est un peu du mélimélo, mais c'est comme ceci que j'ai pu finir mon boulot dans de bref délai. Et ca marche.

    J'ai une autre question de passage.

    Je veux ordrer l'affichage de ma base en fonction d'un champ.
    Pour cela j'ai utilisé ceci

    Mais si mon champ est vide, donc NULL, j'aimerais que le
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ORDER BY unautrechamp ASC
    ajisse sur un autre champ

    C'est possible?

  6. #6
    Membre expérimenté
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 165
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 165
    Par défaut
    je crois qu'il y a un truc du genre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ORDER BY monchamp ASC, unautrechamp ASC
    Mais ca c'est quand il y a une egalité dans le champ "monchamp",
    n'es-ce pas?

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

Discussions similaires

  1. [Toutes versions] Ventiler mon fichier .csv en plusieurs fichiers .csv
    Par X.e.N.o.N dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 10/07/2018, 05h11
  2. [CSV] Importer un fichier CSV ou OV2 dans une page PHP
    Par gpsevasion dans le forum Langage
    Réponses: 13
    Dernier message: 12/02/2009, 14h31
  3. [CSV] importer un fichier CSV
    Par Akramweb dans le forum Langage
    Réponses: 5
    Dernier message: 05/06/2008, 19h53
  4. Réponses: 3
    Dernier message: 11/06/2007, 11h20
  5. Réponses: 12
    Dernier message: 07/12/2005, 18h42

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