intégré une base de donné utilisateur d'un site autre que joomla

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

  • intégré une base de donné utilisateur d'un site autre que joomla

    Bonjour,

    J'ai récupérer une base de donné d'une personne qui n'avait pas de site internet sous joomla, cette personne ne veu pas perdre ces clients et veut donc importer les clients dans le site joomla, est-il possible de faire cela?

    j'ai la base de donnés SQL avec les informations des clients " id , email, password etc.."

    J'utilise joomla 3.3.

    Merci

  • #2
    Re : intégré une base de donné utilisateur d'un site autre que joomla

    Intégrer dans une structure Joomla! des utilisateurs provenant d'une autre structure veut dire être capable d'insérer des infos dans plusieurs tables, avec des liens entre les données de ces tables, pour la gestion des droits et groupes notamment.
    De plus, en ce qui concerne le mot de passe, s'il est crypté en MD5, il devrait être reconnu, sinon, il faudra le régénérer.
    Donc pas simple...

    Au besoin, teste la structure des fichiers que génère J2XML pour voir si tu peux la reproduire à partir du SQL dont tu disposes.
    "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 et sites perso chez PlanetHoster + sites gérés chez PHPNET, 1and1 et OVH

    Commentaire


    • #3
      Re : intégré une base de donné utilisateur d'un site autre que joomla

      oui je pense que ca vas pas être simple.

      la table de joomla est comme ceci:
      Code:
      CREATE TABLE IF NOT EXISTS `mrc_users` (
        `id` int(11) NOT NULL AUTO_INCREMENT,
        `name` varchar(255) NOT NULL DEFAULT '',
        `username` varchar(150) NOT NULL DEFAULT '',
        `email` varchar(100) NOT NULL DEFAULT '',
        `password` varchar(100) NOT NULL DEFAULT '',
        `block` tinyint(4) NOT NULL DEFAULT '0',
        `sendEmail` tinyint(4) DEFAULT '0',
        `registerDate` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
        `lastvisitDate` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
        `activation` varchar(100) NOT NULL DEFAULT '',
        `params` text NOT NULL,
        `lastResetTime` datetime NOT NULL DEFAULT '0000-00-00 00:00:00' COMMENT 'Date of last password reset',
        `resetCount` int(11) NOT NULL DEFAULT '0' COMMENT 'Count of password resets since lastResetTime',
        `otpKey` varchar(1000) NOT NULL DEFAULT '' COMMENT 'Two factor authentication encrypted keys',
        `otep` varchar(1000) NOT NULL DEFAULT '' COMMENT 'One time emergency passwords',
        PRIMARY KEY (`id`),
        KEY `idx_name` (`name`),
        KEY `idx_block` (`block`),
        KEY `username` (`username`),
        KEY `email` (`email`)
      ) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=388 ;
      
      INSERT INTO `mrc_users` (`id`, `name`, `username`, `email`, `password`, `block`, `sendEmail`, `registerDate`, `lastvisitDate`, `activation`, `params`, `lastResetTime`, `resetCount`, `otpKey`, `otep`) VALUES
      (386, 'Super User', 'admin', '@hotmail.fr', 'xxxxxxxmotdepasse', 0, 1, '2014-10-20 18:17:31', '2015-01-03 09:35:53', '0', '', '0000-00-00 00:00:00', 0, '', ''),

      et la table de l'ancien site est comme cela:

      Code:
      CREATE TABLE IF NOT EXISTS `ps_customer` (
        `id_customer` int(10) unsigned NOT NULL AUTO_INCREMENT,
        `id_gender` int(10) unsigned NOT NULL,
        `id_default_group` int(10) unsigned NOT NULL DEFAULT '1',
        `firstname` varchar(32) NOT NULL,
        `lastname` varchar(32) NOT NULL,
        `email` varchar(128) NOT NULL,
        `passwd` varchar(32) NOT NULL,
        `last_passwd_gen` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
        `birthday` date DEFAULT NULL,
        `newsletter` tinyint(1) unsigned NOT NULL DEFAULT '0',
        `ip_registration_newsletter` varchar(15) DEFAULT NULL,
        `newsletter_date_add` datetime DEFAULT NULL,
        `optin` tinyint(1) unsigned NOT NULL DEFAULT '0',
        `secure_key` varchar(32) NOT NULL DEFAULT '-1',
        `note` text,
        `active` tinyint(1) unsigned NOT NULL DEFAULT '0',
        `is_guest` tinyint(1) NOT NULL DEFAULT '0',
        `deleted` tinyint(1) NOT NULL DEFAULT '0',
        `date_add` datetime NOT NULL,
        `date_upd` datetime NOT NULL,
        PRIMARY KEY (`id_customer`),
        KEY `customer_email` (`email`),
        KEY `customer_login` (`email`,`passwd`),
        KEY `id_customer_passwd` (`id_customer`,`passwd`),
        KEY `id_gender` (`id_gender`)
      ) ENGINE=InnoDB  DEFAULT CHARSET=utf8 AUTO_INCREMENT=187 ;
      
      INSERT INTO `ps_customer` (`id_customer`, `id_gender`, `id_default_group`, `firstname`, `lastname`, `email`, `passwd`, `last_passwd_gen`, `birthday`, `newsletter`, `ip_registration_newsletter`, `newsletter_date_add`, `optin`, `secure_key`, `note`, `active`, `is_guest`, `deleted`, `date_add`, `date_upd`) VALUES
      (1, 1, 1, 'Patrick', 'DUPONT', '@live.com', '978d7b1ca26457a7b0c63b9ae5048c7c', '2012-06-08 12:42:07', '1970-01-15', 1, NULL, NULL, 1, '47ce86627c1f3c792a80773c5d2deaf8', NULL, 1, 0, 0, '2012-06-08 14:42:07', '2012-06-08 14:42:07'),
      je pense qu'il est possible de rajouter mai ca vas me prendre pas mal de temps car il vas falloire que je fasse ligne par ligne et de faire correspondre les valeurs au bon emplacement. et pour l'ID est ce que je dois mettre une valeur obigatoire ou si je met rien ca vas s'attribuer automatiquement?

      Commentaire


      • #4
        Re : intégré une base de donné utilisateur d'un site autre que joomla

        Ne remplir que la table "users" ne te servira à rien car faute d'appartenance à un groupe, ils ne seront pas reconnus, et cette appartenance n'est pas présente dans la table users. Il est indispensable que tu insères aussi des lignes correspondantes dans d'autres tables pour la gestion des groupes auxquels appartiendront les users, donc connaître lors de la création de tes requêtes l'ID des membres pour pouvoir les inscrire aussi dans les autres tables.
        "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 et sites perso chez PlanetHoster + sites gérés chez PHPNET, 1and1 et OVH

        Commentaire


        • #5
          Re : intégré une base de donné utilisateur d'un site autre que joomla

          Bonjour,

          Il doit être possible d'usiliser un produit genre userport http://extensions.joomla.org/extensi...xport/userport à condition de reformater la base d'origine (via soit phpMyAdmin, soit un outil genre MySQL Workbench.

          Si la table utilise des champs autres, un outil genre Community Builder pourrait bien être la solution en permettant d'importer le profil complet avec un produit genre CB Juice (et là, attention de bien lire la documentation avant pour le mapping des champs).
          Pas de demande de support par MP.
          S'il n'y a pas de solution, c'est qu'il n'y a pas de problème (Devise Shadok)

          Commentaire


          • #6
            Re : intégré une base de donné utilisateur d'un site autre que joomla

            Salut,
            il m'est arrivé d'utiliser CBJuice pour CommunityBuilder, recommandé par Jisse03, et qui fonctionne très bien.

            En revanche, toujours comme le recommande Jisse03, il faut lire TRES attentivement les indications.
            Et ce n'est pas super simple à manipuler.
            Leur forum est indispensable :
            JoomlaCode > Projects > CBJuice > Browse Discussion
            http://joomlacode.org/gf/project/cbjuice/forum/

            Le truc est d'exporter la bdd initiale CORRECTEMENT en .csv
            Donc, de la formatter et de l'adapter très précisément en fonction de la bdd d'arrivée, dans ce cas, pour Community Builder et Joomla.
            Formattage de la bdd de départ possible via PHPMyAdmin. C'est d'ailleurs là qu'on se rend compte que PHPMyAdmin, bien que pratique, est finalement assez rigide. Sur Mac, j'utilise SequelPro, plus souple.
            Formattage possible aussi bien sur, dans Excel. Le pb avec Excel est le formattage d'export du fichier .csv, pas toujours très rigoureux.
            Essayer aussi avec la version Excel de LibreOffice.

            ... et réviser ses commandes SQL, indispensable.

            Aussi, regarder là :
            Joomla! Extensions Directory - Data Import & Export
            http://extensions.joomla.org/categor...mport-a-export
            Un message d’erreur sur votre site Joomla ... ayez le reflexe de consulter lla base de connaissance : https://kb.joomla.fr

            Ce forum, vous l'aimez ? il vous a sauvé la vie ? Vous y apprenez chaque jour ? Alors adhérez à l'AFUJ https://www.joomla.fr/association/adherer

            Commentaire


            • #7
              table

              bonjour et merci pour votre aide.

              par soucis de temps je n'ai pu tester CBjuice, je n'ai pas u le temps de traduire tout ca!

              alors j'ai pris mon courage à 2 mains, non, je dirais plutôt j'ai pris mon clavier et la souris dans mes deux mains et la j'ai fais ligne par ligne.

              Pour répondre à robertg
              Ne remplir que la table "users" ne te servira à rien car faute d'appartenance à un groupe, ils ne seront pas reconnus,
              alors dans la table users avec notepad+ j'ai creer 187 nouvelles lignes et sachant que l' AUTO_INCREMENT=388 j'ai commencer à numeroter à partir de 388 jusqu’à 575
              j'ai ensuite remplacer toute la parti en ROUGE de la base principal de joomla par les infos de l'ancienne table (B) de couleur BLEU

              A (386, 'Super User', 'admin', '@hotmail.fr', 'xxxxxxxmotdepasse', 0, 1, '2014-10-20 18:17:31', '2015-01-03 09:35:53', '0', '', '0000-00-00 00:00:00', 0, '', ''),


              B (1, 1, 1, 'Patrick', 'DUPONT', '@live.com', '978d7b1ca26457a7b0c63b9ae5048c7c', '2012-06-08 12:42:07', '1970-01-15', 1, NULL, NULL, 1, '47ce86627c1f3c792a80773c5d2deaf8', NULL, 1, 0, 0, '2012-06-08 14:42:07', '2012-06-08 14:42:07'),

              En gros au depart ca me donné ca:

              CREATE TABLE IF NOT EXISTS `mrc_users` (
              `id` int(11) NOT NULL AUTO_INCREMENT,
              `name` varchar(255) NOT NULL DEFAULT '',
              `username` varchar(150) NOT NULL DEFAULT '',
              `email` varchar(100) NOT NULL DEFAULT '',
              `password` varchar(100) NOT NULL DEFAULT '',
              `block` tinyint(4) NOT NULL DEFAULT '0',
              `sendEmail` tinyint(4) DEFAULT '0',
              `registerDate` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
              `lastvisitDate` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
              `activation` varchar(100) NOT NULL DEFAULT '',
              `params` text NOT NULL,
              `lastResetTime` datetime NOT NULL DEFAULT '0000-00-00 00:00:00' COMMENT 'Date of last password reset',
              `resetCount` int(11) NOT NULL DEFAULT '0' COMMENT 'Count of password resets since lastResetTime',
              `otpKey` varchar(1000) NOT NULL DEFAULT '' COMMENT 'Two factor authentication encrypted keys',
              `otep` varchar(1000) NOT NULL DEFAULT '' COMMENT 'One time emergency passwords',
              PRIMARY KEY (`id`),
              KEY `idx_name` (`name`),
              KEY `idx_block` (`block`),
              KEY `username` (`username`),
              KEY `email` (`email`)
              ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=576 ;

              (388, 'Patrick', 'DUPONT', '@live.com', '978d7b1ca26457a7b0c63b9ae5048c7c', 0, 1, '2014-10-20 18:17:31', '2015-01-03 09:35:53', '0', '', '0000-00-00 00:00:00', 0, '', ''),
              (389,.....VIDE........, 0, 1, '2014-10-20 18:17:31', '2015-01-03 09:35:53', '0', '', '0000-00-00 00:00:00', 0, '', ''),
              (390,.....VIDE........, 0, 1, '2014-10-20 18:17:31', '2015-01-03 09:35:53', '0', '', '0000-00-00 00:00:00', 0, '', ''),
              (391,.....VIDE........, 0, 1, '2014-10-20 18:17:31', '2015-01-03 09:35:53', '0', '', '0000-00-00 00:00:00', 0, '', ''),
              (575,'jacqueline', 'dauri', 'dauri@hotmail.com', '978d7b1ca26457a7b0c63b9ae5048c7c', 0, 1, '2014-10-20 18:17:31', '2015-01-03 09:35:53', '0', '', '0000-00-00 00:00:00', 0, '', '');
              ETC....!

              Biensur ils sont tous connecter le même jour et même heure

              il doit y avoir que les nouveaux membres dans la table, ne pas laisser les anciens du genre admin etc sinon ca vas mettre une erreur.

              ensuite il faut bien s'assuré de modifier l' AUTO_INCREMENT sachant que mon dernier utilisateur obtiens le numero 575 je met AUTO_INCREMENT à 576 je pense à bien verifier que mon dernier utilisateur posséde bien le point virgule a la fin de la ligne.

              la base User seule est importer il n'y a pas d'appartenance dans un groupe mai ils ont déjà un ID, de ce fait on ce connecte dans joomla, on vas dans la gestion des utilisateur ils apparaîtrons mai sans aucun groupe en appartenance, il faut sélectionné tous les membres qui n'ont pas d'appartenance de groupe puis clicqué sur "Traitement" puis "sélectionné pour le groupe enregistré et validé".

              Bon peux etre que votre outil aurai pu m'aider je vais essayer de me pencher dessus mai faute de temps!!!

              J'ai perdu plusieurs heures......! n'ayant pas u de temps pour transférer les clients j'ai du improvisé.

              Commentaire


              • #8
                Re : table

                après ca je vais rêver de MYSQL toute la nuit...

                Commentaire

                Annonce

                Réduire
                1 sur 2 < >

                C'est [Réglé] et on n'en parle plus ?

                A quoi ça sert ?
                La mention [Réglé] permet aux visiteurs d'identifier rapidement les messages qui ont trouvé une solution.

                Merci donc d'utiliser cette fonctionnalité afin de faciliter la navigation et la recherche d'informations de tous sur le forum.

                Si vous deviez oublier de porter cette mention, nous nous permettrons de le faire à votre place... mais seulement une fois
                Comment ajouter la mention [Réglé] à votre discussion ?
                1 - Aller sur votre discussion et éditer votre premier message :


                2 - Cliquer sur la liste déroulante Préfixe.

                3 - Choisir le préfixe [Réglé].


                4 - Et voilà… votre discussion est désormais identifiée comme réglée.

                2 sur 2 < >

                Assistance au forum - Outil de publication d'infos de votre site

                Compatibilité: PHP 4.1,PHP4, 5, 6DEV MySQL 3.2 - 5.5 MySQLi from 4.1 ( @ >=PHP 4.4.9)

                Support Version de Joomla! : | J!3.0 | J!2.5.xx | J!1.7.xx | J!1.6.xx | J1.5.xx | J!1.0.xx |

                Version française (FR) D'autres versions sont disponibles depuis la version originale de FPA

                UTILISER À VOS PROPRES RISQUES :
                L'exactitude et l'exhaustivité de ce script ainsi que la documentation ne sont pas garanties et aucune responsabilité ne sera acceptée pour tout dommage, questions ou confusion provoquée par l'utilisation de ce script.

                Problèmes connus :
                FPA n'est actuellement pas compatible avec des sites Joomla qui ont eu leur fichier configuration.php déplacé en dehors du répertoire public_html.

                Installation :

                1. Téléchargez l'archive souhaitée : http://afuj.github.io/FPA/

                Archive zip : https://github.com/AFUJ/FPA/zipball/master

                2. Décompressez le fichier de package téléchargé sur votre propre ordinateur (à l'aide de WinZip ou d'un outil de décompression natif).

                3. Lisez le fichier LISEZMOI inclus pour toutes les notes de versions spécifiques.

                4. LIRE le fichier de documentation inclus pour obtenir des instructions d'utilisation détaillées.

                5. Téléchargez le script fpa-fr.php à la racine de votre site Joomla!. C'est l'endroit que vous avez installé Joomla et ce n'est pas la racine principale de votre serveur. Voir les exemples ci-dessous.

                6. Exécutez le script via votre navigateur en tapant: http:// www. votresite .com/ fpa-fr.php
                et remplacer www. votresite .com par votre nom de domaine


                Exemples:
                Joomla! est installé dans votre répertoire web et vous avez installé la version française du fichier FPA:
                Télécharger le script fpa-fr.php dans: /public_html/
                Pour executer le script: http://www..com/fpa-fr.php

                Joomla! est installé dans un sous-répertoire nommé "cms" et vous avez installé la version française du fichier FPA:
                Télécharger le script fpa-fr.php dans: /public_html/cms/
                Pour executer le script: http://www..com/cms/fpa-fr.php

                En raison de la nature très sensible de l'information affichée par le script FPA, il doit être retiré immédiatement du serveur après son utilisation.

                Pour supprimer le script de votre site, utilisez le lien de script de suppression fourni en haut de la page du script. Si le lien de suppression échoue pour supprimer le script, utilisez votre programme FTP pour le supprimer manuellement ou changer le nom une fois que le script a généré les données du site et le message publié sur le forum. Si le script est toujours présent sur le site, il peut être utilisé pour recueillir suffisamment d'informations pour pirater votre site. Le retrait du script empêche des étrangers de l'utiliser pour jeter un oeil à la façon dont votre site est structuré et de détecter les défauts qui peuvent être utilisé à vos dépends.
                Voir plus
                Voir moins

                Partenaire de l'association

                Réduire

                Hébergeur Web PlanetHoster
                Travaille ...
                X