<% Option Explicit %> <% '**************************************************************************************** '** Copyright Notice '** '** Web Wiz Forums(TM) '** http://www.webwizforums.com '** '** Copyright (C)2001-2008 Web Wiz(TM). All Rights Reserved. '** '** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS UNDER LICENSE FROM 'WEB WIZ'. '** '** IF YOU DO NOT AGREE TO THE LICENSE AGREEMENT THEN 'WEB WIZ' IS UNWILLING TO LICENSE '** THE SOFTWARE TO YOU, AND YOU SHOULD DESTROY ALL COPIES YOU HOLD OF 'WEB WIZ' SOFTWARE '** AND DERIVATIVE WORKS IMMEDIATELY. '** '** If you have not received a copy of the license with this work then a copy of the latest '** license contract can be found at:- '** '** http://www.webwizguide.com/license '** '** For more information about this software and for licensing information please contact '** 'Web Wiz' at the address and website below:- '** '** Web Wiz, Unit 10E, Dawkins Road Industrial Estate, Poole, Dorset, BH15 4JD, England '** http://www.webwizguide.com '** '** Removal or modification of this copyright notice will violate the license contract. '** '**************************************************************************************** '*************************** SOFTWARE AND CODE MODIFICATIONS **************************** '** '** MODIFICATION OF THE FREE EDITIONS OF THIS SOFTWARE IS A VIOLATION OF THE LICENSE '** AGREEMENT AND IS STRICTLY PROHIBITED '** '** If you wish to modify any part of this software a license must be purchased '** '**************************************************************************************** 'Set the timeout higher so that it doesn't timeout half way through Session.Timeout = 1000 'Set the response buffer to true as we maybe redirecting Response.Buffer = True 'If in demo mode redirect If blnDemoMode Then Call closeDatabase() Response.Redirect("admin_web_wiz_forums_premium.asp" & strQsSID1) End If 'Dimension variables Dim lngDelAuthorID 'Holds the authors ID to be deleted Dim intNoOfDays 'Holds the number of days to delete posts from Dim lngNumberOfMembers 'Holds the number of members that are deleted Dim rsThread 'Holds the threads recordset Dim blnUnActive 'Set to true if deleting non active accounts only 'Initilise variables lngNumberOfMembers = 0 'get the number of days to delete from intNoOfDays = CInt(Request.Form("days")) blnUnActive = CBool(Request.Form("unactive")) 'Get all the Topics from the database to be deleted 'Initalise the strSQL variable with an SQL statement to get the topic from the database strSQL = "SELECT " & strDbTable & "Author.Author_ID FROM " & strDbTable & "Author " strSQL = strSQL & "WHERE (" & strDbTable & "Author.Join_date < " & strDatabaseDateFunction & " - " & intNoOfDays & " AND " & strDbTable & "Author.No_of_posts = 0) AND " & strDbTable & "Author.Author_ID > 2" If blnUnActive = True Then strSQL = strSQL & " AND " & strDbTable & "Author.Active = " & strDBFalse & " " End If strSQL = strSQL & ";" 'Set the cursor type property of the record set to Dynamic so we can navigate through the record set rsCommon.CursorType = 2 'Set set the lock type of the recordset to optomistic while the record is deleted rsCommon.LockType = 3 'Query the database rsCommon.Open strSQL, adoCon 'Create a record set object to the Threads held in the database Set rsThread = Server.CreateObject("ADODB.Recordset") 'Loop through all all the members to delete Do While NOT rsCommon.EOF 'Get the author ID lngDelAuthorID = CLng(rsCommon("Author_ID")) 'Check to make sure that there isn't any posts by the member strSQL = "SELECT" & strDBTop1 & " " & strDbTable & "Thread.Thread_ID " & _ "FROM " & strDbTable & "Thread " & _ "WHERE " & strDbTable & "Thread.Author_ID = " & lngDelAuthorID & strDBLimit1 & ";" 'Query the database rsThread.Open strSQL, adoCon 'If there are no posts start deleting If rsThread.EOF Then 'Delete the members buddy list 'Initalise the strSQL variable with an SQL statement strSQL = "DELETE FROM " & strDbTable & "BuddyList WHERE (Author_ID = " & lngDelAuthorID & ") OR (Buddy_ID =" & lngDelAuthorID & ");" 'Execute SQL adoCon.Execute(strSQL) 'Delete the members private msg's strSQL = "DELETE FROM " & strDbTable & "PMMessage WHERE (Author_ID = " & lngDelAuthorID & ");" 'Execute SQL adoCon.Execute(strSQL) 'Delete the members private msg's strSQL = "DELETE FROM " & strDbTable & "PMMessage WHERE (From_ID = " & lngDelAuthorID & ");" 'Execute SQL adoCon.Execute(strSQL) 'Set all the users private messages to Guest account strSQL = "UPDATE " & strDbTable & "PMMessage SET From_ID = 2 WHERE (From_ID = " & lngDelAuthorID & ");" 'Execute SQL adoCon.Execute(strSQL) 'Set all the users posts to the Guest account strSQL = "UPDATE " & strDbTable & "Thread SET Author_ID = 2 WHERE (Author_ID = " & lngDelAuthorID & ");" 'Execute SQL adoCon.Execute(strSQL) 'Delete the user from the email notify table strSQL = "DELETE FROM " & strDbTable & "EmailNotify WHERE (Author_ID = " & lngDelAuthorID & ");" 'Execute SQL adoCon.Execute(strSQL) 'Delete the user from forum permissions table strSQL = "DELETE FROM " & strDbTable & "Permissions WHERE (Author_ID = " & lngDelAuthorID & ");" 'Execute SQL adoCon.Execute(strSQL) 'Delete the record set rsCommon.Delete 'Total up the number of members deleted lngNumberOfMembers = lngNumberOfMembers + 1 End If 'Close the recordset rsThread.Close 'Move to the next record rsCommon.MoveNext Loop 'Reset Server Objects Set rsThread = Nothing rsCommon.Close Call closeDatabase() %> Batch Delete Members <% '***** START WARNING - REMOVAL OR MODIFICATION OF THIS CODE WILL VIOLATE THE LICENSE AGREEMENT ****** Response.Write("" & vbCrLf & vbCrLf) '***** END WARNING - REMOVAL OR MODIFICATION OF THIS CODE WILL VIOLATE THE LICENSE AGREEMENT ****** %>

Batch Delete Members


Control Panel Menu





<% = lngNumberOfMembers %> Members have been Deleted.