joanne
Terugkerende gebruiker
- Lid geworden
- 31 mrt 2001
- Berichten
- 1.300
Heb hier een aangepast formulier met een captcha scriptje:
www.jeetee.nl/contact.php
Dit werkt dus (blij dat ik ben
), maar dan.. 
Was het voor mezelf aan het testen, maar ik kan bij god niet lezen wat ik nu moet invullen bij de code. Daar blijf ik dus steken.
a. moet ik zelf ergens een plaatje invullen? of moet ik ergens nog iets aanpassen???
b. zo ja, waar?
c. hier?:
dus een plaatje dat ik gewoon van mijn harde schijf haal, moet deze persé een png type zijn, dus geen .jpg?
d. hier volledige script:
Alvast dank voor de hulp.
www.jeetee.nl/contact.php
Dit werkt dus (blij dat ik ben


Was het voor mezelf aan het testen, maar ik kan bij god niet lezen wat ik nu moet invullen bij de code. Daar blijf ik dus steken.
a. moet ik zelf ergens een plaatje invullen? of moet ik ergens nog iets aanpassen???
b. zo ja, waar?
c. hier?:
PHP:
header("content-type: [COLOR="red"]image/png[/COLOR]");
d. hier volledige script:
PHP:
// Captcha keygenerator
function keygen($aantal)
{
$tekens = array_merge(range('A', 'F'), array('H', 'J', 'K', 'M', 'N'), range('P', 'Z'));
$randomstring = "";
for($i=1; $i <= $aantal; $i++)
{
shuffle($tekens);
$randomstring .= $tekens[0];
}
return $randomstring;
}
$random_code = keygen(4);
$_SESSION['captcha_code'] = $random_code;
$breedte = 150;
$hoogte = 70;
header("content-type: image/png");
$afbeelding = imagecreate($breedte, $hoogte);
$achtergrond = imagecolorallocate($afbeelding, 255, 255, 255);
$font = "fonts/arial.ttf";
$kleur = imagecolorallocate($afbeelding, 186, 197, 214);
imagerectangle($afbeelding, 0, 0, $breedte-1, $hoogte-1, $kleur);
$aantal_punten = rand(250, 500);
for ($i = 0; $i < $aantal_punten; $i++)
{
imagesetpixel($afbeelding, rand(1, $breedte-1), rand(1, $hoogte-1), $kleur);
}
$aantal_lijnen = rand(5, 8);
$aantal_cirkels = rand(5, 8);
$aantal_lijnen2 = rand(2, 6);
$spread = 100;
for($i = 0; $i < $aantal_lijnen; $i++)
{
$y_begin = rand(-$spread, $hoogte + $spread);
$y_eind = rand(-$spread, $hoogte + $spread);
$kleur = imagecolorallocate($afbeelding, rand(170, 255), rand(170, 255), rand(170, 255));
imageline($afbeelding, 0, $y_begin, $breedte, $y_eind, $kleur);
}
for($i = 0; $i < $aantal_cirkels; $i++)
{
$y_center = rand(1, $breedte-1);
$x_center = rand(1, $hoogte-1);
$kleur = imagecolorallocate($afbeelding, rand(170, 255), rand(170, 255), rand(170, 255));
imageellipse($afbeelding, $y_center, $y_center, rand(50, 100), rand(50, 100), $kleur);
}
$tekst = str_split($random_code);
for ($i = 0; $i < count($tekst); $i++)
{
$xas = rand(5, 15);
$yas = rand(18, 25);
$graden = rand(-25, 25);
$grootte = rand(12,14);
$kleur = imagecolorallocate($afbeelding, rand(0, 100), rand(0, 100), rand(0, 100));
imagettftext($afbeelding, $grootte, $graden, $i * 20 + $xas, $yas, $kleur, $font, $tekst[$i]);
}
for($i = 0; $i < $aantal_lijnen2; $i++)
{
$y_begin = rand(-$spread, $hoogte + $spread);
$y_eind = rand(-$spread, $hoogte + $spread);
$kleur = imagecolorallocate($afbeelding, rand(170, 255), rand(170, 255), rand(170, 255));
imageline($afbeelding, 0, $y_begin, $breedte, $y_eind, $kleur);
}
imagepng($afbeelding);
imagedestroy($afbeelding);
?>