Avatar billede mkm Nybegynder
20. september 2000 - 22:44 Der er 9 kommentarer og
2 løsninger

delete hvis checked

Jeg ønsker at slette en post i db såfremt checkboxen i nedenstående løkke er checked.

<form name=\"FormName\" action=\"rem_link.asp\" method=\"post\">
<%Do While Not RS1.eof %>
<table width=\"150\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\">
<tr>
<td class=\"text\">-&nbsp;<%=RS1(\"link\")%></td>
<td class=\"text\" align=\"right\"><input type=\"checkbox\" name=\"form\" value=\"<%=RS1(\"text\")%>\"><br></td>
</tr>
</table>       
<% RS1.MoveNext
Loop %>
</form>

----               

Løkken virker fint og skriver texten efterfulgt af en checkbox.


I bunden er der en submitbutton og DELETE sætningen sker i en anden fil

?
Hvordan skal DELETE sætningen lyde så kun \"cheked\" poster bliver slettet
/?

/mkm


Avatar billede jes_petersen Nybegynder
20. september 2000 - 22:52 #1
<%
If request.form(\"form\") = \"on\" Then
Query = \"Delete from xx where yy = rr\"
End If
%>

xx er navnet på tabellen - where-sætningen skal indeholde dine kriterier for hvad der skal slettes.

/Jes_petersen


Avatar billede mkm Nybegynder
20. september 2000 - 23:18 #2
Den acceptere koden fint, men sletter ikke posten

Skal chekboxene have values eller names.

Dette er koden

<%
If request.form(\"form\") = \"on\" Then
Query = \"Delete from links where bruger =\'\" & session(\"bruger\")&\"\'\"
End If
%> 


/mkm

Avatar billede jes_petersen Nybegynder
20. september 2000 - 23:20 #3
Du skal nok ikke give dine checkboxe values - kun name. Det glemte jeg at sige før.

Prøv lige at drop value og kør scriptet igen - så skulle det virke.

/Jes_Petersen
Avatar billede erikjacobsen Ekspert
20. september 2000 - 23:26 #4
Du skal lade være med at lade checkboxens værdi være teksten, men tage
den autonum-id du allegevel har (ikke ?), og gøre noget i denne stil. Dvs.
du navngiver dine checkboxe med det nummer + teksten \"nr\", så du kan finde
dem igen. Det er en skitse - så de er lidt mere arbejde for dig ;-)

<html>
<head>
<title>For someone</title>
</head>
<body>

<%

  for each x in request.form
    if left(x,2)=\"nr\" then
      sql = \"UPDATE TABLE brugere SET tekst=\'\" & request.form(\"sjov\") & \"\' WHERE id=\" & mid(x,3,100)
      response.write \"Udfør \" & sql & \"<br>\"
    end if
  next
%>


<form method=\"post\">
Sjov text <input type=\"text\" name=\"sjov\"><br>
Sørensen  <input type=\"checkbox\" name=\"nr3\"><br>
Hansen  <input type=\"checkbox\" name=\"nr14\"><br>
<input type=\"submit\">
</form>
</body>
</html>
Avatar billede erikjacobsen Ekspert
20. september 2000 - 23:27 #5
Kan forøvrigt testet på http://www11.ewebcity.com/1script/spac.asp  Den sletter ikke noget,
men \"lader\" bare som om ;-)
Avatar billede mkm Nybegynder
20. september 2000 - 23:31 #6
Virker desværre stadig ikke

/mkm
Avatar billede ortrak Nybegynder
21. september 2000 - 00:46 #7
giv alle checkbox\'ene det samme navn, f.eks \"id\". Deres individuelle value\'s skal være deres autonum-id.


Derefter laver du:
id = request.Form(\"id\")
og får dermed en kommasepareret streng med de id\'er i, som skal slettes.

Derefter:
\"delete from Table Where ID IN(\" & id & \")\"


/ortrak
Avatar billede janmanden Nybegynder
21. september 2000 - 01:28 #8
og hvis det ikke fungerer:

samme opsætning.

<input type=\"checkbox\" name=\"id\" value=\"<%=RS1(\"id\")%>

<%
Dim ids, Conn, SQL

ids = split(Request.Form(\"id\"),\",\")

Set Conn = Server.CreateObject(\"ADODB.Connection\")
Conn.Open DinDSN

SQL = \"DELETE FROM Table WHERE ID=\"

For i = 0 to ubound(ids)
  Conn.Execute(SQL & ids(i))
Next
%>
Avatar billede mkm Nybegynder
21. september 2000 - 09:14 #9
Godmorgen

Tak for en nats arbejde.

Jeg har afprøvet \'otrak\' og \'janmanden\'

med lidt modifikationer virkede otrak´s perfekt

dette virkede:
----
<input type=\"checkbox\" name=\"ID\" value=\"<%=RS1(\"ID\")%>\">

<%
ID = request.Form(\"ID\")
SQL = \"delete from table Where ID IN(\" & ID & \") AND bruger =\'\" & session(\"bruger\")&\"\'\"
Conn.Execute(SQL)
%>

Point til otrak og janmanden for natarbejde 45/25







Avatar billede mkm Nybegynder
21. september 2000 - 09:15 #10
Tak for en nats arbejde.

Jeg har afprøvet \'otrak\' og \'janmanden\'

med lidt modifikationer virkede otrak´s bedst men manglede en smule der var i janmandens.

dette virkede:
----
<input type=\"checkbox\" name=\"ID\" value=\"<%=RS1(\"ID\")%>\">

<%
ID = request.Form(\"ID\")
SQL = \"delete from table Where ID IN(\" & ID & \") AND bruger =\'\" & session(\"bruger\")&\"\'\"
Conn.Execute(SQL)
%>

Point til otrak og janmanden for natarbejde 45/25


/mkm
Avatar billede mkm Nybegynder
21. september 2000 - 10:18 #11
Nu kan det godt være at det er mig der er tosset. Posterne bliver rigtignok slettet, men efterlader værdien #Deleted i alle felter

?

/mkm
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