php.de

Zurück   php.de > Webentwicklung > PHP-Fortgeschrittene

PHP-Fortgeschrittene Arbeiten mit PHP ohne Einschränkungen

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 21.05.2008, 10:38  
Erfahrener Benutzer
 
Benutzerbild von litterauspirna
 
Registriert seit: 24.04.2008
Beiträge: 3.070
PHP-Kenntnisse:
Anfänger
litterauspirna befindet sich auf einem aufstrebenden Ast
litterauspirna eine Nachricht über ICQ schicken
Standard Gleichungs Captcha PHP

Hallo Leute!

Als erstes vornweg,dies ist mein aller erstes Tut überhaupt und ich hoffe ich schreibe es gut! Es wird dafür sicher viele andere und auch bessere Möglichkeiten geben dieses auszubauen. Ich habe mir hier ein ganz einfaches und simples Captcha geschrieben in der Art einer Gleichung. Ich eine Gleichung für besser,weil ein einfacher Zufallscode vieleicht doch zu einfach ist.

Spambots versuchen alle Felder in einem Fprmular auszufüllen und das auch ziemlich schnell (Ich glaube in Millisekunden,bin mir aber nicht sicher)!
In Form einer Gleichung haben es diese Bots aber schwer denn man braucht Zeit um diese auszurechnen und dann auch ein zu tippen,zuviel Zeit für einen Bot!

Genug der langen Rede fangen wir an!

Also als erstes legen wir uns mal zwei Dateien an, die eine nennen wir captcha.php und die andere formular.php (natürlich optional)!

So nachdem wir das gemacht haben erstellen wir uns in einem Grafik Programm ein png Bild (natürlich gehen auch andere Formate) und nennen dieses captcha_bg.png (optional)! Und natürlich eine Schriftdatei müssen wir uns in dem Verzeichnis wo wir unsere angelegten Dateien und das Bild rein gespeichert haben auch noch rein speichern. Dazu könnt einfach aus dem dem Ordner eures Systems eine Datei in euer Verzeichnis rein kopieren, ich habe mich für tahoma.ttf entschieden! Ihr könnt euch auch was anderes suchen,aber beachtet bitte nicht alle Schriftformate unterstützen Zeichen wie + oder =. Also testet das in einem Grafikprogramm vorher einfach aus ob das in der Schriftart unterstützt wird!

So und nun kommen wir zum Code,denn ich denke an Vorinfos reicht das aus!

Als erstes schreiben wir uns eine Funktion die uns einen zufälligen Wert generiert!

Funtion:
PHP-Code:
//Wichtig denn der Ergebnis wert wird anschliesend in einer Session Var
//gespeichert
session_start();
 
//Funktion um Gleichungsteile zu erstellen
function generate_gleichung($length1 3)
{
    
$char1 array_merge(
        
range(19)//Nur Zahlen 1-9 also keine 0
    
);
    
shuffle($char1);
    return 
implode(''array_slice($char10$length1));

Ich nenne diese Funktion einfach generate_gleichung!
Den Parameter $legth1 = 3 sagt das ein Zufallswert maximal 3 Zeichen haben darf!
Dann benutze ich die Funktion
PHP: array_merge - Manual
und setze in der php funktion PHP: range - Manual
die Art der Zeichen fest die Vorkommen darf,da sies eine Gleichung ist beschränken wir uns auf Zahlen von 1 - 9. Natürlich kann man dann auch tief in die Mathematick gehen und x Gleichungen oder so erstellen,aber macht das wirklich Sinn?
Nachdem wird das gemacht haben nutzen wir die php funktion
PHP: shuffle - Manual
Anschlisend generieren bzw. bilden wir uns dann unseren String dazu nutzen wir die Funktionen
PHP: implode - Manual
PHP: array_slice - Manual
So damit haben wir die Funktion fertig! Nun wollen dazu kommen zwei Gleichungsteile zu erstelle mit denen dann natürlich auch ein Ergebnis erstellt werden kann was anschliesend dann den Code ergibt der eingegeben werden muss!

Code um die Gleichungsteile zu erstellen!
PHP-Code:
//Ersten Gleichungsteil erstellen
$teil1 generate_gleichung(rand(2,3));//Erster Gleichungsteil min 2 Zeichen max. 3 Zeichen
//Ersten Gleichungsteil erstellen
$teil2 generate_gleichung(rand(2,3));//Erster Gleichungsteil min 2 Zeichen max. 3 Zeichen 
Wie ihr seht nutzen wir auch da wieder eine Funtion von php nämlich
PHP: rand - Manual
Wir erstellen also zwei Variablen eine $teil1 und eine $teil2! Bei diesen Variablen bringen wir auch unsere Funktion generate_gleichung zum Einsatz! Mit der Funktion rand(2,3) bilden wir dann einen String der je nach Zufall 2 oder auch 3 Zaichen haben kann!

So nun haben wir also auch unsere Gleichungsteile generiert und können nun eine Aufgabe erstellen die die Gleichung bildet!

Gleichungs Code:
PHP-Code:
//Ergebnis in Session speichern
$_SESSION['resultat'] = $teil1 $teil2;//Ergebnis der Gleichungsteile errechnen 
Das Ergebniss der Gleichung speichern wir in einer SESSION Variablen damit arbeiten wir dann auch im anschliesenden Formular! Wie ihr die SESSION Variable nennt und bezeichnet ist völlig Wurscht!

So nun haben wir den Teil der Gleichung geschafft und das Ergebnis steht!

Kommen wir nun zum Teil des Bildes denn wir wollen das ja dann grafisch darstellen. Nun gut dann los fangen wir an!

Einen Strin ertsellen der die Gleichung enthält und im Bild eingesetzt wird!
PHP-Code:
//string fürs Bild
$string $teil1." + ".$teil2." ="
Hier machen wir nichts besonderes die Gleichung wird eigentlich nur in einer Variablen $string gespeichert!

Nun kommen wir dazu das png Bild mit PHP zu erzeugen!
PHP-Code:
//Png Captchabild darstellen
$png imagecreatefrompng("captcha_bg.png"); 
Dazu nutzen wir die php Funktion
PHP: imagecreatefrompng - Manual
und speichern das Ergebnis in der Variablen $png

Als nächstes legen wir fest wie unser Imagestring (unsere Gleichung) ausschauen soll!
PHP-Code:
//Hier den Gleichungsstring formatieren
$Textfarbe imagecolorallocate($png25500); 
Hier nutzen wir die Funktion
PHP: imagecolorallocate - Manual
Wir müssen hier nun wieder die Variable $png zum Einsatz bringen da ja in der Variablen unser erzeugtes png Bild steckt und auf dieses soll ja unser Gleichungsstring gelegt werden!
Normal werden ja Farbwerte Hexadezimal geschrieben nun in PHP geht das nicht da wird der Hexawert in drei Teilen Dezimal dargestellt!
Der Rot Heawert sieht so aus ff0000 und in der Funtion so dargestellt!
255,0,0
An diese Werte kommt ihr einfach über euren System Rechner. Aller 2 Hexacode stellen wird ein Dezimalwert erstellt! Ihr habt in euren Sytem Rechnung die Funktion Hexateile in Dezimalteile umzurechnen!

So und nun legen wir unseren Gleichungsstring auf das png Bild!
PHP-Code:
//Hier legen wir den Img String auf unser Bild
imagettftext($png1531030$Textfarbe"tahoma.ttf"$string); 
Hier nutzen wir die Funktion
PHP: imagettftext - Manual
Auch hier kommt wieder die Variable also unser erzeugtes png Bild zum Einsatz! In dieser Funtion können wir nun die Positionierung unseres Gleichungsstrings festlegen und einstellen!

Ich will die einzelnen Einstellungsparameter mal kurz darstellen!
15 = Schriftgröße des Strings
3 = Schräglage des Strings (ist die Null liegt er Waagerecht)
10 = Textausrichtung links (left)
30 = Textausrichtung in der Höhe (top)

So nun sind wir damit fertig und müssen nun nur noch unser Bild ausgeben! Dazu nutzen wir noch den header Content Type!
PHP-Code:
header("Content-type: image/png");
imagepng($png);
imagedestroy($png); 
Dazu nutzen wir die Funktionen
PHP: imagepng - Manual
PHP: imagedestroy - Manual

So nun das war es und das Bild und der Code für ein Captcha ist fertig. Nun müssen wir den nur noch in einem Formular einbinden und dazu kommen wir jetzt!

Hier der Code der formular.php
PHP-Code:
<?php
error_reporting
(E_ALL);
session_start();
if(isset(
$_POST['send']))

 if(
$_SESSION['resultat'] != $_POST['code'])
 {
  echo 
"Der Code ist nicht korrekt,bitte noch mal!<br>
   <a href=\"formular.php\">Zurück</a>"
;
  exit();
 }
 else
 {
  
header("Location: formular.php");
 }
}
?>
<form action="<?php echo $_SERVER['PHP_SELF'?>" method="post">
<img src="captcha.php" border="0" title="Captcha"><br /><br />
Bitte das Gleichungsergebnis in das Feld eintragen!<br />
<input type="text" name="code" style="width: 50;">
<input type="submit" name="send" value="Checken">
</form>
Als erstes müssen wir die Datei mit session_start(); beginnen weil ja unser Ergebniscode in einer Session Variablen gespeichert ist und um den wieder verwenden zu können müssen eine session starten!
Auf den Formulatteil speziell möchte ich jetzt nicht eingehen sondern nur das was das Captcha angeht!

In diesem Block hier!
PHP-Code:
if($_SESSION['resultat'] != $_POST['code'])
 {
  echo 
"Der Code ist nicht korrekt,bitte noch mal!<br>
   <a href=\"formular.php\">Zurück</a>"
;
  exit();
 }
 else
 {
  
header("Location: formular.php");
 } 
machen wir nun einen Vergleich der aussagt wenn unser Ergbnis aus der Gleichung nicht mit dem eingegeben im Textfeld übereinstimmt dann gib eine Warnung aus oder wenn es passt dann schicke ab und letie weiter!

So zum Abschluss seht ihr noch wie ihr das Captcha einbinden könnt!

PHP-Code:
<form action="<?php echo $_SERVER['PHP_SELF'?>" method="post">
<img src="captcha.php" border="0" title="Captcha"><br /><br />
Bitte das Gleichungsergebnis in das Feld eintragen!<br />
<input type="text" name="code" style="width: 50;">
<input type="submit" name="send" value="Checken">
</form>
Ihr legt also in eurem Formular ein Feld fest in das ihr dann das Ergebnis eingebt und ihr seht auch das in dem Html üblichen Tag für ein Bild nämlich <img src=""> in dem src Teil die captcha.php drin liegt!

Warum eine Datei in einm img einfügen? Nun ja in dieser PHP Datei ist ja ein Bild erstellt also sie stellt auch nur ein Bild dar,darum können wir diese auch da in den src Teil einbinden!


So das wars. Ich hoffel euch ein interessantes Tutorial geboten zu haben und das es euch ein wenig hilft!

mfg der Litter
__________________
Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir.
http://www.lit-web.de

Geändert von litterauspirna (21.05.2008 um 12:19 Uhr).
litterauspirna ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 21.05.2008, 12:04  
Neuer Benutzer
 
Registriert seit: 20.05.2008
Beiträge: 12
bieler befindet sich auf einem aufstrebenden Ast
Standard

Ist sicherlich hilfreich für Anfänger, welche diese Funktionen mal in einer Anwendung sehen wollen, wirklich einbauen würde ich dieses Captcha nicht.
Gründe:
- Nicht jeder ist fähig, zweistellige oder sogar dreistellige Zahlen im Kopf zu addieren. Es gibt einige die die Seite vorher verlassen werden.
- Aus dem Standpunkt, dass Captchas sowieso nicht unbedingt ideal sind (Hinsichtlich der Problem mit z.B. Screenreadern) verschärft dieses Captcha noch zusätzlich diese Problematik.

Was du hingegen unbedingt noch korrigieren solltest:
- Die Funktion generate_gleichung ist Overflow. Ein einfaches rand(10,999) hätte gereicht. Ich vermute, du willst keine 0 einsetzen, weil du dann nicht kontrollieren kannst, ob die 0 bereits an erster stelle kommt, und dir somit eine Zahl kleiner der Anzahl stellen liefert, die du möchtest. Dieses Problem hast du mit rand(10,999) nicht .
- Den Content-type-Header solltest du bei der Ausgabe des Bildes mitliefern
- Bleib einheitlich mit der Benennung von Variablen und Funktionen. Entweder englisch, oder deutsch, aber sowas wie: generate_gleichung ist nicht schön .
- Der Header "Location" erwartet eine absolute URI, inkl. Schema. Deine angabe ist daher nicht gültig und es ist nicht definiert, was damit passiert (Auch wenn einige Clients dies dennoch interpretieren).
-
PHP-Code:
<?php echo $_SERVER['PHP_SELF'?>
sollte nicht als action-Attrubut verwendet werden, da es empfindlich für XSS-Attacken ist.
Besser wäre:
PHP-Code:
<?php echo htmlentities($_SERVER['SCRIPT_NAME']); ?>
Oder ein leeres Action-Attribut.
bieler ist offline   Mit Zitat antworten
Alt 21.05.2008, 12:15  
Erfahrener Benutzer
 
Benutzerbild von litterauspirna
 
Registriert seit: 24.04.2008
Beiträge: 3.070
PHP-Kenntnisse:
Anfänger
litterauspirna befindet sich auf einem aufstrebenden Ast
litterauspirna eine Nachricht über ICQ schicken
Standard

Hallo!

Mit der header("Location:") hast du natürlich Recht Das Problem ist das ich das offline teste,wen ich was online Stelle mache ich das natürlich mit einer absoluten URL,dies ist mir bewust,hätte ich bei einem Tut natürlich beherzigen sollen!

Nun ja über den Einsatz von Captchas lässt sich streiten und gibt es geteilte Meinungen darüber aber falsch ein solches einzusetzen ist es nicht! Und eine Gleichung die sich nur auf Addition beruht ist ja nicht schwer auszurechnen und das bei max 3 Stellen nicht wirklich ein Problem!

Nun gut das mit der Funktion ist ja nun nicht falsch und wenn da deutsch und englisch zusammen gewürfelt sind such nicht wirklich schlimm!

Das mit content header habe ich in der Tat vergessen und korrigiert!

Aber danke für die Hinweis1
__________________
Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir.
http://www.lit-web.de
litterauspirna ist offline   Mit Zitat antworten
Alt 21.05.2008, 12:37  
Neuer Benutzer
 
Registriert seit: 20.05.2008
Beiträge: 12
bieler befindet sich auf einem aufstrebenden Ast
Standard

Für kleinere sachen magst du recht haben, es macht aber durchaus sinn, sich von beginn weg einen sauberen Stil anzugewöhnen. Und dies erst recht bei einem Tutorial, man soll ja ein gutes Vorbild geben.
Zitat:
gibt es geteilte Meinungen
Zitat:
aber falsch ein solches einzusetzen ist es nicht!
Ahja, mhm. Es gibt zwar verschiedene Meinungen, deine ist aber die richtige?
Bitte lesen:
WebDesign - Tips und Tricks: Captcha-Alternativen

ok, rechne mir bitte 747+516 mal eben im Kopf. Da muss selbst ich meine Hirnzellen aktivieren.....ich kenne genügend Leute, die bei einer solchen Aufgabe nach spätestens 20 Sekunden aufgeben, entweder den Rechner zur Hand nehmen, oder die Internetseite einfach schliessen.
bieler ist offline   Mit Zitat antworten
Alt 21.05.2008, 12:46  
Erfahrener Benutzer
 
Benutzerbild von litterauspirna
 
Registriert seit: 24.04.2008
Beiträge: 3.070
PHP-Kenntnisse:
Anfänger
litterauspirna befindet sich auf einem aufstrebenden Ast
litterauspirna eine Nachricht über ICQ schicken
Standard

Die Gleichung lässt sich ja Problemlos auf Zweistellige Komponenten eistellen! Recht haste dreis stellige Sachen sind zu viel. Aber wieso denn unsauber programmiert? Wo denn? Und das meine die richtige Meinung ist habe ich doch gar nicht gesagt,ich sagte nur es gibt geteilte Meinungen,nicht mehr und nicht weniger!
__________________
Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir.
http://www.lit-web.de
litterauspirna ist offline   Mit Zitat antworten
Alt 21.05.2008, 12:51  
Neuer Benutzer
 
Registriert seit: 20.05.2008
Beiträge: 12
bieler befindet sich auf einem aufstrebenden Ast
Standard

Auch zweistellig ist nicht so einfach:
76+67, na? .
Und einstellige lassen Bots durch Probieren wieder durch (18 Möglichkeiten).
Hast du den Link gelesen? Da steht genügend drin, wie man sowas besser machen kann .
Unsauber Programmiert ist übertrieben, war nur auf deine Art, variablen und Funktionen zu benennen bezogen. So schlimm ists nicht, bin darin halt öfters ein Perfektionist.

Den Textabschnitt solltest du villeicht auch noch überarbeiten:
Zitat:
Spambots versuchen alle Felder in einem Fprmular auszufüllen und das auch ziemlich schnell (Ich glaube in Millisekunden,bin mir aber nicht sicher)!
In Form einer Gleichung haben es diese Bots aber schwer denn man braucht Zeit um diese auszurechnen und dann auch ein zu tippen,zuviel Zeit für einen Bot!
Mit der Zeit, hat dies nichts zu tun. Es geht eher darum, dass es schwierig (aber nicht unmöglich, siehe Links im oben genannten Link) ist ein Programm zu entwickeln, welches text aus einem Bild lesen kann. Hat es den Text gelesen, ist es eine Sache von Mikro- oder sogar Nannosekunden, eine entsprechende Rechnung auszurechnen. Von daher: Ob Text oder Rechnung ist eigendlich egal.

Geändert von bieler (21.05.2008 um 12:55 Uhr).
bieler ist offline   Mit Zitat antworten
Alt 21.05.2008, 14:24  
Supermoderator HD
 
Benutzerbild von Manko10
 
Registriert seit: 16.03.2008
Beiträge: 8.425
PHP-Kenntnisse:
Fortgeschritten
Manko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende Zukunft
Standard

Hallo,
dein Captcha hat einen Vorteil gegenüber anderen Captchas: es ist noch nicht so weit verbreitet und wird deshalb von vielen Bots wohl missverstanden. Diese würden einfach die Zeichenfolge auf dem Bild in das Feld einfügen und das ganze absenden.
Sobald deine Seite aber populärer wird oder andere diese Methode übernehmen, Bietet das Captcha keine Schutz mehr, zumal du eine gut leserliche Schrift benutzt hast. Eine Diskussion über Captchas mit gut lesbaren Schriften und wie leicht diese sich mit handelsüblichen OCR-Lösungen knacken lassen, habe ich bereits bei der Konkurrenz geführt: Gute Captchas - phpfriend.de

Ich halte immer noch mehr zu den barrierefreien/-armen Varianten der Captchas. Selbst, wenn vielleicht ein Bot dran vorbeikommt, nützt ihm ein Spam-Post, in dem kein Spam stehen kann, weil alle erdenklichen Spam-Wörter gesperrt sind, herzlich wenig.
Ein Verhältnis von Anzahl Links zu Anzahl Wörter, das ich erfolgreich einsetze, ist 1:20 (also 0.05).
Manko10 ist offline   Mit Zitat antworten
Alt 21.05.2008, 14:41  
Moderator
 
Benutzerbild von cycap
 
Registriert seit: 13.02.2008
Beiträge: 6.816
PHP-Kenntnisse:
Fortgeschritten
cycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nett
Standard

Ach was bin ich froh das ich fast nur fürs Intranet programmiere, da hab ich solche Probleme erst gar nicht
cycap ist offline   Mit Zitat antworten
Alt 24.05.2008, 00:00  
Erfahrener Benutzer
 
Registriert seit: 02.03.2008
Beiträge: 351
robydog befindet sich auf einem aufstrebenden Ast
Standard

was haltet ihr denn von reCAPTCHA denkt ihr das wird auch irgendwann so wie captchas problemlos zu knacken sein?
robydog ist offline   Mit Zitat antworten
Alt 24.05.2008, 01:16  
Moderator
 
Benutzerbild von agrajag
 
Registriert seit: 02.10.2006
Beiträge: 3.820
PHP-Kenntnisse:
Fortgeschritten
agrajag wird schon bald berühmt werdenagrajag wird schon bald berühmt werden
Standard

Zitat:
Zitat von robydog Beitrag anzeigen
was haltet ihr denn von reCAPTCHA denkt ihr das wird auch irgendwann so wie captchas problemlos zu knacken sein?
Jedes Captcha wird früher oder später knackbar sein. Wenn sich etwas (noch) nicht automatisiert komplett vom Computer lösen lässt dann nutzt man eben Tricks wie das Captcha einfach zu "kopieren" und bspw. vor eine Porno-Seite zu setzen um es von Menschen lösen zu lassen


Über kurz oder lang wird dei Lösung wohl darauf hinauslaufen, dass die meisten Dinge einen Login erfordern werden (z.B. über OpenID). Und die Identität muss dann eben irgendwie bestätigt sein (z.B. über PostIdent oder führende SocialNetworks wie Facebook bieten APIs dazu an die Echtheit einer Person zu bestätigen...)

Aber das ist alles Zukunftsmusik und bis dahin: verwende was bei dir funktioniert.
__________________
Today you...Tomorrow me.
agrajag ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Frage zu spam bots und captcha litterauspirna PHP Tipps 2008 6 20.05.2008 23:56
Probleme beim Einbau von Captcha Dartgott Trash 2 24.04.2008 11:15
Captcha in Website einbauen Dartgott PHP Tipps 2008 9 23.04.2008 15:53
Captcha in bestehendes GB einbauen ZeroQL PHP Tipps 2008 6 08.04.2008 15:32
Captcha Frage und vorstelung meiner seite oerny18 PHP Tipps 2008 10 31.03.2008 20:05
Captcha - Session Problem Toby PHP Tipps 2008 9 11.03.2008 19:38
Captcha? Ja, Nein oder? stefanjann Off-Topic Diskussionen 12 20.02.2008 12:59
Captcha Adminator Off-Topic Diskussionen 6 09.09.2007 23:06
mit ajax captcha neu laden und generieren jjackisc PHP-Fortgeschrittene 10 10.08.2007 15:41
Captcha unsicher? PHP Tipps 2007 7 20.03.2007 16:10
[Erledigt] Probleme mit Einbindung Captcha PHP Tipps 2006 0 18.08.2006 19:42
captcha PHP Tipps 2006 8 16.06.2006 13:48
Gästebuch (inkl. Captcha) Script oder Programmierhilfe Zuzy Trash 4 04.05.2006 07:47
Gästebuch mit captcha emerge PHP Tipps 2006 8 01.04.2006 10:06
Captcha Problem / edit: geht PHP Tipps 2005-2 9 28.10.2005 23:14

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
recaptcha knacken, captcha selber machen, php captcha rechnen, php captcha erstellen, captcha rechnung, einfaches captcha php, einfaches php captcha, captcha php, captcha einfach, captcha selbst machen, captcha addieren, recaptcha einbinden, captcha rechnen, php sicheres captcha, sicheres captcha php, php captcha rechnung, captcha selbst erstellen, php einfaches captcha, captcha selber erstellen, captcha

Alle Zeitangaben in WEZ +1. Es ist jetzt 06:45 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum