webForumDet fria alternativet

reCAPTCHA och asp

ASP

8 svar · 636 visningar · startad av Moogle

Medlem sedan apr. 200842 inlägg
Frågan#1

Hej,

Jag måste lägga inn en captcha på 2 formulärer som jag får mycket spam ifrån.

Har lite svårt att få det till att fungera.
Jag har hittat en script som visserligen ska fläta ihop asp och captcha, men jag vet ej vart jag gör fel.
Här är koden för reCaptcha:

<% 
' returns string the can be written where you would like the reCAPTCHA 
challenged placed on your page 
function recaptcha_challenge_writer(publickey) 
recaptcha_challenge_writer = "<script type=""text/javascript"">" & _ 
"var RecaptchaOptions = {" & _ 
"   theme : 'white'," & _ 
"   tabindex : 0" & _ 
"};" & _ 
"</script>" & _ 
"<script type=""text/javascript"" src=""http://api.recaptcha.net/ 
challenge?k=" & publickey & """></script>" & _ 
"<noscript>" & _ 
  "<iframe src=""http://api.recaptcha.net/noscript?k=" & publickey & 
""" frameborder=""1""></iframe><br>" & _ 
    "<textarea name=""recaptcha_challenge_field"" rows=""3"" 
cols=""40""></textarea>" & _ 
    "<input type=""hidden"" name=""recaptcha_response_field"" 
value=""manual_challenge"">" & _ 
"</noscript>" 

end function 

function recaptcha_confirm(privkey,rechallenge,reresponse) 
' Test the captcha field 

Dim VarString 
VarString = _ 
        "privatekey=" & privkey & _ 
        "&remoteip=" & Request.ServerVariables("REMOTE_ADDR") & _ 
        "&challenge=" & rechallenge & _ 
        "&response=" & reresponse 

Dim objXmlHttp 
Set objXmlHttp = Server.CreateObject("Msxml2.ServerXMLHTTP") 
objXmlHttp.open "POST", "http://api-verify.recaptcha.net/verify", 
False 
objXmlHttp.setRequestHeader "Content-Type", "application/x-www-form- 
urlencoded" 
objXmlHttp.send VarString 

Dim ResponseString 
ResponseString = split(objXmlHttp.responseText, vblf) 
Set objXmlHttp = Nothing 

if ResponseString(0) = "true" then 
  'They answered correctly 
   recaptcha_confirm = "" 
else 
  'They answered incorrectly 
   recaptcha_confirm = ResponseString(1) 
end if 

end function 

%>

Koden för mitt ena formulär är:

<form name="form" method="post" action="http://formmail.iloopit.com">
<input type="hidden" name="recipient" value="submit@iloopit.com">
<input type="hidden" name="redirect" value="mail.asp?mess=sent">
<b>Name of store</b><br>
<input type="text" size="25" name="name"> <br>
<b>Your E-mail</b><br>
<input type="text" size="25" name="email"><br> 
<b>Url:</b><br>
<input type="text" name="body" size="40" wrap="physical" value="http://"><br>
<input type="hidden" name="subject" value="Suggest">
<input type="submit" value="Send">
</form>

Jag har public- och privatekey för recaptcha här.

Om nån vet hur det ska se ut blir jag jätteglad, eller om nån har en bättre lösning?

Tacksam för alla åsikter/förslag

Medlem sedan apr. 200842 inlägg
#2

Så här ser det ut så långt:

<form name="form" method="post" action="http://formmail.iloopit.com">
<input type="hidden" name="recipient" value="submit@iloopit.com">
<input type="hidden" name="redirect" value="mail.asp?mess=sent">
<b>Name of store</b><br>
<input type="text" size="25" name="name"> <br>
<b>Your E-mail</b><br>
<input type="text" size="25" name="email"><br> 
<b>Url:</b><br>
<input type="text" name="body" size="40" wrap="physical" value="http://"><br>
<input type="hidden" name="subject" value="Suggest">
<br>
<br>
<script>var RecaptchaOptions = { theme : 'blackglass' }; </script>
<script type="text/javascript" src="http://api.recaptcha.net/challenge?k=6Le5bwYAAAAAADh-lK2e3BGGuRpRFMOfncTcgpw6"></script>

	<noscript>
  		<iframe src="http://api.recaptcha.net/noscript?k=6Le5bwYAAAAAADh-lK2e3BGGuRpRFMOfncTcgpw6" height="300" width="500" frameborder="0"></iframe><br/>
  		<textarea name="recaptcha_challenge_field" rows="3" cols="40"></textarea>
  		<input type="hidden" name="recaptcha_response_field" value="manual_challenge">
  		</noscript>
  		<br>
<br>

  		<input type="submit" value="Submit" style="border:2px solid #000000;color:#FFFFFF;background-color:#334D80;font-size:105%;" onmouseover="this.style.backgroundColor='#009900'" onmouseout="this.style.backgroundColor='#334D80'">
	</form>

Nu måste jag ha inn nåt som kollar att allt stämmer..
Jag har testat att lägga inn en VBscript, men då stängs hela sajten ner.

Vart går vägen nu då? :l

Medlem sedan maj 2009250 inlägg
#3

Du ser ju ut att ha löst problememt redan ? http://www.iloopit.com/default.asp?show=contact

Medlem sedan juni 20019 519 inlägg
#4

vad jag förstå så skall du använda recaptcha_confirm vid din postning, om den retunera "" så är det OK annars får du i returnera något annat så har det uppstått ett fel.

Medlem sedan apr. 200842 inlägg
#5

johaseo skrev:

Du ser ju ut att ha löst problememt redan ? http://www.iloopit.com/default.asp?show=contact

Inte direkt. Det ser ut som det ska, men fungerar inte ;)

Medlem sedan apr. 200842 inlägg
#6

voigtann1 skrev:

vad jag förstå så skall du använda recaptcha_confirm vid din postning, om den retunera "" så är det OK annars får du i returnera något annat så har det uppstått ett fel.

Hmm.. jo, så långt hänger jag med, men hur ska det implementeras i koden?

Varje gång jag forsöker med att lägga inn en vbscript så slutar hela sajten att fungera. Nånstans gör jag fel x(

Kan nån visa mig vart recaptcha_confirm ska läggas inn? :OO

Medlem sedan apr. 200842 inlägg
#7

Forsöker med en sista fråga här..

Jag har en kod som ser ut så här:

<form name="form" method="post" action="http://formmail.iloopit.com">
<input type="hidden" name="recipient" value="submit@iloopit.com">
<input type="hidden" name="redirect" value="mail.asp?mess=sent">
<b>Name of store</b><br>
<input type="text" size="25" name="name"> <br>
<b>Your E-mail</b><br>
<input type="text" size="25" name="email"><br> 
<b>Url:</b><br>
<input type="text" name="body" size="40" wrap="physical" value="http://"><br>
<input type="hidden" name="subject" value="Suggest">
<br>
<br>
<script>var RecaptchaOptions = { theme : 'blackglass' }; </script>
<script type="text/javascript" src="http://api.recaptcha.net/challenge?k=6Le5bwYAAAAAADh-lK2e3BGGuRpRFMOfncTcgpw6"></script>

	<noscript>
  		<iframe src="http://api.recaptcha.net/noscript?k=6Le5bwYAAAAAADh-lK2e3BGGuRpRFMOfncTcgpw6" height="300" width="500" frameborder="0"></iframe><br/>
  		<textarea name="recaptcha_challenge_field" rows="3" cols="40"></textarea>
  		<input type="hidden" name="recaptcha_response_field" value="manual_challenge">
  		</noscript>
  		<br>
<br>

  		<input type="submit" value="Submit" style="border:2px solid #000000;color:#FFFFFF;background-color:#334D80;font-size:105%;" onmouseover="this.style.backgroundColor='#009900'" onmouseout="this.style.backgroundColor='#334D80'">
	</form>

I den måste jag ha inn en recaptcha_confrm, typ som:

if ResponseString(0) = "true" then
'They answered correctly
recaptcha_confirm = ""
else
'They answered incorrectly
recaptcha_confirm = ResponseString(1)
end if

Se kod i början av tråden.

Hur ska koden se ut om den ska fungera i det formuläret jag har postat, och vart ska det sättas inn??

Igen..tacksam om nån hjälper (y)

Medlem sedan juni 20019 519 inlägg
#8

Du måste ha kontrollen att de har fyllt i rätt i ditt form-post sida (http://formmail.iloopit.com) i ditt fall. kan du redigera den alls?

Medlem sedan apr. 200842 inlägg
#9

Vad menar du med "kan du redigera den alls" ?

Om jag fattar dig rätt så ja, alt går att redigera.. Formuläret är gjord för ett tag sen, men då jag får så mycket spam vill jag sätta dit en captcha.

Eller om nån har en annan metod som fungerar mot spam?

267 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
123 ms — deklarationer (db)
0 ms — hämta statistik (cache)
133 ms — hämta tråd, inlägg och bilagor (db)
132 ms — ändringar (db)