SStefanPMedlem sedan jan. 200284 inlägg Frågan#1 Halloj.
Jag försöker få till det så att prenumeranter kan ta bort sig själva ur nyhetsbrevet.
Jag har en sida som heter radera.asp
<form name="form1" method="post" action="deletemail.asp">
<input type="text" name="email">
<input type="submit" name="Submit" value="Submit">
</form>
Sen deletemail.asp
<!-- #include file="adovbs.inc" -->
<% DBPath = "DBQ=" & Server.MapPath("newslettermain.mdb")
Set connect = Server.CreateObject("ADODB.Connection")
Connect.Open "DRIVER={Microsoft Access Driver (*.mdb)}; " & DBPath
Set RecSet = Server.CreateObject("ADODB.Recordset")
Radera = "SELECT * from email WHERE email='"& request.form("email") &"'"
[b]IF len(RecSet("email")) >0 then[/b]
response.write "Emailadressen finns inte"
ELSE
RecSet.Open Radera, Connect, adOpenStatic, adLockOptimistic
RecSet.Delete
RecSet.Close
Connect.Close
end if
%>
Men jag får felet
"Item cannot be found in the collection corresponding to the requested name or ordinal"
line 9
"Line 9 är Bold"
Jag har kollat hur många ggr som helst att tabellen heter "email" och kollumnen heter "email"
Så jag förstår inte vad som är fel?
SsolbulleMedlem sedan mars 20015 287 inlägg Du kan väl inte använda dig av RecSet("email") innan du öppnat ditt rs?
SsolbulleMedlem sedan mars 20015 287 inlägg typ kanske:
<!-- #include file="adovbs.inc" -->
<% DBPath = "DBQ=" & Server.MapPath("newslettermain.mdb")
Set connect = Server.CreateObject("ADODB.Connection")
Connect.Open "DRIVER={Microsoft Access Driver (*.mdb)}; " & DBPath
Set RecSet = Server.CreateObject("ADODB.Recordset")
Radera = "SELECT * from email WHERE email='"& request.form("email") &"'"
if not rs.eof then
RecSet.Open Radera, Connect, adOpenStatic, adLockOptimistic
RecSet.Delete
RecSet.Close
Connect.Close
else
response.write "Emailadressen finns inte"
end if
%>
SStefanPMedlem sedan jan. 200284 inlägg hmm
Operation is not allowed when the object is closed.
line 10
if not RecSet.eof then
SsolbulleMedlem sedan mars 20015 287 inlägg Hupp, byt plats på dessa rader:
if not rs.eof then
RecSet.Open Radera, Connect, adOpenStatic, adLockOptimistic
till:
RecSet.Open Radera, Connect, adOpenStatic, adLockOptimistic
if not rs.eof then
så kanske det gårr bättre...
SStefanPMedlem sedan jan. 200284 inlägg hmm
Nu säger den Emailadressen finns inte oavsett ifall den finns eller inte :(
<!-- #include file="adovbs.inc" -->
<%
DBPath = "DBQ=" & Server.MapPath("newslettermain.mdb")
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "DRIVER={Microsoft Access Driver (*.mdb)}; " & DBPath
Set RecSet = Server.CreateObject("ADODB.Recordset")
Radera = "SELECT * from email WHERE email='"& request.form("email") &"'"
RecSet.Open Radera, Connect, adOpenStatic, adLockOptimistic
if not RecSet.eof then
RecSet.Delete
RecSet.Close
Connect.Close
else
response.write "Emailadressen finns inte"
end if
%>
LLarsGMedlem sedan dec. 200012 464 inlägg Får du in korrekt värde från request.form? Du kan ju lägga in en test-utskrift
Radera = "SELECT * from email WHERE email='"& request.form("email") &"'"
response.write radera
response.end
SStefanPMedlem sedan jan. 200284 inlägg hmm
I Adressen så kommer mailen med
deletemail.asp?email=stefan@uppdaterad.com
Men när jag skriver ut "radera" så får den inte med värdet
Såhär mycket får den me då
"SELECT * from email WHERE email=''
LLarsGMedlem sedan dec. 200012 464 inlägg Radera = "SELECT * from email WHERE email='"& request.querystring("email") &"'"
SStefanPMedlem sedan jan. 200284 inlägg Nu fungerar det.... Jag tog bort name på form name="blabla"
Konstigt detta.
Men nu fungerar det varjefall.. tack!