If Request.ServerVariables("CONTENT_LENGTH") <> 0 Then ' Opdatering sql="update Users set Username=""" & (request.form("Username")) & """, Pass=""" & (request.form("Pass")) & """ where id=" & request.form("id") 'response.write sql conn.execute(sql) response.redirect "../default.asp?emne=admin" Else Id = Request.QueryString ("id") ' ** Inserted by Jon Brohauge 2002/08/02 ' ** Hvis der ikke er specificeret et id, så vis liste over alle nyheder sorteret efter dato, nyest først. If Id = 0 Then ' ** Vis nyhedsliste Set rs=Conn.Execute ("Select * from " & Tabelnavn & " WHERE 'Username'") %>
<center> <br> <table cellspacing=0 border=0 cellspacing="0" cellpadding="5" width=320> <tr> <td ><b>Brugernavn:</b></td> <td> </td> </tr> <% If not(rs.bof or rs.eof) Then while not(rs.eof) %> <tr> <td class="menutxt"><%=rs("Pass")%> </td> <td class="menutxt"><a href="default.asp?emne=admin&emne2=retbruger&id=<%=rs("id")%>">Ret</a>| <a href="admin/sletbruger.asp?id=<%=rs("id")%>">Slet</a> </td> </tr> <% rs.movenext wend Else Response.Write "Ingen nyheder at rette" End If %> </table>
<% Else ' ** Vis valgte nyhed Set rs=Conn.Execute ("Select * from " & Tabelnavn & " Where id=" & Id & "") %>
som skal hendte brugernavn og password, som skal redigeres eller slettes.
men jeg får følgende fejl.
Fejltype: ADODB.Recordset (0x800A0CC1) Elementet kan ikke findes i den samling, der svarer til det anmodede navn eller ordenstal. /web/nejst/admin/retbruger.asp, line 33
Dette: Set rs=Conn.Execute ("Select * from " & Tabelnavn & " Where id=" & Id & "") Skal vel väre:Set rs=Conn.Execute ("Select * from "' & Tabelnavn & '" Where id=" & Id & "")
Fejltype: Der opstod en Microsoft VBScript-kompileringsfejl (0x800A03EE) Tegnet ')' var ventet /web/nejst/admin/retbruger.asp, line 17, column 37 Set rs=Conn.Execute ("Select * from "' & Tabelnavn & '" Where id=" & Id & "")
jeg læste heller ikke spørgsmålet , så kun svarene.. Nå men fejlen betyder jo at den ikke kan finde rs("id") Da både din Username og Pass er med stort Mon så ikke det skulle være rs("Id") ? tjek evt i din tabel
Det kan selvgølgelig også skyldes at du ikke giver et argument med som michael_stim påpeger 11:59:08 Jeg har ikke selv prøvet skrive sådan før Set rs=Conn.Execute ("Select * from " & Tabelnavn & " WHERE 'Username'") Men jeg kunne forestille mig at du får alle de rækker hvor Username == True, hvilket sikkert ikke forekommer, hvorfor dit resultset bliver tomt, hvorfor rs("id") så ikke findes
Prøv at - som debug - udskrive din SQL til skærmen før at du udføre den:
SQL = "Select * from " & Tabelnavn & " Where id=" & Id Response.Write SQL Set rs=Conn.Execute (SQL)
Som regel betyder den slags fejlbeskeder at SQL'en indeholder noget andet end man forventede. Jeg gætter helt personligt på at din id-variabel simepltehm er tom i dette tilfælde.
Du skriver sådan her nu?? ---- ' ** Hvis der ikke er specificeret et id, så vis liste over alle nyheder sorteret efter dato, nyest først. If Id = 0 Then ' ** Vis nyhedsliste Set rs=Conn.Execute ("Select * from " & Tabelnavn & " Where id=" & Id) ----- For det betyder jo at Id er sat , nemlig til 0 Men men, du skriver jo også at du ønsker alle nyheder sorteret efter dato! Derfor vil jeg tro din sql skal være sådan her i stedet --- Set rs=Conn.Execute ("Select * from " & Tabelnavn & " order by dato desc") --- Såfremt dit felt indeholdende datoen hedder "dato" altså Men derudover, ja så prøv skrive din sql ud som nielle foreslår hvis den stadig fejler
Jeg skal ikke have point - jeg ville nu også heller hjælpe løse problemet.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.