Forum Moderators: open

Message Too Old, No Replies

Form: Checking they link to my domain and matches 2 fields

Help to stop spam in reciprocal link exchange form

         

silverbytes

8:57 pm on Jan 10, 2007 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member



My webform for reciprocal link exchange gets 9 spams out of 10 received. Just 10% are correct link request.
It has a captcha by junkeather but anyway I get tons of spam.

Besides, only a 10% of good, human completed, form results I get are really valid.

Even when a webmaster fills the form manually most of times they are not linking from their websites first, as expected.

I think the only way to stop that is put something to verify, they are linking ( in "backlinkpage" field must check that field matches the domain in the other field called "urlagregar" AND, that they are actually linking to my site domain.

Can you help me? Sticky me if you want the url.

My form points to a form.php file

IN HEAD

<!--
function MM_findObj(n, d) { //v4.01
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_validateForm() { //v4.0
var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args[i]);
if (val) { nm=val.name; if ((val=val.value)!="") {
if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
if (p<1 ¦¦ p==(val.length-1)) errors+='- '+nm+' must contain an e-mail address.\n';
} else if (test!='R') { num = parseFloat(val);
if (isNaN(val)) errors+='- '+nm+' must contain a number.\n';
if (test.indexOf('inRange')!= -1) { p=test.indexOf(':');
min=test.substring(8,p); max=test.substring(p+1);
if (num<min ¦¦ max<num) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n';
} } } else if (test.charAt(0) == 'R') errors += '- '+nm+' is required.\n'; }
} if (errors) alert('The following error(s) occurred:\n'+errors);
document.MM_returnValue = (errors == '');
}

FORM:

<form action=http://www.mysite/form.php method=post name=formlinks id=formlinksexchange onSubmit="MM_validateForm('titulo','','R','urlagregar','','R','backlinkpage','','R','pais','','R','email','','RisEmail','contacto','','R');return document.MM_returnValue">
<input type=hidden name=posturl value=1999>

<table width=450 border=0 align=center cellpadding=0 cellspacing=6><tr><td width=213 valign=top class=textoforms><p><span>Your website title: </span><span class=datosnecesarios>*</span></p></td><td><input id=title type=text name=titulo size=28></td></tr><tr><td nowrap class=textoforms><p>Your website URL:<span class=datosnecesarios>*</span></p></td><td><input type=text name=urlagregar id=urladd size=28></td></tr><tr><td nowrap class=textoforms><p>Your website description:<span class=datosnecesarios>*</span></p></td><td><input type=text name=description id=descrip size=28></td></tr><tr><td nowrap class=textoforms><p>Url in your website linking to us:<span class=datosnecesarios>*</span></p></td><td><input id=backlink type=text name=backlinkpage size=28></td></tr><tr><td nowrap class=textoforms><p>Your website's country:<span class=datosnecesarios>*</span></p></td><td><input id=country type=text name=pais size=28></td></tr><tr><td class=textoforms><p><span>E-mail: </span><span class=datosnecesarios>*</span></p></td><td><input id=mail type=text size=28 name=email></td></tr><tr><td class=textoforms><p>Contact name: <span class=datosnecesarios>*</span></p></td><td><input id=contact type=text name=contacto size=28></td></tr><tr><td class=textoforms><p>Security code: <span class=datosnecesarios>*</span></td><td><script language="JavaScript" src="http://www.junkeater.com/checkjs.php" charset="ISO-8859-1"></script></td></tr><tr><td class=textoforms><p>(Press just once and wait please)</p></td><td><input name=Submit type=submit onClick="MM_validateForm('email','','RisEmail');return document.MM_returnValue" value="Add URL"></td></tr></table></form>

netfiends

1:33 am on Jan 11, 2007 (gmt 0)

10+ Year Member



To check that they're linking to you you'll have to setup a cron to check their site every 7 days [or however often as you want] then data scrape their site looking for your link. For the spam maybe do an ajax style captcha?

silverbytes

4:32 pm on Jan 11, 2007 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member



I see many directories where they have the reciprocal link text field and if you enter gabage there you are advised once you pressed submit...
Nothing of cronjobs, they check on the fly.
That's what I'm talking about...
all-blogs net has something like that.