---
title: "Ta bort funktion"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/75353-ta-bort-funktion"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "asp"
published: "2003-04-29T12:49:55.000Z"
updated: "2003-04-30T11:10:34.000Z"
replies: 23
views: 511
page: 1
pages: 2
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/asp/75353-ta-bort-funktion"
---

# Ta bort funktion

_Sida 1 av 2._

## #1 — asp, 2003-04-29T12:49Z

Hej,

jag har en funktion som tar bort inlägg från en databas men jag får den ej att fungera. Här kommer koden:

```
<%

Case "admin"
Dim deleteID
deleteID = Trim(Request.QueryString("tabort"))
Set Rs = Conn.Execute("SELECT * FROM Post ORDER BY ID DESC")
Set Rs = Conn.Execute("DELETE * FROM Post WHERE ID = '" & deleteID & "'")
Do Until Rs.EOF
%>

<a href="gp.asp?vias=admin&tabort="' & deleteID & '">Ta bort inlägg</a>

<%
Rs.Movenext
Loop
Rs.Close : Set Rs = Nothing
Conn.Close : Set Conn = Nothing
%>
```

Permalänk: https://www.webforum.nu/p/75353

## #2 — voigtann1, 2003-04-29T12:52Z

ändra till:

```
<%

Case "admin"
Dim deleteID
deleteID = Trim(Request.QueryString("tabort"))
Set Rs = Conn.Execute("DELETE * FROM Post WHERE ID = " & deleteID)
Do Until Rs.EOF
%>

<a href="gp.asp?vias=admin&tabort="' & deleteID & '">Ta bort inlägg</a>

<%
Rs.Movenext
Loop
Rs.Close : Set Rs = Nothing
Conn.Close : Set Conn = Nothing
%>
```

om ID är räknare så ska du inte använda '

Permalänk: https://www.webforum.nu/p/1027616

## #3 — m_soderlund, 2003-04-29T12:52Z

```
Set Rs = Conn.Execute("DELETE * FROM Post Where Id=" & deleteID)
```

Din kod är lite skum, du plockar ut alla fält från databasen och vill visa alla poster, och sedan raderar någon liten post?

Permalänk: https://www.webforum.nu/p/1027619

## #4 — asp, 2003-04-29T12:55Z

Nej, jag vill lista upp alla Inlägg för att sedan radera dem..

Permalänk: https://www.webforum.nu/p/1027622

## #5 — m_soderlund, 2003-04-29T12:57Z

Ännu bättre:

```
[blue]<%

Case "admin"
Dim deleteID
deleteID = Trim(Cint(Request.QueryString("tabort")))

If Not IsNumeric(deleteId) Then
Response.Write "Id-numret måste vara ett tal.."
Else

'anslut till databasen

Set Rs = Conn.Execute("SELECT Id FROM Post ORDER BY ID DESC")
If Rs.EOF Then
Response.Write "Finns inget att radera.."
Else
Do While Not Rs.EOF
Response.Write "<a href=""gp.asp?[b]visa[/b]=admin&tabort=" & deleteID & """>Ta bort inlägg</a>"
Rs.Movenext
Loop

Rs.Close : Set Rs = Nothing
Conn.Close : Set Conn = Nothing

If Len(Request.Querystring("tabort"))>0 Then
'anslut till databasen
Conn.Execute("DELETE * FROM Post WHERE Id=" & deleteId),,128
Conn.Close : Set Conn = Nothing
End If

End If
%>[/blue]
```

Du har klumpig kod, denna tror jag ska fungera lite bättre. :D

/r Jag använder ex. IsNumeric() för att kolla att id-numret som skickas med verkligen är ett tal. Lade till ,,128 i sista SQL-satsen också - man glömmer alltid bort det ju!

Permalänk: https://www.webforum.nu/p/1027624

## #6 — Palle, 2003-04-29T13:02Z

Hmm.. denna borde funka: 

```
[RED]<%

Case "admin"

	Dim deleteID, intID
	deleteID = Trim(Request.QueryString("tabort"))

	Set Rs = Conn.Execute("SELECT id FROM Post ORDER BY id DESC")
	Do Until Rs.EOF

		intID = Rs("id")
		Response.Write "<a href=""gp.asp?vias=admin&tabort="& intID &""">Ta bort inlägg</a><br>"

	Rs.Movenext
	Loop
	Rs.Close : Set Rs = Nothing

	If Len(deleteID) > 0 Then
		Conn.Execute("DELETE FROM Post WHERE ID = "& deleteID),,128
	End If

	Conn.Close : Set Conn = Nothing

%>[/RED]
```

Permalänk: https://www.webforum.nu/p/1027629

## #7 — asp, 2003-04-29T13:23Z

allt fungerar nästam perfekt nu. man måste klicka två gånger för att radera ett inlägg.

hur skall jag skriva för att få fram id utanför aspkoden?

\<%= "& intID &" %\> fungerar inte

Permalänk: https://www.webforum.nu/p/1027655

## #8 — Palle, 2003-04-29T13:28Z

Detta räcker:

```
[red]<%= intID %>[/RED]
```

Permalänk: https://www.webforum.nu/p/1027657

## #9 — asp, 2003-04-29T13:29Z

Men man måste fortfarande klicka två gånger..

Permalänk: https://www.webforum.nu/p/1027659

## #10 — asp, 2003-04-29T13:35Z

Man måste inte klicka två gånger utan inlägget finns kvar fast man har tagit bort det. Inte förrän man har "upddaterat" sidan så försviner inlägget från admin!

Permalänk: https://www.webforum.nu/p/1027662

## #11 — Palle, 2003-04-29T13:41Z

Lägg till en redirect så du åker tillbaka till sidan igen..
Se **fet stil** i koden nedan.

```
[red]<%

Case "admin"

	Dim deleteID, intID
	deleteID = Trim(Request.QueryString("tabort"))

	Set Rs = Conn.Execute("SELECT id FROM Post ORDER BY id DESC")
	Do Until Rs.EOF

		intID = Rs("id")
		Response.Write "<a href=""gp.asp?vias=admin&tabort="& intID &""">Ta bort inlägg</a><br>"

	Rs.Movenext
	Loop
	Rs.Close : Set Rs = Nothing

	If Len(deleteID) > 0 Then
		Conn.Execute("DELETE FROM Post WHERE ID = "& deleteID),,128
		[b]Response.Redirect "gp.asp"[/b]
	End If

	Conn.Close : Set Conn = Nothing

%>[/red]
```

Permalänk: https://www.webforum.nu/p/1027666

## #12 — asp, 2003-04-29T13:44Z

tackar!

Permalänk: https://www.webforum.nu/p/1027667

## #13 — asp, 2003-04-29T14:08Z

Behöver hjälp med att uppdatera inlägg också. Kan ni tänka er att hjälpa mig?

Permalänk: https://www.webforum.nu/p/1027682

## #14 — Sebbe, 2003-04-29T14:37Z

Om du redan har gjort form:en i html kanske ASP-koden kan se ut någonting såhär, om vi fortsätter på m_soderlund's kod?

```
<%
Case "admin"
  Dim deleteID
  deleteID = Trim(CInt(Request.QueryString("tabort")))

  If NOT IsNumeric(deleteId) Then
    Response.Write("Id-numret måste vara ett tal..")
    Response.End
  Else
    Set Rs = Conn.Execute("SELECT Id FROM Post ORDER BY ID DESC")
    If Rs.EOF Then
      Response.Write("Finns inget att radera..")
    Else
      Do Until Rs.EOF
        Response.Write("<a href=""gp.asp?visa=admin&tabort=" & Id & """>Ta bort inlägg</a><br>" & vbCrLf)
        Response.Write("<a href=""gp.asp?visa=admin&redigera=" & Id & """>Redigera inlägg</a><br>" & vbCrLf)
        Rs.Movenext
      Loop
    End If
    Rs.Close
    Set Rs = Nothing
    Conn.Close
    Set Conn = Nothing
  End If

  If Len(Request.QueryString("tabort")) > 0 Then
    Conn.Execute("DELETE FROM Post WHERE Id=" & deleteId),,128
    Response.Redirect("gb.asp")
    Conn.Close 
    Set Conn = Nothing
  End If

  If Len(Request.QueryString("redigera")) > 0 AND IsNumeric(Request.QueryString("redigera")) Then
    Conn.Execute("UPDATE Post SET namn = '" & Request.Form("namn") & "', mail = '" & Request.Form("mail") & "' WHERE Id = " & Request.QueryString("redigera")),,128 ' O.s.v
    Response.Redirect("gb.asp")
    Conn.Close
    Set Conn = Nothing
  End If
%>
```

**/red** Redigerat koden. :)

Permalänk: https://www.webforum.nu/p/1027692

## #15 — asp, 2003-04-29T15:43Z

```
<%
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Driver={Microsoft Access Driver (*.mdb)};dbq="& Server.MapPath("db/gastbok.mdb")
%>
<html>
<head>
<title>Gästbok 1.1 av Marcus Christiansson</title>
<style type="text/css">
BODY {font-family: verdana; font-size: 11px; color: #000000; margin: 0px; text-align: center}
TABLE, TD {font-family: verdana; font-size: 11px; color: #000000}
INPUT, SELECT, TEXTAREA {font-family: verdana; font-size: 11px; color: #000000; border: 1px solid #000000; width: 100%; height: 17}
A {text-decoration: none; color: #000000}
A:VISIT {text-decoration: none; color: #000000}
A:HOVER {text-decoration: none; color: #000000}
</style>
</head>
<body>

<table width="300" cellpadding="0" cellspacing="0">
<tr>
<td height="30"></td>
</tr>
<tr>
<td>

<table width="100%" cellpadding="2" cellspacing="0" style="border: 1px solid #000000; text-align: center">
<tr>
<td width="33%" style="border-right: 1px solid #000000; background-color: #F9F9F9; cursor: hand" onMouseOver="this.style.backgroundColor='#CCCCCC'"; onMouseOut="this.style.backgroundColor='#F9F9F9';" onClick="location.href('gb.asp?visa=skriv')";>Skriv ett inlägg</td>
<td width="34%" style="border-right: 1px solid #000000; background-color: #F9F9F9; cursor: hand" onMouseOver="this.style.backgroundColor='#CCCCCC'"; onMouseOut="this.style.backgroundColor='#F9F9F9';" onClick="location.href('gb.asp?visa=las')";>Läs i gästboken</td>
<td width="33%" style="background-color: #F9F9F9; cursor: hand" onMouseOver="this.style.backgroundColor='#CCCCCC'"; onMouseOut="this.style.backgroundColor='#F9F9F9';" onClick="location.href('gb.asp?visa=admin')";>Aministration</td>
</td>
</tr>
</table>

</td>
</tr>
<tr>
<td height="20"></td>
</tr>
<tr>
<td>

<%
visa = Request("visa") 
Select case visa
Case "skriv"
%>

<table width="300" cellpadding="2" cellspacing="5" style="border: 1px solid #000000; background-color: #F9F9F9">
<tr>
<form method="post" name="post" action="gb.asp?visa=spara">
<td width="100">Namn</td>
<td width="200"><input name="namn" type="text" /></td>
</tr>
<tr>
<td width="100">E-post</td>
<td width="200"><input name="epost" type="text" /></td>
</tr>
<tr>
<td width="100">Ort</td>
<td width="200"><input name="ort" type="text" /></td>
</tr>
<tr>
<td width="100" valign="top">Meddelande</td>
<td width="200"><textarea name="meddelande" style="height: 80"></textarea>
</tr>
<tr>
<td colspan="2"><input type="submit" value="Skicka meddelande" onClick="B1_OnClick(); return false;">
</td>
</tr>
</table>
</form>
<script language="JavaScript">
function B1_OnClick() {
  var nam = document.post.namn.value;
  var med = document.post.meddelande.value;
  
  if((nam.length !=0) && (med.length !=0)) {
    document.post.submit();
  } else {
    alert("Namn och meddelande måste fyllas i!");
  }
}
</script>

<%
Case "spara"
  
Dim namn, epost, ort, meddelande
namn = Trim(Request.Form("namn"))
epost = Trim(Request.Form("epost"))
ort = Trim(Request.Form("ort"))
meddelande = Trim (Request.Form("meddelande"))
  
If Len(namn) > 0 Then
  Dim datum
  datum = date()
  SQL = "INSERT INTO Post (Namn, Epost, Ort, Meddelande, Datum) VALUES ('" & namn & "','" & epost & "','" & ort & "','" & meddelande & "','" & datum & "')"
  Conn.Execute(SQL)
  Response.Redirect"gb.asp?visa=las"
  Conn.Close
  Set Conn = Nothing
End If
  
Case "las"
  
Set Rs = Conn.Execute("SELECT * FROM Post ORDER BY ID DESC")
Do Until Rs.EOF
  
%>
<table width="300" cellpadding="3" cellspacing="0" style="border: 1px solid #000000; background-color: #F9F9F9">
<tr>
<td><%= rs("meddelande") %></td>
</tr>
<tr>
<td style="font-size: 10px; background-color: #CCCCCC">Skrivet av
<% If rs("epost") < "0" then
response.write"" & rs("namn") & ""
Else
response.write"<a href='mailto:" & rs("epost") & "'>" & rs("namn") & "</a>"
End if %>
<% If rs("ort") < "0" then
response.write""
Else
response.write" från " & rs("ort") & ""
End if
response.write" , "
Session.LCID = 1053
Response.Write(FormatDateTime(rs("datum"), vbLongDate))
%>.</td>
</tr>
</table>
<br>
<%
Rs.Movenext
Loop
Rs.Close : Set Rs = Nothing
Conn.Close : Set Conn = Nothing
  
Case "admin"
  
Dim deleteID, updateID
deleteID = Trim(Request.QueryString("tabort"))
Set Rs = Conn.Execute("SELECT * FROM Post ORDER BY id DESC")
If Len(deleteID) > 0 Then
Conn.Execute("DELETE FROM Post WHERE ID = "& deleteID),,128
Response.Redirect"gb.asp?visa=admin&rtabort"
End if
Do Until Rs.EOF 
%>
<table width="300" cellpadding="2" cellspacing="5" style="border: 1px solid #000000; background-color: #F9F9F9">
<tr>
<td width="250" style="font-size: 10px">Skrivet av <%= rs("namn") %>,
<%
Session.LCID = 1053
Response.Write(FormatDateTime(rs("datum"), vbLongDate))
%></td>
<td width="50" style="text-align: right">
<a href="gb.asp?visa=admin&redigera=<%= rs("id") %>"><img src="bilder/redigera.gif" title="Redigera" border="0" width="11" height="12"></a>
<a href="gb.asp?visa=admin&tabort=<%= rs("id") %>"><img src="bilder/tabort.gif" title="Radera" border="0" width="11" height="12"></a></td>
</tr>
</table>
<br>
<%
Rs.Movenext
Loop
Rs.Close : Set Rs = Nothing
Conn.Close : Set Conn = Nothing
%>
<table width="300" cellpadding="2" cellspacing="5" style="border: 1px solid #000000; background-color: #F9F9F9">
<tr>
<td width="100">Lösenord</td>
<td width="200">
<form name="login" method="post" action="gb.asp?visa=admin">
<input type="password" name="pass"></td>
</tr>
<tr>
<td colspan="2"><input type="submit" value="Logga in.."></td>
</tr>
</table>
</form>

<%
Case Else
Response.Redirect"gb.asp?visa=las"
End Select
%>

</td>
</tr>
</table>

</body>
</html>
```

Permalänk: https://www.webforum.nu/p/1030551

## #16 — asp, 2003-04-29T19:24Z

Ingen som kan hjälpa mig?

Permalänk: https://www.webforum.nu/p/1030769

## #17 — @nders, 2003-04-29T19:39Z

Det är lättare att få någon att hjälpa till om du berättar vad problemet är. :i

Jag är inte sugen på att lusläsa hundra rader kod om jag inte vet vad jag ska titta efter.

Mvh

Permalänk: https://www.webforum.nu/p/1030790

## #18 — asp, 2003-04-29T19:43Z

Jag skall göra en funktion för att uppdatera resp. ta bort inläggen i min gästbok. Jag vet inte vad jag skall skriva efter WHERE ID på SQL satsen där jag uppdaterar. Så här långt har jag kommit:

```
<%
Case "admin"
  
Dim deleteID, updateID
deleteID = Trim(Request.QueryString("tabort"))
updateID = Trim(Request.QueryString("redigera"))
Set Rs = Conn.Execute("SELECT * FROM Post ORDER BY id DESC")
If Len(deleteID) > 0 Then
Conn.Execute("DELETE FROM Post WHERE ID = "& deleteID),,128
Response.Redirect"gb.asp?visa=admin&tabort"
End if
If Len(updateID) > 0 Then
Conn.Execute("UPDATE Post SET "& namn & "','" & epost & "','" & ort & "','" & meddelande & " WHERE ID = )
Response.Redirect"gb.asp?visa=admin&redigera"
End if
Do Until Rs.EOF 
%>
```

Länkarna för att utföra funktionerna ser ut såhär:

```
<a href="gb.asp?visa=admin&redigera=<%= rs("id") %>"><img src="bilder/redigera.gif" title="Redigera" border="0" width="11" height="12"></a>
<a href="gb.asp?visa=admin&tabort=<%= rs("id") %>"><img src="bilder/tabort.gif" title="Radera" border="0" width="11" height="12"></a>
```

Permalänk: https://www.webforum.nu/p/1030797

## #19 — asp, 2003-04-30T04:36Z

Ingen som vet?

Permalänk: https://www.webforum.nu/p/1031037

## #20 — jstal, 2003-04-30T06:54Z

Du ska lägga till denna querystringen.

```
Request.Querystring("redigera")
```

 
Så SQL raden bör se ut så här:

```
Conn.Execute("UPDATE Post SET "& namn & "','" & epost & "','" & ort & "','" & meddelande & " WHERE ID = " & request.querystring("redigera"))
```

Permalänk: https://www.webforum.nu/p/1031092

---

Tråden på webben: https://www.webforum.nu/amne/asp/75353-ta-bort-funktion  
Nästa sida: https://www.webforum.nu/amne/asp/75353-ta-bort-funktion/page2.md
