Hi there. Ok this will be my final post on migrating from Snitz to WWF v8, hopefully it will help others coming from Snitz from writing about my experience. My transition is complete, and it's working fine (with a tiny modification required - see the link at the end of this post)
Ignore the previous post. Those files don't need to be updated. Basically, when you convert the database over to WWF, the members passwords are still encrypted with Snitz's way of encryption. So for members to log in with their snitz passwords, those files help out in decrypting it everytime they log in.
So rather than providing them this for them, just make them reset their password by get them to click the forgotten password link and enter their username and email, and a new password will be sent to them. Easy.
So for me to migrate from Snitz to WWF v8 required that I download MortiOli's script (see above), and a fresh v7 database (
http://download.webwiz.net/webwizforums/ww7migrator.zip ). You do the adjustments required *exactly* in the readme text from MortiOli's script, and all should go fine.
However, if like me you had "archived" posts in your snitz forum, things become a bit more difficult. When you archive posts in snitz, the topics and threads get put into an archived topic and archived thread table, and they're slightly different to the original tables they came from.
What you need to do is remove all the relationships in the snitz forum (so no more database integrity checks), remove all the primary keys / autonumbering etc details in the table designs, adjust those "archived" tables to the same format as the normal ones, and then move all the records across.
When you run MortiOli's script again, you might run into a few errors. These are likely to be database integrity errors. Maybe you have duplicate entries, or posts made by a user but he's no longer in the memberlist etc. You have to hunt them down. How did you get these? Well, here's what happened when I archived posts on my Snitz forum from what I remember. It was a dodgy process. It didn't move all posts across, so I had duplicate entries. Sometimes when there are too many posts to move across, the script will timeout because it takes too long, and then that you'd try it again and maybe it worked the second time. Behind the scenes however, it probably didn't happen so cleanly, leaving behind more duplicate entries.
You can easily make query's on the database tables to find duplicate entries and remove them yourself. To pinpoint where the problem exactly is, you can adjust MortiOli's script so that it displays the records it updates and then when an error occurs so you can see the last record that was updated. Examine the next record in the database for the exact problem (for me it was a missing member, but his posts were there).
Once this is done, the database conversion should be done. *However*, there are two more problems I found. Because I moved across archived topics and threads back to their original tables, the order was messed up.
So when I ran MortiOli's script, it wasn't putting ordering my id's in an ascending order in the new database. So old posts were showing up with a higher id in the database. To fix these, I made some simple adjustments to MortiOli's script.
--- line 166 of convert.asp:
'make sure the autonumbers will be correct for forums
SQL = "SELECT FORUM_ID, F_SUBJECT, FORUM_FORUM.F_DESCRIPTION, FORUM_FORUM.F_TOPICS, FORUM_FORUM.F_COUNT, FORUM_FORUM.CAT_ID FROM FORUM_FORUM ORDER BY FORUM_ID ASC"
--- line 211 of convert.asp:
'make sure the autonumbers will be correct for topics '********note:added viewcount
SQL = "SELECT TOPIC_ID, FORUM_ID, FORUM_TOPICS.T_VIEW_COUNT, FORUM_TOPICS.T_SUBJECT FROM FORUM_TOPICS ORDER BY TOPIC_ID ASC"
Ok, there's a comment there that I added the viewcount information to the sql query. What MortiOli's script misses is that it doesn't add the number of views every post gets to the new database. So we do that here.
--- line 229
'we must also check for missing sequence numbers.. hence the IF
do until rs.EOF
If(IDvalue = rs("TOPIC_ID")) Then
rsIns.AddNew
rsIns.Fields("Subject") = rs("T_SUBJECT")
rsIns.Fields("Forum_ID") = rs("FORUM_ID")
rsIns.Fields("No_of_views") = rs("T_VIEW_COUNT") '********note:added viewcount
rsIns.Update
rs.MoveNext
IDValue = IDValue + 1
Ok, now once your Snitz database is converted to WWF (v7), download and run the
7.x to 8.x Upgrade Tool found on the webwiz site and all should be fine! Except for two more problems. Members will have to reset their passwords themselves, and all the posts in the forum will look wrong.
The first one is no problem really, and I've posted a solution to the latter problem at:
http://forums.webwiz.net/forum_posts.asp?TID=21361
Edited by Sumea - 26 September 2006 at 11:07pm