Avatar billede j_stick Nybegynder
07. januar 2002 - 10:30 Der er 11 kommentarer og
1 løsning

mySQL - Delete record

Først har jeg en side hvor jeg lister alle records op og laver et link til hver record der hedder
<a href=\"admin_slet.asp?id=<%=(published.Fields.Item(\"id\").Value)%>\">Ret</a>

_______________________
Her er så admin_slet.asp

<%@LANGUAGE=\"VBSCRIPT\"%>

<%

Id = \"\" + Request.Form(\"Id\") + \"\"
Query = \"delete from published where id = \" & Id
   
Server.CreateObject(\"ADODB.Command\").ActiveConnection = dsn=artikel;
Server.CreateObject(\"ADODB.Command\").CommandText = Query
Server.CreateObject(\"ADODB.Command\").Execute
Server.CreateObject(\"ADODB.Command\").ActiveConnection.Close

Response.Redirect(\"admin.asp\")

%>

Jeg fatter ikke hvorfor det ikke virker, hjælp.....
Avatar billede senj Nybegynder
07. januar 2002 - 10:40 #1
Er id en streng i basen? I din where clause sammenligner du en streng og et nummer - hvis id er et  tal!
Avatar billede plinnet Nybegynder
07. januar 2002 - 10:42 #2
Prøv:

Id = \"\" + Request(id)+\"\"

Det er ikke fra en form men fra et link

PL
Avatar billede j_stick Nybegynder
07. januar 2002 - 11:04 #3
Det virker stadig ikke.

Id er et tal.
Avatar billede jamal_s Nybegynder
07. januar 2002 - 11:08 #4
prøve dette her

StrSQL = \"Delete from published where Id = \'\" & Request.Form(\"id\") & \"\'\"
Avatar billede plinnet Nybegynder
07. januar 2002 - 11:12 #5
Jamen så skal du lave værdien om til et tal eks:
Id = CInt(Request.Querystring(\"Id\")), hvis det altså er en int.

PL
Avatar billede senj Nybegynder
07. januar 2002 - 11:13 #6
Prøv at udfører din sql med en fast værdi som eks. 10 så det ikke er en streng. Hvis det virker, så er fejlen der!
Avatar billede senj Nybegynder
07. januar 2002 - 11:14 #7
altså where id = 10 - hvis altså der findes et id på 10 i basen!
Avatar billede jamal_s Nybegynder
07. januar 2002 - 11:16 #8
ellers så prøve at læse her :)
http://html.dk/tutorials/asp/lektion21.asp
Avatar billede j_stick Nybegynder
07. januar 2002 - 11:19 #9
Jeg har prøvet at skrive:
<%@LANGUAGE=\"VBSCRIPT\"%>

<%
   
Server.CreateObject(\"ADODB.Command\").ActiveConnection = dsn=artikel;
Server.CreateObject(\"ADODB.Command\").CommandText = \"delete from published where id = 3
Server.CreateObject(\"ADODB.Command\").Execute
Server.CreateObject(\"ADODB.Command\").ActiveConnection.Close

Response.Redirect(\"admin.asp\")

%>

Og det virker stadig ikke, jeg fatter ikke hvorfor.
Avatar billede plinnet Nybegynder
07. januar 2002 - 12:01 #10
Lige nu mangler du da en \" efter 3.

PL
Avatar billede jamal_s Nybegynder
07. januar 2002 - 12:02 #11
hvad med :

Server.CreateObject(\"ADODB.Command\").ActiveConnection = dsn=artikel;
StrSql = \"delete from published where id = 3
Conn.Execute(strSQL)
Server.CreateObject(\"ADODB.Command\").Execute
Server.CreateObject(\"ADODB.Command\").ActiveConnection.Close
Avatar billede jamal_s Nybegynder
07. januar 2002 - 12:03 #12
sådan her:

StrSql = \"delete from published where id=\'3\'\"
Conn.Execute(strSQL)
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