<%@LANGUAGE="VBSCRIPT"%> <% If Request.QueryString("logout") = "true" Then Session("hdw_logged") = "" If (Request.QueryString("verifylogin") = "1") And (Request.Form("password") = HDW_PASS) Then Session("hdw_logged") = "1" Dim HDW_TABLE,cat, tbl If Request.Form("hdw_updateitem") <> "" Then UpdateValues ShowHeader If Session("hdw_logged") = "" Then ShowLoginForm ElseIf Request.QueryString("action") = "edit" Then ShowEdit ElseIf Request.QueryString("table") <> "" Then HDW_TABLE = Request.QueryString("table") If Request.Form("accion") = "deleteitem" Then DataC.Execute ("DELETE FROM " & HDW_TABLE & " WHERE " & HDW_MAIN_FIELD & "=" & Request.Form("valor1") ) End If Set cat = Server.CreateObject ("ADOX.Catalog") Set cat.ActiveConnection = DataC Dim i, FoundTable i = 0 FoundTable = false While (i < cat.Tables.Count) And (Not FoundTable) If UCase(cat.Tables(i).Name) = UCase(HDW_TABLE) Then FoundTable = True i = i + 1 WEnd If FoundTable Then ShowList Else Response.Write "Table not found. Please note that you need al least one form submission in order to get some data into the table.

Go back...." End If Set cat = Nothing Set tbl = Nothing Else ShowTableList End If ShowFooter '************************************************************************************* '************************************************************************************* '************************************************************************************* Sub ShowList Set tbl = cat.Tables(HDW_TABLE) Dim fields(1000), checkedFields(1000), fCount, cond_base, someChecked fCount = tbl.Columns.Count cond_base = "" someChecked = False For k = 0 To tbl.Columns.Count - 1 And (Not fExists) fields(k) = tbl.Columns.Item(k) cond_base = cond_base & "[" & tbl.Columns.Item(k) & "] like '%^%' OR " If (Request.Form("hdwchecked_"&k) = "1") Then checkedFields(k) = True someChecked = True Else checkedFields(k) = False End If Next cond_base = Left(cond_base,Len(cond_base) - 3) If Not someChecked Then checkedFields(0) = True checkedFields(1) = True checkedFields(2) = True checkedFields(3) = True checkedFields(4) = True checkedFields(5) = True checkedFields(6) = True End If var_IncludeName = "default.asp?table=" & Request.QueryString("table") COUNT_SUBLIST = 10 ' Máxima cantidad de links a sublistados MAX_RECORDS = 25 var_Show = Request.Form("show") var_fldField = Request.Form("fldField") var_fldValue = Request.Form("fldValue") var_StartRecord = Request.Form("fldStartRecord") ' Donde debe comenzar este sublistado If var_StartRecord = "" Then var_StartRecord = 1 var_OrderBy = Session ("ttar_OrderBy") If Request.Form("fldOrderBy") <> "" Then var_OrderBy = Request.Form("fldOrderBy") If var_OrderBy = "" Then var_OrderBy = "HDW_ID" Session ("ttar_OrderBy") = var_OrderBy var_SortOrder = Session("ttr_SortOrder") If Request.Form("fldSortOrder") <> "" Then var_SortOrder = Request.Form("fldSortOrder") If var_SortOrder = "" Then var_SortOrder = "DESC" ' Si es ascendente o descendente Session ("ttr_SortOrder") = var_SortOrder ' La query que toma el sublistado query = "SELECT TOP "&(MAX_RECORDS+var_StartRecord)&" * FROM " & HDW_TABLE ' Si se ha hecho un busqueda añadirla a la query If (UCase(Request.Form("show")) = UCase("Search")) And (Request.Form("fldField") <> "") Then value = Replace(Request.Form("fldValue"), "'", "''") cond = Replace(Request.Form("fldField"), "^", value) query = query & " WHERE " & cond End If ' Añadir el orden por el que se va a listar a la query... var_NewOrderBy = Replace(var_OrderBy, ",", " "&var_SortOrder&", ") query = query & " ORDER BY ["&var_NewOrderBy&"] "&var_SortOrder Set rs = DataC.Execute(query) ' Ejecutar la query If (Not rs.EOF) Then rs.Move(var_StartRecord-1) ' Ir al record de comienzo del sublistado %>
Select fields to show
<% For i = 0 To fCount - 1 %> /> <% Response.Write fields(i) %>    <% Next %>
<% ' Esta parte es para generar los enlaces a sublistados que aparecen ' en la parte superior de la tabla... newquery = "SELECT Count(" & HDW_MAIN_FIELD & ") FROM " & HDW_TABLE If (UCase(Request.Form("show")) = UCase("Search")) And (Request.Form("fldField") <> "") Then newquery = newquery & " WHERE " & cond Set newrs = DataC.Execute(newquery) var_countRecords = newrs.Fields.Item(0) var_startList = 1 While CInt (var_StartRecord) > CInt(var_StartList+ (MAX_RECORDS * COUNT_SUBLIST) - 1) var_StartList = var_StartList + (MAX_RECORDS * COUNT_SUBLIST) WEnd Response.Write "
" If var_StartList <> 1 Then Response.Write "<< " For i = 1 To COUNT_SUBLIST var_tmpMinRec = var_StartList + (MAX_RECORDS * (i - 1)) var_tmpMaxRec = var_StartList + (MAX_RECORDS * i - 1) If var_tmpMinRec <= var_countRecords Then If i <> 1 Then Response.Write " | " If var_tmpMaxRec > var_countRecords Then var_tmpMaxRec = var_countRecords If CInt (var_StartRecord) = CInt (var_tmpMinRec) Then Response.Write ""&var_tmpMinRec&"-"&var_tmpMaxRec&"" Else Response.Write "" Response.Write var_tmpMinRec&"-"&var_tmpMaxRec & "" End If End If Next If var_tmpMaxRec < var_countRecords Then Response.Write " >>" Response.Write "
" %> <% ' Este if que comienza es para chequear si el listado es no vacio... If (Not rs.EOF) Then var_WasNotEmpty = true %> <% For i = 0 To fCount - 1 If (checkedFields(i)) Then %> <% End If Next %> <% ' Ahora listar la tabla... i = 0 While (Not rs.EOF) And (i < MAX_RECORDS) If i Mod 2 = 0 Then ' Para que las filas salgan con colores inversos Response.Write "" Else Response.Write "" End If For k = 0 To fCount - 1 If (checkedFields(k)) Then Response.Write "" End If Next %> <% i = i + 1 rs.MoveNext WEnd %>
<% Response.Write fields(i) %> <% If var_OrderBy=fields(i) Then If var_SortOrder="ASC" Then Response.Write("") Else Response.Write("") %>    
" & rs.Fields.Item(fields(k)).Value &" [edit] [delete]
<% ' Esta tabla es para colocar los "Atrás" y "Siguiente" al final de la tabla de records If Not rs.EOF Then If cond <> "" Then cond = cond & "" %> <% If CInt(var_StartRecord) <> 1 Then %> <% End If %> <% Else %> <% End If %>
<< Previous Next >>
<% If CInt(var_StartRecord) <> 1 Then %> << Previous <% End If %>
<% For z = 0 To fCount - 1 %> " /> <% Next %>
<% For z = 0 To fCount - 1 %> " /> <% Next %>
<% For i = 0 To fCount - 1 If var_OrderBy = fields(i) Then If var_SortOrder = "ASC" Then var_Temp = "DESC" Else var_Temp = "ASC" Else var_Temp = "ASC" End If %>
<% For z = 0 To fCount - 1 %> " /> <% Next %>
<% Next %> <% For i = 0 To COUNT_SUBLIST+1 %>
<% If i <> 0 Then %> <% Else %> <% End If %> <% For z = 0 To fCount - 1 %> " /> <% Next %>
<% Next%>
<% Else ' else del If de verificar que existiera al menos un record Response.Write "No records related.

" If Not ((Request.Form("show") = "Search") And (Request.Form("fldField") <> "")) Then var_WasNotEmpty = False Else var_WasNotEmpty = True End If %>
Search for:
">
<% End Sub '************************************************************************************* '************************************************************************************* '************************************************************************************* Sub ShowLoginForm %>
Password
 
<% Response.End End Sub '************************************************************************************* '************************************************************************************* '************************************************************************************* Sub ShowHeader %> Form To Database Admin

Form To Database Admin

<% End Sub '************************************************************************************* '************************************************************************************* '************************************************************************************* Sub ShowFooter %>
<% End Sub '************************************************************************************* '************************************************************************************* '************************************************************************************* Sub ShowTableList Response.Write "

Select the table to admin...

" If Not Printed Then Response.Write "No tables to admin. Please be sure to add the name of the table(s) to admin into the ""tables.txt"" file and to upload that file to the online web server since it contains the list of administrable tables." End Sub '************************************************************************************* '************************************************************************************* '************************************************************************************* Sub ShowEdit Set cat = Server.CreateObject ("ADOX.Catalog") Set cat.ActiveConnection = DataC HDW_TABLE = Request.QueryString("table") Set tbl = cat.Tables(HDW_TABLE) Dim fields(1000), checkedFields(1000), fCount fCount = tbl.Columns.Count For k = 0 To tbl.Columns.Count - 1 And (Not fExists) fields(k) = tbl.Columns.Item(k) Next Set cat = Nothing Set tbl = Nothing Dim rs Set rs = DataC.Execute ("SELECT * FROM " & HDW_TABLE & " WHERE " & HDW_MAIN_FIELD & "=" & Request.QueryString("id")) var_IncludeName = "default.asp?table=" & Request.QueryString("table") & "&action=edit&id=" & Request.QueryString("id") %>
"> <% For i = 0 to fCount - 1 If fields(i) <> HDW_MAIN_FIELD Then %> <% Response.Write fields(i) %>:
","</textarea>") %>
<% End If Next %>
     
<% End Sub '************************************************************************************* '************************************************************************************* '************************************************************************************* Sub UpdateValues Set cat = Server.CreateObject ("ADOX.Catalog") Set cat.ActiveConnection = DataC HDW_TABLE = Request.QueryString("table") Set tbl = cat.Tables(HDW_TABLE) Dim fields(1000), checkedFields(1000), fCount fCount = tbl.Columns.Count For k = 0 To tbl.Columns.Count - 1 And (Not fExists) fields(k) = tbl.Columns.Item(k) Next Set cat = Nothing Set tbl = Nothing Dim str str = "" For i = 0 to fCount - 1 If fields(i) <> HDW_MAIN_FIELD Then str = str & "[" & fields(i) & "]='" & Replace(Request.Form(fields(i)),"'","''") & "'," End If Next str = Left(str, Len(str)-1) DataC.Execute ("UPDATE " & HDW_TABLE & " SET " & str & " WHERE "& HDW_MAIN_FIELD & "=" & Request.QueryString("id")) Response.Redirect "default.asp?table=" & Request.QueryString("table") Response.End End Sub %>