UNbridge Coppermine from SMF UNbridge Coppermine from SMF
 

News:

cpg1.5.48 Security release - upgrade mandatory!
The Coppermine development team is releasing a security update for Coppermine in order to counter a recently discovered vulnerability. It is important that all users who run version cpg1.5.46 or older update to this latest version as soon as possible.
[more]

Main Menu

UNbridge Coppermine from SMF

Started by ~phocas~, April 05, 2007, 04:28:24 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

~phocas~

Currently, I have coppermine bridged with SMF and it was only recently that I converted the user base from phpBB to SMF.  That worked pretty good actually.

Regardless, I have decided that I am no longer interested in administering 3 pieces of software and the constant upgrades that go with that... and I want Coppermine ONLY.  (the enhancements you guyz are making are awesome and are slowly eliminating the need for any other software to be integrated!)

Anyhow... I thought I had found a post on here at one time that contained a procedure for extracting the user-base from SMF's dB without having to manually move everything.

Has anyone seen this post?  I have been searching for a couple of days and just can't find it again.  :P

Joachim Müller

There's no pre-made script available that can do what you're up to afaik.

If you know your way around in phpMyAdmin you could easily come up with a conversion script. Here's a sample a dump of SMF's members table:
QuoteINSERT INTO `smf_members` VALUES (1, 'admin', 1081202400, 201, 1, '', 1147361472, 'Admin', 0, 0, '', 'c823699a6f8080490862a12dadf22a3075a4bbe9', 'bla@email.com', '', 0, '0001-01-01', '', '', '', '', '', '', '', 0, 1, '', '', 0, '', 0, 0, 0, '', 1, 1, '172.26.17.126', '', '', 4, 1, '', 8, '', '', 6, 15549, '2f27', '', '', 0, 2);
INSERT INTO `smf_members` VALUES (2, 'tester', 1093298400, 4, 0, '', 1115995422, 'tester', 0, 0, '', '8e3a3e8f977f9a1b8902ea970e8b22b7', 'tester@some.com', '', 0, '0001-01-01', '', '', '', '', '', '', '', 0, 1, '', '', 0, 'foo', 1, 0, 0, '', 1, 1, '172.26.17.126', '', '', 4, 1, '', 6, '', '', 4, 438, '', '', '', 0, 2);
(with more data in it of course).

The dump of a coppermine user table will look like this:
QuoteINSERT INTO `cpg140_users` VALUES (1, 1, 'YES', 'admin', 'c823699a6f808sdf0490862a12dadhhhf22a5a4bbe9', '2006-09-11 19:12:49', '2004-12-09 17:33:32', '', 'user@some.com', '', '', '', '', '', '', '');
INSERT INTO `cpg140_users` VALUES (2, 2, 'YES', 'tester', 'dfhdfhgdfhgdfg', '2005-02-25 19:23:17', '2004-12-09 18:30:44', '6', '', '', '', '', '', '', '', '');

What we have is this: ID_MEMBER, memberName, dateRegistered, posts, ID_GROUP, lngfile, lastLogin, realName, instantMessages, unreadMessages, pm_ignore_list, passwd, emailAddress, personalText, gender, birthdate, websiteTitle, websiteUrl, location, ICQ, AIM, YIM, MSN, hideEmail, showOnline, timeFormat, signature, timeOffset, avatar, pm_email_notify, karmaBad, karmaGood, usertitle, notifyAnnouncements, notifyOnce, memberIP, secretQuestion, secretAnswer, ID_THEME, is_activated, validation_code, ID_MSG_LAST_VISIT, additionalGroups, smileySet, ID_POST_GROUP, totalTimeLoggedIn, passwordSalt, messageLabels, buddy_list, notifySendBody, notifyTypes

What we need (in coppermine) is   `user_id`, `user_name`, `user_password`, `user_email` - just four fields, the rest could be empty (or rather: filled with default values).

Let's find the corresponding fields in SMF:
Coppermine field nameSMF field name
user_idID_MEMBER
user_namememberName
user_passwordpasswd
user_emailemailAddress

Now you'll just need to come up with a little PHP script that queries SMF's members table (SELECT) and writes a corresponding query (INSERT INTO) into coppermine's user table.

HTH

Joachim

~phocas~

hrm... i was certain i read that someone had written a little script to do just that, but... mayb I was dreaming.  :P

anywho ... thank you very much for your help and advice on this...

i will give it a try, see how it works out and post a followup...

i am definitely looking forward to gettin back to StandAlone

~phocas~

I know this is late, but ... I really did mean to post a follow-up to this, for anyone else looking to do the same.

This worked out great, excepting one issue.  The passwords did not convert over, but that was a no brainer that I had already anticipated.   Athe time, the SMF dB was encrypted and Coppermine dB was not. 

After weighing the consequences of that, I went ahead with the conversion (a rather simple query... that I have since lost track of).  Ultimately, setting a new password was the only inconvenience my users faced.

Thank you again for your help on this matter!