Mathe Captcha



 



  |E4|
verfasst am 28.03.2012 14:41:14 Uhr
- Beitrag 4-mal editiert. Zuletzt am 28.03.2012 15:02 Uhr von |E4|
   #1
Strandstürmer

Ich hab mir hier ein kleines Mathe-Captcha erstellt.. leider klappt es nicht so wie erwartet.

Zum ablauf. Das Script wird per Image-Tag in das Formular eingebunden.

So sieht dann das generierte Bild aus aus:

nun ist ja in meiner math_capt.php folgender Code.

Er müsste also..

1. Alte Session löschen
2. 2 Zahlen per zufall generieren (funktioniert)
3. Berechnug erstellen (funktioniert)
4. Ergebnis in $_SESSION['secure'] schreiben (funktioniert nicht)

Wenn ich den Code direkt aufrufe, erstellt er mir die $_SESSION['secure'], nur wenn ich das über den Image-Tag aufrufe - macht er das nicht.
Jemand eine idee ?


PHP-Code:
<?php
unset($_SESSION['secure']);

$zahl1 rand(10,20); //Erste Zahl
$zahl2 rand(1,10);  //Zweite Zahl
$operator rand(1,2); // + oder -

if($operator == "1")
    {
        
$operatorzeichen " + ";
        
$_SESSION['secure'] = $zahl1 $zahl2;
    }
else
    {
        
$operatorzeichen " - ";
        
$_SESSION['secure'] = $zahl1 $zahl2;
    }
            
    
$rechnung $zahl1.$operatorzeichen.$zahl2." =";
    
$img imagecreatetruecolor(80,14);
    
$schriftfarbe imagecolorallocate($img,0,0,0);
    
$hintergrund imagecolorallocate($img,255,255,255);
    
imagefill($img,0,0,$hintergrund);
    
imagestring($img2020$rechnung$schriftfarbe);
    
header("Content-type: image/png");
    
imagepng($img);
    
imagedestroy($img);
?>
  Whîtêkñîght
verfasst am 29.03.2012 09:36:36 Uhr
- Beitrag 1-mal editiert. Zuletzt am 29.03.2012 09:44 Uhr von Whîtêkñîght
   #2
Krisen Kommando Kräfte

sieht auf den 1. Blick so aus als hättest du das session_start() zu Beginn vergessen. Versuch's mal.


Ich halte übrigends nicht viel von solch einem Captcha:

1.) Es kann in der Form extrem leicht automatisch geknackt werden. Du solltest die Buchstaben unterschiedlich positionieren und schwerer lesbar machen. Ansonsten ist es eine Leichtigkeit dieses zu knacken.
2.) Die Variation ist zu schwach. Wenn ich einfach 100x die Zahl "7" verwende ist die Wahrscheinlichkeit sehr groß, dass mehrmals das Ergebnis "true" ist. Es gibt einfach sehr viele Rechenkombinationen wo am Ende dann eine bestimmte Zahl raus kommt.
  |E4|
verfasst am 29.03.2012 15:24:32 Uhr    #3
Strandstürmer

session_start() hab ich in meiner Seite vor dem Header am anfang schon drinne... Ich teste es aber noch aus.
  Whîtêkñîght
verfasst am 29.03.2012 18:48:47 Uhr    #4

Ja aber wenn du es nicht richtig includierst sondern mit einem Image-Tag einbindest wird es nicht geladen. Dann musst du es dort nochmal starten im Skript.

Nickname:
   
 
Beitrag:
Secure ID: Bitte gib den folgenden Sicherheits-Code ein
  Neues Captcha anfordern

Hinweis: Durch Absenden eines Beitrags stimmst Du unseren Nutzungsbestimmungen zu!

    

[Zurück]


Seite generiert in 0.02 Sekunden   

 
 

Anmelden


 
 

Clanauswahl


 
 

Statistik


 
 

Sonstiges