<% '============================================================== ' TableEditoR 0.81 Beta ' http://www.2enetworx.com/dev/projects/tableeditor.asp '-------------------------------------------------------------- ' File: te_multidelete.asp ' Description: Deletes multiple records ' Initiated By Hakan Eskici on Jan 11, 2001 '-------------------------------------------------------------- ' Copyright (c) 2002, 2eNetWorX/dev. ' ' TableEditoR is distributed with General Public License. ' Any derivatives of this software must remain OpenSource and ' must be distributed at no charge. ' (See license.txt for additional information) ' ' See Credits.txt for the list of contributors. ' ' Change Log: '-------------------------------------------------------------- ' # Mar 29, 2001 by Hakan Eskici ' Added support for multiple primary keys '============================================================== %> <% 'Permission check if bProtected then if not bRecDel then %><% response.write "You don't have permission to delete!
" %><% response.end end if end if sNoJscript = request.querystring("nojs") if sNoJscript = "1" then if not ValidSecurityID("Javaless_browser", request.querystring("SecID")) then response.write "

Error: you must be logged on this site.

" response.end end if end if function DeleteRecord(sFldVal) sFieldNames = request.form("txtFieldName") sFieldTypes = request.form("txtFieldType") aFieldNames = split(sFieldNames, ";") aFieldTypes = split(sFieldTypes, ";") aFieldVals = split(sFldVal, ";") select case arrType(lConnID) case tedbSQLServer sDateSeperator = "'" case else sDateSeperator = "#" end select for iFld = 0 to ubound(aFieldNames) sFieldName = aFieldNames(iFld) lFieldType = CLng(aFieldTypes(iFld)) sFieldValue = aFieldVals(iFld) select case lFieldType case adDate, adDBDate, adDBTime, adDBTimeStamp if isDate(sFieldValue) then sFieldValue = cDate(sFieldValue) sFieldValue = month(sFieldValue) & "/" & day(sFieldValue) & "/" & year(sFieldValue) end if if sWhereFields = "" then sWhereFields = "([" & sFieldName & "]=" & sDateSeperator & sFieldValue & sDateSeperator & ")" else sWhereFields = sWhereFields & " AND ([" & sFieldName & "]=" & sDateSeperator & sFieldValue & sDateSeperator & ")" end if case adTinyInt, adSmallInt, adInteger, adBigInt, adUnsignedTinyInt, adUnsignedSmallInt, adUnsignedInt, adUnsignedBigInt, adSingle, adDouble, adCurrency, adDecimal, adNumeric, adBoolean 'Added by Hakan 'Convert decimal point to dot if it's a comma sFieldValue = replace(sFieldValue, ",", ".") if sWhereFields = "" then sWhereFields = "([" & sFieldName & "]=" & sFieldValue & ")" else sWhereFields = sWhereFields & " AND ([" & sFieldName & "]=" & sFieldValue & ")" end if case else 'Added by Hakan 'Prepare SQL value by replacing single quote with two single quotes sFieldValue = replace(sFieldValue, "'", "''") if sWhereFields = "" then sWhereFields = "([" & sFieldName & "]='" & sFieldValue & "')" else sWhereFields = sWhereFields & " AND ([" & sFieldName & "]='" & sFieldValue & "')" end if end select next sWhere = " WHERE " & sWhereFields 'Added by Danival if instr(1, ucase(sTableName), "SELECT") then sSQL = sTableName else sSQL = "SELECT * FROM [" & sTableName & "]" end if 'Modified by Hakan 'Open the table/query first rs.ActiveConnection = conn rs.Open sSQL, , , adCmdTable 'Filter the records with Where Statement rs.Filter = sWhereFields 'If able to find, delete if not rs.eof or rs.bof then on error resume next rs.delete if err <> 0 then bError = True else bError = False end if else bError = True end if rs.close DeleteRecord = not bError end function %>
Home » Connections » "><%=arrDesc(request("cid"))%> » <%if bQuery then response.write "Query" else response.write "[Table :" & request("tablename") & "]"%> <% if bProtected then response.write session("teFullName") response.write " (logout)" end if %>

<% if request("chkDel") = "" then response.write "

No records to delete!

" response.write "Go back" %><% response.end else dim lConnID dim sTableName lConnID = request("cid") sTableName = request("tablename") sQuery = request("q") conn.open arrConn(lConnID) if request.querystring("nojs") = "1" then sFieldValues = request.querystring("chkDel") sFieldNames = request.querystring("txtFieldName") sFieldTypes = request.querystring("txtFieldType") else sFieldValues = request.form("chkDel") sFieldNames = request.form("txtFieldName") sFieldTypes = request.form("txtFieldType") end if aFieldNames = split(sFieldNames, ";") aFieldTypes = split(sFieldTypes, ";") aFieldValues = split(sFieldValues, ",") if request("cmdYes") = "" then %>

Are you sure that you want to delete <%=ubound(aFieldValues)+1%> records?

<% for i=0 to ubound(aFieldValues) %> <% next %>
" method="post">
<% else for iRec = 0 to ubound(aFieldValues) if DeleteRecord(aFieldValues(iRec)) <> True then bErr = True end if next if bErr = True then %><% response.write "

Cannot delete the record.

" response.write "Error Reported: " & err.description & "
" response.write "SQL: " & sSQL & "
" response.write "Filter: " & sWhereFields & "
" %><% response.end end if response.write "
" & ubound(aFieldValues) + 1 & " records deleted from the table '" & sTableName & "'.

" response.write "Go back" end if end if %>