Avatar billede mickill Nybegynder
05. december 2001 - 13:02 Der er 8 kommentarer og
1 løsning

slet fra database

Jeg har lavet en database med en tabel indeholdende
kolonne1(ID), kolonne2, kolonne3, og kolonne4.

Jeg har lavet det sådan at når man laver et udtræk af databasen får man kun udskrevet indholdet af kolonne1 og kolonne2.

Kolonne1(ID) bliver udskrevet som links.

Det som jeg godt kunne tænke mig er, at når man trykker på et af linksne, så bliver alt indholdet, udfra dette link man trykker på i kolonne1(linket), kolonne2, kolonne3 og kolonne4 slettet.

Jeg har lavet siden således:

<%
Set Conn = Server.CreateObject(\"ADODB.Connection\")
DSN = \"DRIVER={Microsoft Access Driver (*.mdb)}; \"
DSN = DSN & \"DBQ=\" & Server.MapPath (\"db.mdb\")
Conn.Open DSN
%>

<%
SQL = \"Select * From tabel ORDER BY kolonne1\"
Set rs = Conn.Execute(SQL)

DO
%>

<table border=\"0\">
<tr>
<td><a href=\"slet.asp\"><%= rs(\"kolonne1\") %></a>&nbsp;&nbsp;&nbsp;</td>
<td><%= rs(\"kolonne2\") %></td>
</tr>
</table>

<%
rs.MOVENEXT

LOOP WHILE NOT rs.EOF

Conn.Close
Set Conn = Nothing
%>

Avatar billede centauri Nybegynder
05. december 2001 - 13:10 #1
Så skal du jo bare bruge
\"Delete from [tabel] where Kolonne1(ID =\" & request(\"ID\")

Og kalde din side med
slet.asp?<%=RS(\"Kolonne1(ID)\")
Avatar billede mickill Nybegynder
05. december 2001 - 13:28 #2
Jeg har lavet slet.asp og får nu denne fejl:

Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][ODBC Microsoft Access-driver] Der er en syntaksfejl, fordi der mangler en operator. i forespørgselsudtrykket \"rs(ID =\".
/slet.asp, line 10


slet.asp har jeg lavet sådan:

<%
Set Conn = Server.CreateObject(\"ADODB.Connection\")
DSN = \"DRIVER={Microsoft Access Driver (*.mdb)}; \"
DSN = DSN & \"DBQ=\" & Server.MapPath (\"db.mdb\")
Conn.Open DSN
%>

<%
SQL = \"DELETE * FROM slet WHERE rs(ID =\" & request(\"ID\")
Set rs = Conn.Execute(SQL)

Conn.Close
Set Conn = Nothing
%>
Avatar billede hirtshals Nybegynder
05. december 2001 - 13:58 #3
SQL = \"DELETE * FROM slet WHERE ID=\" & request(\"ID\")
Avatar billede hirtshals Nybegynder
05. december 2001 - 13:59 #4
Eller Rettere sagt

SQL = \"DELETE * FROM slet WHERE ID=\'\" & request(\"ID\") & \"\'\"
Avatar billede mickill Nybegynder
05. december 2001 - 14:03 #5
Jeg får følgende fejl:

Datatyperne stemmer ikke overens i kriterieudtrykket.
Avatar billede hirtshals Nybegynder
05. december 2001 - 15:48 #6
Fejlsøgning

1)
SQL = \"DELETE * FROM slet WHERE ID=1\"

Forudsat du har en post med ID=1 i din databse

Så laver du det Manuelt for at checke om DIN Connection - querystring osv er i orden

Hvad type er ID i din database Nummer/AutoNummer eller tekst

Hvis det er autonummer/nummer burde flg virke

strID = request.querystring(\"ID\")


SQL = \"DELETE * FROM slet WHERE ID=\" & strID

Hvis det er Et tekst felt


SQL = \"DELETE * FROM slet WHERE ID=\'\" & strID & \"\'\"

Prøv at lave en

response.write strID

Så ser du hvilken post du rent faktisk prøver på at slette
Avatar billede hirtshals Nybegynder
05. december 2001 - 16:03 #7
Der er også et skoleeksemple på hvordan man sletter en record fra en database

http://www.viewsource.dk/aspcat.asp?ident=2

Dbdeleterecord

Avatar billede software Nybegynder
12. december 2001 - 23:22 #8
Prøv at skrive dette:

<a href=\"slet.asp?ID=<%= rs(\"Id\")%>\"><%= rs(\"emne\") %></a>

Så virker det.....
Avatar billede mickill Nybegynder
12. december 2001 - 23:25 #9
Det virker sgu.....Tak for det Software
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