Bestätigung zum Löschen anfordern

zemnako

Grünschnabel
Hallo Freunde der hohen Kunst des Programmierens :)

Ich würde gerne eine Funktion in meine Seite einbauen, die den User zum Bestätigen des Löschvorgangs von einem Recordset anfordert (Wollen Sie wirklich diesen Eintrag endgültig löschen?). So was sieht man sehr oft beim Löschen von Emails in Webmails und ähnlichen Seiten. Nur ich weiß nicht wie?

Vielen Dank im Voraus

Zemnako
 

Alexander Schuc

crazy-weasel
Hallo.

Wirklich keine Ahnung? Ist nicht schwer, ich zeigs dir. ;)

Code:
 ID  |   Name    |  Option 
-----------------------------
  1  |   Bla     | [löschen]

Sagen wir du gibst die Daten in einer solchen Tabelle aus.
Wenn nun jemand auf löschen klickt soll der DatenSatz auch aus der Tabelle gelöscht werden.
Der Link 'löschen' sieht hier in dieser Tabelle folgendermassen aus.

Code:
<a href="delete.asp?ID=1">löschen</a>

So wirst du es wahrscheinlich schon ohne die gewünschte Sicherheitsabfrage haben.
Nun sehen wir uns an was in der Datei delete.asp steckt.

Code:
<%
...
id = CINT(Request.QueryString("ID"))

// Einfache if-Anweisung zum überprüfen ob eine ID da ist..
if Request.QueryString("ID") >= 0 then

	Response.Write("Willst du den Datensatz mit der ID " & id & " wirklich löschen?<br>"
	Response.Write("[<a href=""delete.asp?ID=" & id & "&action=delete"">Ja</a>] ")
	Response.Write("[<a href=""index.asp"">Nein</a>")


end if
%>

Wenn wir den Link zum bestätigen ansehen, sehen wir das nun eine neue QueryString-Variable dabei ist,
und jetzt erweitern wir die delete.asp um den Datensatz wirklich zu löschen.

Code:
id = CINT(Request.QueryString("ID"))

// Einfache if-Anweisung zum überprüfen ob eine ID da ist..
if Request.QueryString("ID") >= 0 then

	if Request.QueryString("action") = "delete" then
		
		// hier den Datensatz löschen ..

	else

		Response.Write("Willst du den Datensatz mit der ID " & id & " wirklich löschen?<br>"
		Response.Write("[<a href=""delete.asp?ID=" & id & "&action=delete"">Ja</a>] ")
		Response.Write("[<a href=""index.asp"">Nein</a>")

	end if

end if

Das war nun eine simple Sicherheitsabfrage.
Du könntest auch auf der Clientseite ein JavaScript haben das bevor das Formular abgesendet wird fragt ob man es auch wirklich tun will,
und wenn nich, das Formular nicht absendet.

Mfg,
Alex
 

Neue Beiträge