Register for your free account! | Forgot your password?

Go Back   elitepvpers > Off-Topics > Tutorials
You last visited: Today at 01:32

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



[How2]Spamschutz ohne Captcha!

Discussion on [How2]Spamschutz ohne Captcha! within the Tutorials forum part of the Off-Topics category.

Reply
 
Old   #1
 
[GA]FreeZoNe's Avatar
 
elite*gold: 0
Join Date: Jan 2010
Posts: 188
Received Thanks: 57
Post [How2]Spamschutz ohne Captcha!

Heute wollte ich euch mall zeigen wie einfach ihr einen Spamschutz hinbenkommt ohne einen Captcher also legen wir mall los

Die Frage, um die es in diesem Tutorial gehen soll, ist:
Wie erstelle ich einen Spamschutz ohne Captchas und ohne das die Besucher davon irgendetwas merken?
Der Nachteil eines Captchas ist schnell erklärt: Er ist für Besucher, die mit einem Textbrowser unterwegs sind, nicht lösbar.
Außerdem ist es oft lästig, auf Webseiten bestätigen zu müssen, dass man ein Mensch ist!

Dafür habe ich mir zwei Sachen überlegt.
Erstens: Ein Feld, das nicht ausgefüllt werden muss, aber als eMail-Feld benannt wird. Natürlich schreiben wir dazu, dass Besucher es nicht ausfüllen dürfen.
Zweitens: Eine Zeitüberprüfung. Ein Bot liefert eine Seite nach Sekunden zurück mit den eingetragenen Sachen, ein Mensch wird das nicht machen (und wenn doch hat er Pech )

ür die erste Idee brauchen wir ein Formular (auf das nötigste beschränkt, wird nicht xhtml-valide sein!):

PHP Code:
<html>  
<
head>  
<
link rel="stylesheet" type="text/css" href="style.css">  
</
head>  
<
body>  
<
form action="verarbeiten.php" method="post">  
Name: <input type="text" name="name"><br>  
Email-Adresse: <input type="text name="email"><br>  
<span class="
unsichtbar">  
Email-Adresse nicht eintragen: <input type="
text" name="email2">  
</span>  
<input type="
submit" name="submit" value="Abschicken">  
</form>  
</body>  
</html> 
In Zeile 9 wird die Style-Klasse "unsichtbar" angewendet, die entsprechende style.css sieht so aus:

PHP Code:
.unsichtbar {  
displayblock;  

Dadurch wird verhindert, dass diese Zeilen angezeigt werden. Auch Textbrowser verstehen das, Bots aber (noch) nicht.
Jetzt muss noch abgeprüft werden, ob diese Zeilen auch wirklich nicht ausgefüllt worden sind. Wenn Sie ausgefüllt worden sind, dann kann man davon ausgehen, dass es ein Bot war!

Die Datei "verarbeiten.php" sieht dann so aus:

PHP Code:
<?php  
if($_POST['email2'] != ""){  
// Bot!  
die("Bitte gehen Sie zurück und kontrollieren Sie Ihre Angaben!");  
}  
else {  
// normale Anweisungen, kein Bot!  
}  
?>
Noch kurz die Erklärung: In der zweiten Zeile wird überprüft, ob das Feld email2, also genau das, was nur der Bot sieht, ausgefüllt wurde. Wenn ja, und das ist die erste Verzweigung, dann wird das Script mit die(); abgebrochen, ansonsten wird ganz normal weiter gemacht!
Damit hätten wir die erste Idee abgeschlossen.

Kommen wir zur zweiten Idee: Die Zeitabfrage.
Dazu benutzen wir unser erstes Formular, nur leicht abgeändert. Wir fügen ein hidden-Feld hinzu, indem die aktuelle Zeit (Rückgabe von time()) gespeichert wird.
Das sieht dann so aus:

PHP Code:
<html>  
<head>  
<link rel="stylesheet" type="text/css" href="style.css">  
</head>  
<body>  
<form action="verarbeiten.php" method="post">  
Name: <input type="text" name="name"><br>  
Email-Adresse: <input type="text name="email"><br>  
<input type="hidden" name="uhrzeit" value="<?php echo time(); ?>">  
<input type="submit" name="submit" value="Abschicken">  
</form>  
</body>  
</html>
In Zeile 9 wird ein Formularfeld definiert, was als Typ hidden ist, also nicht angezeigt wird. In diesem Feld wird das aktuelle Datum gespeichert.

Der PHP-Teil in der Datei "verarbeiten.php" müsste dann so aussehen:

PHP Code:
<?php  
if($_POST['uhrzeit'] <= (time() - 10){  
// Bot, denn die Seite wurde in unter 10 Sekunden abgeschickt!  
die("Bitte gehen Sie zurück und kontrollieren Sie Ihre Angaben!");  
}  
else {  
// normale Anweisungen, kein Bot!  
}  
?>
Damit müsste ein relativ guter Spamschutz realisiert sein! Am Besten ist natürlich, man kombiniert beide Möglichkeiten.

Noch Fragen?
Sprich mich an!



[GA]FreeZoNe is offline  
Old 04/16/2010, 00:43   #2

 
ClOuDy.'s Avatar
 
elite*gold: 0
The Black Market: 184/0/0
Join Date: Jul 2008
Posts: 2,784
Received Thanks: 500
"display: none;" versteckt ein element.

1. ein bot kann kein feld ausfüllen das er nicht sieht. er erkennt zwar den code, dass er vorhanden ist, reinschreiben kann er trotzdem ncihts. kann er das nicht macht er einfach weiter.

hidden felder werden auch benutzt um abfragen zu prüfen...das stört bots auch nicht.

- eine möglichkeit ein paar bots zu ärgern ist, einfach die felder nicht "mail" sondern z.b. "fingerhut" zu nennen, damit kommen manche bots nicht klar
ClOuDy. is offline  
Old 04/16/2010, 00:52   #3
 
[GA]FreeZoNe's Avatar
 
elite*gold: 0
Join Date: Jan 2010
Posts: 188
Received Thanks: 57
Du hast wirklich ein komisches deutsch ^^ ich versteh fast nichts was du da geschrieben hast XDD
[GA]FreeZoNe is offline  
Old 04/16/2010, 08:28   #4
 
Noyze's Avatar
 
elite*gold: 0
Join Date: Jun 2007
Posts: 2,939
Received Thanks: 1,862
Ja weil du keine Ahnung von dem Thema hast für dessen du ein Tutorial geschrieben hast.. oder eher kopiert hast..
Noyze is offline  
Old 04/16/2010, 20:02   #5
 
elite*gold: 1
Join Date: Oct 2008
Posts: 1,078
Received Thanks: 276
Spamschutz geht auch ohne Captcha (siehe Beispiel ICQ und Co.)

Außerdem ist es schon mit kleinen Sprachen wie AutoIT recht einfach deine Vorkehrungen zu umgehn...
.nAno is offline  
Reply


Similar Threads Similar Threads
[How2]Ohne Disconnect's Editor server ausschalten
07/13/2010 - Metin2 PServer Guides & Strategies - 29 Replies
Ein Minitutorial für euch, wer was mit Anfangen kann gl und hf. Die anderen... tja da weiß ich auch nicht ;) Tutorial: Man kann die FUnktion im CLienten, die die Packete verschlüsselt ganz leicht hooken. Wer sich damit mal auseinandersetzen will sollte im CLient bei bei 0x0047A1C0 schauen
[HOW2]Magie Sura schnell hoh zihen ohne hilfe
03/07/2010 - Metin2 Guides & Templates - 22 Replies
Wenn ihr den sura bist auf 86 haben wollt müsstet ihr so skillen str und vit danach erst mp als fertigkeiten nehmt ihr am besten 1.schutz 2.flammenschlag 3.gdf und dann wie ihr wollt :) ein kg muss natührlich sein sonst schafft man das ja theoretischer weise nicht ihr braucht auserdem gute EQ denn ab 42 müsst ihr schon in otm lvln können und wenn man dann später zu schlecht für sd2 ist dann braucht man verwandlung auf p ;) denn damit könnt ihr mit vwks im sd2 lvln dies soll nur ne...



All times are GMT +1. The time now is 01:38.


Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2025 elitepvpers All Rights Reserved.