Suche: Sichere Regiscript v15 mit Captcha

01/04/2011 21:02 Zaiden90#1
Hi Leutz,
wie es in dem Titel steh, suche ich ein v15 Regi-Script logischerweise Sonderzeichen verboten mit Captcha.

Vllt kann hier ja wer helfen ;)

MfG:
Zaiden
01/05/2011 09:30 KohLix3#2
Regi Script findest du bei den Homepage Addons in den Stickys.

Captcha:
image.php:
PHP Code:
<?php
session_start
();

$img imagecreatetruecolor(80,30);

$white imagecolorallocate($img255255255);
$black imagecolorallocate($img000);
$grey imagecolorallocate($img,150,150,150);
$red imagecolorallocate($img25500);
$pink imagecolorallocate($img2000150);

function 
randomString($length){
    
$chars "abcdefghijkmnopqrstuvwxyz023456789";
    
srand((double)microtime()*1000000);
    
$str "";
    
$i 0;
    
        while(
$i <= $length){
            
$num rand() % 33;
            
$tmp substr($chars$num1);
            
$str $str $tmp;
            
$i++;
        }
    return 
$str;
}

for(
$i=1;$i<=rand(1,5);$i++){
    
$color = (rand(1,2) == 1) ? $pink $red;
    
imageline($img,rand(5,70),rand(5,20), rand(5,70)+5,rand(5,20)+5$color);
}

imagefill($img00$white);

$string randomString(rand(7,10));
$_SESSION['string'] = $string;

imagettftext($img1101020$black"calibri.ttf"$string);

header("Content-type: image/png");
imagepng($img);
imagedestroy($img);
?>
in der regi file:
PHP Code:
<?php
ob_start
();
session_start();

if(!
$_POST['submit']){
    echo 
"<form method=\"post\" action=\"captcha.php\">\n";
    echo 
"<table border=\"0\" cellspacing=\"3\" cellpadding=\"3\">\n";
    echo 
"<tr><td>Type The Letters You See Below Into the Box</td></tr>\n";
    echo 
"<tr><td align=\"center\"><img src=\"image.php\"></td></tr>\n";
    echo 
"<tr><td align=\"right\"><input type=\"text\" name=\"image\"></td></tr>\n";
    echo 
"<tr><td align=\"right\"><input type=\"submit\" name=\"submit\" value=\"Check CAPTCHA\"></td></tr>\n";
    echo 
"</table></form>\n";
}else {
    
$image $_POST['image'];
    
    if(
$image == $_SESSION['string']){
        echo 
"<b>Great success!</b>\n";
    }else {
        echo 
"<em>Failure!</em>\n";
    }
}

ob_end_flush();
?>
Wenn du hilfe dabei brauchst, ich schick dir nacher am PC die ganze Datei.