Importer des tables en format CSV dans phpMyAdmin

Réduire
X
 
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • [RÉGLÉ] Importer des tables en format CSV dans phpMyAdmin

    Bonjour,
    J'ai besoin d'importer presque 500 utilisateurs.
    Je dispose des fichiers au format CSV avec les bonnes colonnes. (J'ai repris les colonnes de la table Users)

    Avant tout, pour tester j'ai exporté en CSV la table Users existante (qui ne contient pour le moment qu'une douzaine d'utilisateurs), j'y ai ajouté 1 utilisateur et ai ré-importé cette table.
    La table s'importe bien, mais elle ne comporte plus qu'un seul enregistrement et toutes les colonnes sont fusionnées. (Sauf la colonne params)

    Quelqu'un sait-il comment importer un fichier CSV dans phpMyAdmin ?

    Cordialement.

    Eric
    Dernière édition par Agrepe à 24/10/2019, 17h05

  • #2
    Bonjour,

    Veux-tu dire que dans la table tu n'as qu'un utilisateur ou que dans l'administration, tu n'en vois qu'un ?
    As-tu aussi renseigné la table usergroup_map ?
    "Patience et longueur de temps font plus que force ni que rage..." (La Fontaine : Le Lion et le Rat) - "Il n'y a pas de problèmes; il n'y a que des solutions" (André Gide).
    MoovJla et LazyDbBackup sur www.joomxtensions.com - FaQ sur www.fontanil.info - Site pro : www.robertg-conseil.fr chez PHPNET, sites perso chez PlanetHoster + sites gérés chez PHPNET, PlanetHoster, Ionos et OVH

    Commentaire


    • #3
      Bonjour,

      oui il y a les usergroup_map ou l'on associe l'id de l'utilisateur à celui du usergroup

      Le plus simple, c'est de passer par une extension toute simple qui répond à ce besoin avec un fichier CSV...

      How easy is it for you to register a lot of people into your Joomla! site? Do you have to do a massive user registration via CSV? J2XML - Users Importer is what you need.


      L'explication est en anglais mais il suffit de tester car libre et gratuit
      woluweb aime ceci.
      Joomla User Group (JUG) Lille : https://www.facebook.com/groups/JUGLille/

      Commentaire


      • #4
        Envoyé par RobertG Voir le message
        Bonjour,

        Veux-tu dire que dans la table tu n'as qu'un utilisateur ou que dans l'administration, tu n'en vois qu'un ?
        As-tu aussi renseigné la table usergroup_map ?
        Bonjour,
        Non il ne s'agit pas de cela.
        La table Usergroupmap contient bien les profils de test créé avec leurs appartenances aux différents groupes utilisateurs auxquels ils sont rattachés.
        J'y ai bien ajouté l'id du nouvel utilisateur avec son appartenance au groupe "Enregistré" (id2). En toutes hypothèses, à ce stade, même si l'utilisateur n'existait pas dans cette table, cela n'aurait aucune influence sur l'import dans la table users,
        Table usersgroup_map:
        Cliquez sur l'image pour l'afficher en taille normale

Nom : Capture_usersgroup_map.JPG 
Affichages : 125 
Taille : 12,2 Ko 
ID : 2008341


        Pour résumer:
        J'ai actuellement quelques utilisateurs "test" créés "traditionnellement".
        J'ai besoin maintenant de créer 382 nouveaux utilisateurs (Ils s'agit des employés de l'entreprise pour laquelle le site est développé).
        Il existe des fichiers CSV qui listent ces utilisateurs.
        L'idéal serait que je puisse ajouter ces utilisateurs à la table Users sans être obligé de les créer un à un.
        Tous ces utilisateurs doivent être, dans un premier temps, uniquement "Enregistré" (id 2)

        Donc voilà comment j'ai procédé:

        Voici le dernier enregistrement dans la table users originale:
        Cliquez sur l'image pour l'afficher en taille normale

Nom : Capture_users.JPG 
Affichages : 123 
Taille : 16,2 Ko 
ID : 2008343
        1. J'ai exporté la table originale (users) au format CSV pour Excel.
        2. J'ai ouvert cette table dans Excel et pour tester y ai ajouté seulement un utilisateur. (Voir la capture jointe)
          Cliquez sur l'image pour l'afficher en taille normale

Nom : Capture_users_csv.JPG 
Affichages : 127 
Taille : 103,2 Ko 
ID : 2008344
        3. J'ai enregistré cette liste Excel au format CSV.
        4. J'ai ré-importé cette table dans la base de données. (Voir la capture de ce que cela à fait)
          Cliquez sur l'image pour l'afficher en taille normale  Nom : Capture_users_re-importé.JPG  Affichages : 0  Taille : 17,7 Ko  ID : 2008340
        Cette table n'est pas du tout conforme à celle exportée.
        Elle ne contient plus que deux colonnes, qui sont identifiées "COL1" et "COL2".

        Ma question est : Comment faire pour importer une table CSV ?

        Cordialement.

        Eric
        Fichiers joints
        Dernière édition par Agrepe à 25/10/2019, 13h08

        Commentaire


        • #5
          Envoyé par daneel Voir le message
          Bonjour,

          oui il y a les usergroup_map ou l'on associe l'id de l'utilisateur à celui du usergroup

          Le plus simple, c'est de passer par une extension toute simple qui répond à ce besoin avec un fichier CSV...

          How easy is it for you to register a lot of people into your Joomla! site? Do you have to do a massive user registration via CSV? J2XML - Users Importer is what you need.


          L'explication est en anglais mais il suffit de tester car libre et gratuit
          Merci beaucoup daneel, je vais faire comme tu proposes.
          Cordialement.
          Eric

          Commentaire


          • #6
            Bonjour,
            Merci daneel, cette extension fonctionne bien.
            Toutefois, il y a besoin de triturer un peu les fichiers CSV.

            L'extension J2XML ne prend en considération que le séparateur ", " (virgule)

            phpMyAdmin exporte en CSV Excel avec des point-virgule et de son côté Excel ne permet l'export CSV qu'avec le séparateur point-virgule.

            Donc il faut avant l'import, changer tous les point-virgules en virgules et surtout ajouter une virgule en fin de chaque ligne, car le caractère initial de fin de ligne est un saut de paragraphe.
            Pour cela il faudra utiliser Word, ouvrir le fichier CSV dans Word, remplacer les point-virgules par des virgules et remplacer la marque de paragraphe par une virgule pour avoir une virgule en fin de ligne puis enregistrer ce fichier pour pouvoir ensuite l'importer correctement.

            Cordialement.

            Eric





            Commentaire


            • #7
              Pour cela il faudra utiliser Word, ouvrir le fichier CSV dans Word
              Malheureux ! Surtout pas dans Word, mais dans un éditeur de texte, un vrai sinon tu vas ajouter des tas de cochonneries dans ton fichier.
              En plus un vrai éditeur de texte devrait te permettre de régler les problèmes de fin de ligne.
              Lorsque l'on se cogne la tête contre un pot et que cela sonne creux, ça n'est pas forcément le pot qui est vide.
              Confucius

              Commentaire


              • #8
                Je viens de faire un test sur une de mes bases : l'export "CSV" utilise bien les virgules, alors que l'export CSV pour Excel utilise en effet les points virgules.
                Problème de version de phpMyAdmin, Agrepe ?
                "Patience et longueur de temps font plus que force ni que rage..." (La Fontaine : Le Lion et le Rat) - "Il n'y a pas de problèmes; il n'y a que des solutions" (André Gide).
                MoovJla et LazyDbBackup sur www.joomxtensions.com - FaQ sur www.fontanil.info - Site pro : www.robertg-conseil.fr chez PHPNET, sites perso chez PlanetHoster + sites gérés chez PHPNET, PlanetHoster, Ionos et OVH

                Commentaire

                Annonce

                Réduire
                Aucune annonce pour le moment.

                Partenaire de l'association

                Réduire

                Hébergeur Web PlanetHoster
                Travaille ...
                X