Hej,
Tänkte bygga en delete på sidan men har kört fast
Tanken är att kunden skall kunna radera inlägget om han uppger annonsens nummer och password.
Kod som inte funkar som det ska:
<%
loz=request.Form("loz")
broj=request.Form("broj")
If Request.form("loz")="" or request.form("broj")= "" Then
response.Redirect"delete.asp"
end if
set connect = server.createobject("ADODB.connection")
Connect.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("db/annonser.mdb") & ";pwd=;"
Set senaste = Server.CreateObject("ADODB.Recordset")
set fso = server.createobject("scripting.filesystemobject")
sql = "select * from serb where password ='"& request("loz") &"' and ID ="& Replace(broj, "'", "''") &""
set rs = connect.execute(sql)
while not rs.eof
‘On Error Resume Next
fso.DeleteFile(Server.MapPath("bilder/" & rs("filename")))
fso.DeleteFile(Server.MapPath("bilder/" & rs("filename1")))
fso.DeleteFile(Server.MapPath("bilder/" & rs("filename2")))
fso.DeleteFile(Server.MapPath("bilder/" & rs("filename3")))
fso.DeleteFile(Server.MapPath("video/" & rs("video")))
SQL="DELETE from serb where password="& Replace(loz, "'", "''")&" and id=" & Replace(broj, "'", "''")&""
connect.Execute SQL,,128
wend
rs.close
set rs = nothing
set fso = nothing
if Request("password")=Request.form("loz") and request("id")=request.form("broj") then
response.Write"Blabla"
else
response.Write"Blabla bla"
end if
%>
Bär om ursäkt för korspostade inlägg trodde att jag skapade ny tråd sorry.
Gjorde lite ändringar i koden och verkar fungera med radering men en sak jag kan inte få i ordning är med if satsen.
Om lösenordet och id stämmer då skall responsas meddelande att annonsen är bortagen om inte då är fel lösen osv.
Kod:
<%
loz=request.Form("loz")
broj=request.Form("broj")
If Request.form("loz")="" or request.form("broj")= "" Then
response.Redirect"delete.asp"
end if
set connect = server.createobject("ADODB.connection")
Connect.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("db/annonser.mdb") & ";pwd=;"
Set senaste = Server.CreateObject("ADODB.Recordset")
set fso = server.createobject("scripting.filesystemobject")
sql = "select * from serb where password='"& Replace(loz, "'", "''")&"' and id=" & Replace(broj, "'", "''")&""
set rs = connect.execute(sql)
if request.form("loz" )= request("password") then
response.Write"Annonsen är bortagen"
else
response.Write"fel lösen eller annons nummer"
end if
while not rs.eof
'On Error Resume Next
If fso.FileExists(Server.MapPath("bilder/" & rs("filename"))) then fso.DeleteFile(Server.MapPath("bilder/" & rs("filename")))
If fso.FileExists(Server.MapPath("bilder/" & rs("filename1"))) then fso.DeleteFile(Server.MapPath("bilder/" & rs("filename1")))
If fso.FileExists(Server.MapPath("bilder/" & rs("filename2"))) then fso.DeleteFile(Server.MapPath("bilder/" & rs("filename2")))
If fso.FileExists(Server.MapPath("bilder/" & rs("filename3"))) then fso.DeleteFile(Server.MapPath("bilder/" & rs("filename3")))
If fso.FileExists(Server.MapPath("video/" & rs("video"))) then fso.DeleteFile(Server.MapPath("video/" & rs("video")))
rs.movenext
wend
SQL="DELETE from serb where password='"& Replace(loz, "'", "''")&"' and id=" & Replace(broj, "'", "''")&""
connect.Execute SQL,,128
'response.write "Debug:" & sql
'response.end
rs.close
set rs = nothing
set fso = nothing
%>
Gör så här istället:
Detta är din kod, det jag tillsatte markerade jag med rött.
<%
loz=request.Form("loz")
broj=request.Form("broj")
If Request.form("loz")="" or request.form("broj")= "" Then
response.Redirect"delete.asp"
end if
set connect = server.createobject("ADODB.connection")
Connect.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("db/annonser.mdb") & ";pwd=;"
Set senaste = Server.CreateObject("ADODB.Recordset")
set fso = server.createobject("scripting.filesystemobject")
sql = "select * from serb where password='"& Replace(loz, "'", "''")&"' and id=" & Replace(broj, "'", "''")&""
set rs = connect.execute(sql)
[red]If rs.EOF Then ' betyder att databasen inte hittade något lösenord/användarnamn som matchar.
' betyder också att det var fel lösenord/användarnamn som personen skrev in
Response.Write "Fel lösenord eller användarnamn"
Else
Response.Write "Bla bla... raderad"
[/red]
while not rs.eof
'On Error Resume Next
If fso.FileExists(Server.MapPath("bilder/" & rs("filename"))) then fso.DeleteFile(Server.MapPath("bilder/" & rs("filename")))
If fso.FileExists(Server.MapPath("bilder/" & rs("filename1"))) then fso.DeleteFile(Server.MapPath("bilder/" & rs("filename1")))
If fso.FileExists(Server.MapPath("bilder/" & rs("filename2"))) then fso.DeleteFile(Server.MapPath("bilder/" & rs("filename2")))
If fso.FileExists(Server.MapPath("bilder/" & rs("filename3"))) then fso.DeleteFile(Server.MapPath("bilder/" & rs("filename3")))
If fso.FileExists(Server.MapPath("video/" & rs("video"))) then fso.DeleteFile(Server.MapPath("video/" & rs("video")))
rs.movenext
wend
SQL="DELETE from serb where password='"& Replace(loz, "'", "''")&"' and id=" & Replace(broj, "'", "''")&""
connect.Execute SQL,,128
[red]End if[/red]
'response.write "Debug:" & sql
'response.end
rs.close
set rs = nothing
set fso = nothing
%>
397 ms totalt · 4 externa anrop · v20260731065814-full.05830320