Avatar billede phuc69 Juniormester
26. marts 2004 - 10:13 Der er 24 kommentarer og
1 løsning

Hvor er fejlen

Så er den gal igen. Det som dette scipt skal udfører er at den viser en dropdownbox og når man har valgt en punkt i boksen så bliver den slettet fra db'en Indlæsningen til dropdownbkosen virker ´men ved sletningen går det galt

<HTML>
<HEAD>
<script>

function show(list) {
    if (list.options[list.selectedIndex].value == "none") {
    valueting = ""
    } else {
    valueting = list.options[list.selectedIndex].value
    }
    eks.innerHTML = valueting
}
</script>
</HEAD>
<BODY>
<%

Set tempConn = Server.CreateObject("ADODB.Connection")
strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("tutorial")
tempConn.Open strDSN     


  strSQL = "SELECT * FROM Telefontavle ORDER BY Navn"
        Set rs = tempConn.Execute(strSQL)
%>
<select size="1" OnClick="show(this);">
<option SELECTED value="none">Klik her....</option>
<%
if NOT rs.EOF then
        Do While NOT rs.EOF
' variabel2 = 5
' variabel = 0
' Do While varibael < variabel2
%>
<option value="<%= rs("Id")%>"><%= rs("Navn") %></option>
<%
'variabel = variabel + 1
    rs.MoveNext
    Loop
Else
Response.Write "EOF!"
ENd if

************Her er fejlen nok***********

strSQL = "Delete from personer where Id =" & "<% rs("ID")%>"

Conn.Execute(strSQL)
' Luk databaseforbindelse
Conn.Close
Set Conn = Nothing
%>

</select>
<br><br><br>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td><font SIZE="2" face="Verdana"><b><SPAN ID="eks"></SPAN></b></font></td>
  </tr>
</table>
</BODY>
</HTML>
Avatar billede nute Nybegynder
26. marts 2004 - 10:16 #1
strSQL = "Delete from personer where Id =" & rs("ID")
Avatar billede fennec Nybegynder
26. marts 2004 - 10:17 #2
strSQL = "Delete from personer where Id =" & rs("ID")
Avatar billede fennec Nybegynder
26. marts 2004 - 10:18 #3
Damn. 18 sek forsent.... :(
Avatar billede websam Nybegynder
26. marts 2004 - 10:18 #4
Ændre denne :

strSQL = "Delete from personer where Id =" & "<% rs("ID")%>"

Til denne :

strSQL = "Delete from personer where Id ="&rs("ID")&""

Du kan ikke have <%%> i din sql forspørgelse :o)

/Websam
Avatar billede phuc69 Juniormester
26. marts 2004 - 10:23 #5
nu skriver den undtagelse opstod i den linje
Avatar billede nute Nybegynder
26. marts 2004 - 10:23 #6
websam >> selvfølgelig kan man have <%%> i sin forespørgsel ... problemet er bare at dette ikke er en tekst kolonne og dermed vil det generere en fejl. Hvis kolonnen var en tekst kolonne, så kan man sagtens have <%%> ;o]

/nute
Avatar billede nute Nybegynder
26. marts 2004 - 10:25 #7
phuc69 >> prøv at skrive ud din SQL:

strSQL = "Delete from personer where Id =" & rs("ID")
Response.Write( "SQL: " & strSQL )

Dette vil give dig den SQL du prøver at køre. Her kan du se om det er fejl ...

/nute
Avatar billede websam Nybegynder
26. marts 2004 - 10:27 #8
Det må jo være noget i stilen med :

strSQL = "Delete from personer where Id ="&Request.Form("Formnavn")&""

For at få det til at virke :O)

/Websam
Avatar billede nute Nybegynder
26. marts 2004 - 10:32 #9
websam >> det "må" ikke være sådan ... det kunne jo faktisk være at der, på en eller anden måde, bliver brugt et recordset til at afgøre hvilken post der skal slettes ;o]

er dog enig i at det nok er sådan det *normalt* ville være ;o]

/nute
Avatar billede websam Nybegynder
26. marts 2004 - 10:35 #10
nute >> Ok så "kunne" istedet for "må" når nu vi går i detaljer *GGG*

/Websam
Avatar billede phuc69 Juniormester
26. marts 2004 - 10:38 #11
Jeg kan ikke få det til at virke. Lige meget hvad jeg gør
Avatar billede phuc69 Juniormester
26. marts 2004 - 10:40 #12
Jeg ved ikke om der evt kan findes en løsnings model
Avatar billede nute Nybegynder
26. marts 2004 - 10:40 #13
websam >> ;o]

phuc69 >> har du prøvet at skrive din SQL ud, som jeg har foreslået ??? og hvis du får fejl, så ville en fejlmeddelelse være nyttig, hvis du ønsker at vi skal hjælpe
Avatar billede phuc69 Juniormester
26. marts 2004 - 10:46 #14
nute den kommer med følgende fejl
Fejltype:
(0x80020009)
Undtagelse opstod.
/dropdown3.asp, line 45
Linje 45 er følgende strSQL = "Delete from personer where Id =" & rs("ID")
Avatar billede nute Nybegynder
26. marts 2004 - 10:49 #15
så er det nok, som websam er inde på, at du skal requeste ID'et til den post du vil slette:

strSQL = "Delete from personer where Id =" & Request("ID")

/nute
Avatar billede phuc69 Juniormester
26. marts 2004 - 11:36 #16
nute og websamjeg har ikke rodet med asp i mere end et par uger så jeg er lidt lost. Er der andre ideer
Avatar billede nute Nybegynder
26. marts 2004 - 11:52 #17
phuc69 >> ved du hvordan du sender og modtager parametre på en asp side ?
Avatar billede phuc69 Juniormester
26. marts 2004 - 12:05 #18
Jeg kan hente data frem og sende til en db. Har kørt asp tutorial igennem på html. Jeg kan også få den til at slette ved at lave en manuel indtastnig af nummeret i en boks. Det jeg gerne vil er at tage værdien fra dropdown menuen her et id og så slette det i db. Selve dropdown i ovenstående elementet virker fint.
Avatar billede phuc69 Juniormester
26. marts 2004 - 12:07 #19
Det sjove er at i oven stående eksempel kan den vise nummeret id på den valgte person. Så det burde jo ikkle være så svært at lave resten derfra :-)
Avatar billede nute Nybegynder
26. marts 2004 - 13:16 #20
du er nødt til at poste siden. Du skal huske på at ASP kører på serveren, og javascript på clienten.
Avatar billede phuc69 Juniormester
27. marts 2004 - 11:12 #21
det víl altså sige at jeg skal sende den tilbage til serveren for at få udført sletningen. så må det altså være et spørgsmål om at få variablen sendt. Hvordan gør jeg det så
Bare lidt hjælp til at sende den rigtig variabel ville være nice :-)
Avatar billede nute Nybegynder
27. marts 2004 - 20:08 #22
kig lidt her:

http://html.dk/tutorials/asp/lektion11.asp

din select skal have et 'name' attribut og det eneste du skal gøre derefter, er at poste dit formular (med en submit knap).

hvis du laver din select sådan:

<form name="frm">
<select size="1" name="sel" OnClick="show(this);">
<%
' bla bla bla
%>
</select>
<input type="submit">
</form>

så kan du fange den valgte option ved:

Request( "sel" )

/nute
Avatar billede phuc69 Juniormester
30. marts 2004 - 15:49 #23
Så virker det. Tak for hjælpen nute det var det der skulle til. Smid et svar
Avatar billede nute Nybegynder
30. marts 2004 - 15:53 #24
fino :-)

*svar*
Avatar billede nute Nybegynder
30. marts 2004 - 23:30 #25
- takker -
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester