Fork me on GitHub




« 1 (2) 3 »


Re: importer des utilisateurs.
Xoops accro
Inscrit: 15/07/2004 11:16
Messages: 4763
Salut, ce champs contient juste une insertion d'une date en seconde, au moment de la création du compte, insertion effectuée avec la fonction php : time()

Citation :
time() retourne l'heure courante, mesurée en secondes depuis le début de l'époque UNIX, (1er janvier 1970 00:00:00 GMT).


Peux-tu nous donne un exemple de date que tu as pour ton import ?
Histoire de voir quel code (ou fonction php déjà existante), il faudra utiliser pour convertir ta date formatée en date en secondes.

Peux-nous dire aussi, dans quel format tu as tes données à importer pour le moment : sont-elles encore dans ta base de données, déjà dans un fichier excel ou texte ?

Posté le : 06/08/2008 15:32
Partager Twitter Partagez cette article sur GG+
Re: importer des utilisateurs.
Newbie
Inscrit: 26/02/2007 23:12
De 67
Messages: 4
Quelle rapidité, mes respects!

Un exemple de date :
L'administrateur d'un de mes sites xoops s'est enregistré le 26/02/07. L'user_regdate me donne : 1172518996

Mon ancien cms quant à lui avait un champ user_regdate paramétré en varchar. Il me donnait une date claire. Si on reprend mon exemple ci-dessus, pour l'administrateur, le champ user_regdate m'aurait donné Fev 26, 2007.

La BD a déjà été exportée en .csv (excel), mais la BD SQL existe toujours!! Dans excel, la cellule est bien une date tout ce qu'il y a de plus classique.

Avec tes indications, je devrais d'ores et déjà réussir à faire quelque-chose.

Je te remercie donc infiniement.

Mok

Posté le : 06/08/2008 16:00
Partager Twitter Partagez cette article sur GG+
Re: importer des utilisateurs.
Xoops accro
Inscrit: 15/07/2004 11:16
Messages: 4763
Quelques manipulations avec les dates :

<?php
$date_perso 
"Feb 26, 2007";

$lstmois = array(
          
"Jan"=>"01",
          
"Feb"=>"02",
          
"Mar"=>"03",
          
"Apr"=>"04",
          
"May"=>"05",
          
"Jun"=>"06",
          
"Jul"=>"07",
          
"Aug"=>"08",
          
"Sep"=>"09",
          
"Oct"=>"10",
          
"Nov"=>"11",
          
"Dec"=>"12",
        );

  
$arr split(" "$date_perso);
  
$jour $arr[1];
  
$mois $arr[0];
  
$annee $arr[2];

$new_date $annee."-".$lstmois[$mois]."-".str_replace("," ""$jour);

echo 
"Date au format US : ".$new_date."<br />";

$my_time strtotime($new_date); 

echo 
"Date en secondes avec strtotime : ".$my_time."<br />";

echo 
"Date en secondes avec mktime : ".mktime(000$lstmois[$mois], $jour$annee)."<br />";

echo 
"Retour au format d'origine à partir du timestamp : ".date('M m, Y'$my_time);

?>


Ce qui nous donne à l'écran :
Citation :

Date au format US : 2007-02-26
Date en secondes avec strtotime : 1172444400
Date en secondes avec mktime : 1172444400
Retour au format d'origine à partir du timestamp : Feb 02, 2007


On voit qu'on peut passer sans souci de ton format à celui nécessaire à Xoops.
Il suffit de transformer ça en fonction php (enfin juste le code utile), et l'ajouter au script d'import de la page précédente.

Posté le : 06/08/2008 18:43
Partager Twitter Partagez cette article sur GG+
Re: importer des utilisateurs.
Xoops accro
Inscrit: 04/02/2003 01:54
De Le Mans
Messages: 12273
Bonsoir,

La fonction mysql unix_timestamp() devrait te permettre d'effectuer la conversion dans le format integer qu'utilise Xoops.

Si besoin, je peux te faire la conversion de la table users ton ancien cms vers xoops.

Posté le : 06/08/2008 22:23
Partager Twitter Partagez cette article sur GG+
Re: importer des utilisateurs.
Newbie
Inscrit: 26/02/2007 23:12
De 67
Messages: 4
Bonsoir,
Je me suis lançé sans vous attendre...
Tout est prêt pour la "migration".
Je lance l'opération dans quelques jours (temps nécessaire pour que les utilisateurs prennent leurs dispositions et se passent de mon CMS quelques heures).

Un grand merci à vous pour votre aide.

Posté le : 09/08/2008 22:49
Partager Twitter Partagez cette article sur GG+
Re: importer des utilisateurs.
Xoops accro
Inscrit: 16/08/2005 19:46
De Nanterre
Messages: 2331
Bonsoir,
Ca me scie les genoux de lire un sujet pareil...
Quel talent... je ne comprend rien... mais que c'est beau tous ces codes...

Blueteen... tu es un pro
A+

Posté le : 09/08/2008 23:13

eparcyl... tranquille.
Partager Twitter Partagez cette article sur GG+
Re: importer des utilisateurs.
Régulier
Inscrit: 31/01/2007 00:00
De Noiseau (94)
Messages: 327
Bonjour tout le monde !

Je viens ici car Kris m'a signaler qu'un sujet était en rapport avec mon soucis.

Je vous explique :

J'ai refait mon site Xoops et donc j'ai transférer mon ancienne base user dans la nouvelle sauf que j'ai 2 soucis :
- Il faut que je revalide 1 par 1 les membres (base de 1500 membres...).
- Quand je me connecte désormais j'ai le message comme quoi je suis connecté mais ensuite je me retrouve sous l'index d'un invité.

Kris m'a dit qu'il suffit de faire un requête SQL pour tout mettre à jour mais laquelle ???

Merci d'avance.

Posté le : 10/08/2008 13:19

Donnes et tu seras riche !
Partager Twitter Partagez cette article sur GG+
Re: importer des utilisateurs.
Xoops accro
Inscrit: 25/11/2004 12:53
De 48400 Florac - France
Messages: 3370
En fait la réponse est très bête il me semble :

Tu vas dans SystemAdmin/Groupes/Utilisateurs enregistrés et tu sélectionnes tous les users (dans le tableau de gauche) et tu les passes en utilisateurs enregistrés.
Pour les sélectionner : touches MAJ+clic gauche sur le premier et le dernier. Pour en enlever ou ajouter au cas par cas Ctrl+clic.

Philippe.

Posté le : 10/08/2008 14:02
Partager Twitter Partagez cette article sur GG+
Re: importer des utilisateurs.
Xoops accro
Inscrit: 15/07/2004 11:16
Messages: 4763
eparcyl98, meuh non, juste quelques bouts de code piqués ici et là et remis en forme

lordbdp, tu as importé tes membres de quelle façon ?
est-ce qu'ils déjà sont affectés au bon groupe, et tu as juste ton souci d'activation, ou bien, est-ce que tu dois aussi les affecter dans un groupe (utilisateurs enregistrés par exemple) ?

Ensuite pour ton autre question, tu peux passer par la base de données pour modifier ton compte utilisateur (avec phpmyadmin par exemple).

Normalement ton compte utilisateur a l'identifiant 1 (uid), est-ce le cas ?
Si oui, tu peux utiliser cette requête dans phpmyadmin (se placer sur la bonne base de données) afin de rétablir tes droits d'administrateur. Tu auras alors juste à te déconnecter et à la reconnexion ça devrait être bon.

Change 'ton_prefix' par celui de tes tables.
Tu peux changer l'uid = 1, si tu veux appliquer les droits administrateurs à un autre membre.

UPDATE `ton_prefix_usersSET `rank` = '7',
`
level` = '5' WHERE `ton_prefix_users`.`uid` = 1 LIMIT 1 ;

Posté le : 11/08/2008 09:14
Partager Twitter Partagez cette article sur GG+
Re: importer des utilisateurs.
Régulier
Inscrit: 31/01/2007 00:00
De Noiseau (94)
Messages: 327
Alors voilà ce que j'ai actuellement dans ma BDD user (exemple avec moi + un membre enregsité normalement mais qui ne l'ai plus) :

-- phpMyAdmin SQL Dump
-- version 2.8.2.4
-- http://www.phpmyadmin.net
-- 
-- 
Serveurlocalhost:3306
-- Généré le Mardi 12 Août 2008 à 18:38
-- Version du serveur5.0.27
-- Version de PHP5.2.3
-- 
-- 
Base de données: `xtopfr`
-- 

-- --------------------------------------------------------

-- 
-- 
Structure de la table `topfr__users`
-- 

CREATE TABLE `topfr__users` (
  `
uidmediumint(8unsigned NOT NULL auto_increment,
  `
namevarchar(60NOT NULL default '',
  `
unamevarchar(25NOT NULL default '',
  `
emailvarchar(60NOT NULL default '',
  `
urlvarchar(100NOT NULL default '',
  `
user_avatarvarchar(30NOT NULL default 'blank.gif',
  `
user_regdateint(10unsigned NOT NULL default '0',
  `
user_icqvarchar(15NOT NULL default '',
  `
user_fromvarchar(100NOT NULL default '',
  `
user_sigtinytext NOT NULL,
  `
user_viewemailtinyint(1unsigned NOT NULL default '0',
  `
actkeyvarchar(8NOT NULL default '',
  `
user_aimvarchar(18NOT NULL default '',
  `
user_yimvarchar(25NOT NULL default '',
  `
user_msnmvarchar(100NOT NULL default '',
  `
passvarchar(32NOT NULL default '',
  `
postsmediumint(8unsigned NOT NULL default '0',
  `
attachsigtinyint(1unsigned NOT NULL default '0',
  `
ranksmallint(5unsigned NOT NULL default '0',
  `
leveltinyint(3unsigned NOT NULL default '1',
  `
themevarchar(100NOT NULL default '',
  `
timezone_offsetfloat(3,1NOT NULL default '0.0',
  `
last_loginint(10unsigned NOT NULL default '0',
  `
umodevarchar(10NOT NULL default '',
  `
uordertinyint(1unsigned NOT NULL default '0',
  `
notify_methodtinyint(1NOT NULL default '1',
  `
notify_modetinyint(1NOT NULL default '0',
  `
user_occvarchar(100NOT NULL default '',
  `
biotinytext NOT NULL,
  `
user_intrestvarchar(150NOT NULL default '',
  `
user_mailoktinyint(1unsigned NOT NULL default '1',
  
PRIMARY KEY  (`uid`),
  
KEY `uname` (`uname`),
  
KEY `email` (`email`),
  
KEY `uiduname` (`uid`,`uname`),
  
KEY `unamepass` (`uname`,`pass`)
ENGINE=MyISAM AUTO_INCREMENT=1512 DEFAULT CHARSET=utf8 AUTO_INCREMENT=1512 ;

-- 
-- 
Contenu de la table `topfr__users`
-- 

INSERT INTO `topfr__users` (`uid`, `name`, `uname`, `email`, `url`, `user_avatar`, `user_regdate`, `user_icq`, `user_from`, `user_sig`, `user_viewemail`, `actkey`, `user_aim`, `user_yim`, `user_msnm`, `pass`, `posts`, `attachsig`, `rank`, `level`, `theme`, `timezone_offset`, `last_login`, `umode`, `uorder`, `notify_method`, `notify_mode`, `user_occ`, `bio`, `user_intrest`, `user_mailok`) VALUES (1'''lordbdp''xxxx1@talesofpirates.fr''http://www.talesofpirates.fr/''blank.gif'1192580781'''''Donnes et tu seras riche.'0'''''''''ad1cfea712ae6808f01c275f4c028651'251175'talesofpirates'1.01218235582'thread'020'''''Programmation et MMORPG'0),
(
2'''spider974''xxxxx2@hotmail.fr''''blank.gif'1192603744''''''0'ce6b9532''''''''fe546279a62683de8ca334b673420696'0001''2.01193751339'nest'010''''''1);


Si cela peut vous aider car je n'arrive même plus à accéder à la partie admin...

Posté le : 12/08/2008 18:45

Donnes et tu seras riche !
Partager Twitter Partagez cette article sur GG+

 Haut   Précédent   Suivant
« 1 (2) 3 »



Vous pouvez voir les sujets.
Vous ne pouvez pas débuter de nouveaux sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

Propulsé avec XOOPS | Graphisme adapté par Tatane, Grosdunord, Montuy337513

94 Personne(s) en ligne (82 Personne(s) connectée(s) sur Forum) | Utilisateur(s): 0 | Invité(s): 94 | Plus ...