I know a lot of people are wanting to convert from Snitz to WWF, with me being one of them.
We were so close to having a small program to convert everything over from db to db, but MichaelItaly suddenly vanished, and has never returned
Because of this, I thought I'd get down and dirty, and try the codes which people have posted, one being a piece which works for most, but not those who have deleted members - created by Satellite.
Now if we can put our heads together and work round the problem with deleted members (due to the code not liking missing Autonumber / Author_ID), we'll have a finished product to finally help convert people over!
Starting from where people left off, here's how to convert over, followed by the problem faced with deleted members;
- Download and install WWF and login as Admin
- Set up the ranking groups in the Admin panel, for what title / stars people receive for X number of posts, to match those in your Snitz db
- Open up your WWF db in Access, and import the following tables from your Snitz db, by going to 'File / Get External Data / Import';
forum_category
forum_forum
forum_members
forum_reply
forum_topics
-
Open up 'tblAuthor' and delete the 2 records
- Compact the db to reset the Autonumber in 'tblAuthor' by going to 'Tools / Database Utilities / Compact and Repair Database...' - this saves you copying the structure and relationships etc
- Backup the database so you don't have to do the above again!
- Config and run the following script in a .asp page;
<%
'***************************************************
' Written by Satellite
' Give me credit if you modify it and post it elsewhere
' otherwise your karma will suck and you'll be a moskito
' in your next life ;)
'
' Usage: Import the neccesary tables from the snitz database.
' Set up the groups you want (with the webadministration of WW forums)
' copy the structure of tblAuthors, delete the old tblAuthors (redo the relations if you want)
' backup the .mdb file
' run this file
' hopefully it has worked =)
'
' If the script fails.. you need to start with a fresh db, so make a backup copy
' right before you run the script.
'****************************************************
Response.Buffer = false
Server.ScriptTimeout = 500 'in seconds. many posts means higher number
Set Conn = Server.CreateObject("ADODB.Connection")
Set Conn = Server.CreateObject("ADODB.Connection")
'open database
ProviderName = "Microsoft.Jet.OLEDB.4.0"
DataBaseSource = Server.Mappath("./") & "\wwforum.mdb"
Conn.ConnectionString = "Provider=" & ProviderName & "; Data Source=" & DatabaseSource&";"
Conn.open
Response.Write "Moving all the users...<br>"
SQL = "SELECT M_NAME, M_EMAIL, M_SIG, M_PASSWORD, M_DATE, M_AIM, M_ICQ, M_MSN, M_YAHOO, M_FIRSTNAME, M_LASTNAME, M_LASTHEREDATE, M_DOB, M_OCCUPATION, M_POSTS, MEMBER_ID FROM FORUM_MEMBERS ORDER BY MEMBER_ID ASC"
set rs = conn.execute(SQL)
idValue = rs("MEMBER_ID")
Set rsIns = Server.CreateObject("ADODB.RecordSet")
rsIns.Open "tblAuthor", conn, 1, 2
do until rs.eof
If(IDvalue = rs("MEMBER_ID")) Then
rsIns.AddNew
rsIns.Fields("Username") = rs("M_NAME")
rsIns.Fields("Author_email") = rs("M_EMAIL")
rsIns.Fields("Signature") = rs("M_SIG")
rsIns.Fields("Password") = Left(rs("M_PASSWORD"),50)
'rsIns.Fields("Date_format") = "dd/mm/yy"
rsIns.Fields("User_code") = rs("M_NAME") & UCase(Right(Left(rs("M_PASSWORD"),20),12))
rsIns.Fields("Time_offset") = "+"
rsIns.Fields("Time_offset_hours") = "0"
rsIns.Fields("Join_Date") = CDate(createDate(rs("M_Date")))
rsIns.Fields("MSN") = rs("M_MSN")
rsIns.Fields("ICQ") = rs("M_ICQ")
rsIns.Fields("AIM") = rs("M_AIM")
rsIns.Fields("YAHOO") = rs("M_YAHOO")
rsIns.Fields("Show_Email") = True
rsIns.Fields("Real_Name") = rs("M_FIRSTNAME") & " " & rs("M_LASTNAME")
rsIns.Fields("Last_visit") = CDate(