Autor | Zpráva | ||
---|---|---|---|
antispam Profil * |
#1 · Zasláno: 20. 6. 2010, 08:26:46
Dobrý den,
mám od kámoše tento script: <?php ob_start(); $font = 'fonts/arial.ttf'; $charset = '0123456789'; $code_length = 4; $height = 20; $width = 60; $code = ''; for($i=0; $i < $code_length; $i++) { $code = $code . substr($charset, mt_rand(0, strlen($charset) - 1), 1); } $font_size = $height * 0.7; $image = @imagecreate($width, $height); $background_color = @imagecolorallocate($image, 255, 255, 255); $noise_color = @imagecolorallocate($image, 114, 114, 114); for($i=0; $i < ($width * $height) / 4; $i++) { @imageellipse($image, mt_rand(0,$width), mt_rand(0,$height), 1, 1, $noise_color); } $text_color = @imagecolorallocate($image, 20, 40, 100); @imagettftext($image, $font_size, 0, 7,17, $text_color, $font , $code) or die('Cannot render TTF text.'); header('Content-Type: image/png'); @imagepng($image) or die('imagepng error!'); @imagedestroy($image); $_SESSION['AntiSpamImage'] = $code; exit(); ?> Funguje dobře, obrázek vytvoří ale nevím jak mám skontrolovat zda data zapsané di formuláře odpovídají obrázku... <input class="textbox" type="text" name="ochrana" value="" size="28" /> Děkuji předem |
||
radvis Profil * |
#2 · Zasláno: 20. 6. 2010, 08:52:42
$_SESSION['antispamText'] = (předpokladam, že to bude $code) a pak das ten input a pomocí podmínky
if($_GET['ochrana'] == $_SESSION['antispamText]){ //kod, ok}else{//kode blbě opsany} |
||
AM_ Profil |
#3 · Zasláno: 20. 6. 2010, 09:08:43
Už tam na to session proměnnou má.
session_start(); if ($_POST['ochrana'] == $_SESSION['AntiSpamImage']) { //spravne } |
||
radvis Profil * |
#4 · Zasláno: 20. 6. 2010, 10:26:30
aha, omlouvam se, nevsim jsem si.
|
||
Časová prodleva: 14 let
|
0