//////////////////Image.php//////////////////////
<?php

header("Content-Type: image/jpeg");

# CONNECT MET DB
$host = "localhost";
$user = "je naam";
$pass = "Wachtwoord";
$name = "DB";

mysql_connect($host, $user, $pass);
mysql_select_db($name);

function generate($length)
{
	$c = "abcdefghijklmnopqrstuvqxyz0123456789";
	$code = "";
	for ($i = 0; $i < $length; $i++)
	{
		$char = $c{rand(0, strlen($c) - 1)};
		if (rand(0,1) == 1) $char = strtoupper($char);
		$code .= $char;
	}
	
	// verwijder oudere codes van deze bezoeker.
	mysql_query("DELETE FROM `gastenboekcodes` WHERE `ipadres` = '{$_SERVER['REMOTE_ADDR']}';");
	
	// code controleren.
	mysql_query("INSERT INTO `gastenboekcodes` SET `code` = '$code', `ipadres` = '{$_SERVER['REMOTE_ADDR']}';");
	return $code;
}

function tekencode($code)
{
	$width = strlen($code) * 20;
	$image = imagecreatetruecolor($width, 26);
	
	// Maak een kleuren pallet. RGB
	$achtergrond = imagecolorallocate($image, 151, 156, 250);
	$lijn = imagecolorallocate($image, 210, 210, 210);
	$tekst = imagecolorallocate($image, 0, 0, 0);
	
	// Stel de achtergrond kleur in.
	imagefill($image, 0, 0, $achtergrond);
	
	$y = 0; $x = 0;
	$length = 0;
	for ($i = 0; $i < 10; $i ++)
	{
		$y += rand(1, 4);
		$x = rand(0, 0);
		$length = rand($width - 10, $width);
		imageline($image, 0, $y, strlen($code) * 20, $y + rand(-5, 5), $lijn);
	}
	
	// Een loopje door elke karakter in de string.
	$x = 5; $y = 0;
	for ($i = 0; $i < strlen($code); $i++)
	{
		$char = substr($code, $i, 1);
		$y = rand(16, 23);

		// Voeg het karakter toe aan het plaatje.
		$tx = rand($x - 3, $x + 3);
		imagettftext($image, 10, rand(-12, 12), $tx, $y, $tekst, "fonts/comic.ttf", $char);
		$x += 20;
	}
	imagerectangle($image, 0, 0, $width - 1, 25, imagecolorallocate($image, 0, 0, 0));
	imagejpeg($image, null, 100);
}

// de afbeelding weergeven.
$code = generate(6);
tekencode($code);
?>
//////////////////einde image.php/////////////

/////////////////Check code//////////////

Bouw onderstaande code in, in het gedeelte van het schrijven van een bericht 
<?php
// controleren of iemand de juiste code heeft ingevoerd
		if(check_code($_POST[code]) == false)
		{
			//echo "U heeft een onjuiste code ingevoerd. U keert terug...";
			//echo "<meta http-equiv=\"refresh\" content=\"4; URL=javascript:history.back()\">";

			// Error message weergeven
			echo show_error_message("U heeft een onjuiste code ingevoerd... Probeer het nog eens!");
			// Bericht toevoegen form weergeven
			echo show_add_form($aantalkpb,$smilies,$ubbcode);
			exit();
		}
?>
/////////////////einde check code////////////

////////////////Het formulier///////////

Bouw deze code in het formulier van je gastenboek
<?php
<img src='image.php'><br><br><input type='text' size='6' name='code'>&nbsp;
                    Type de code na ter beveiliging van het gastenboek

?>
//////////////einde het formulier////////////


///////////////Sql////////////////
<?php
-- 
-- Tabel structuur voor tabel `gastenboekcodes`
-- 

CREATE TABLE `gastenboekcodes` (
  `codeid` int(7) NOT NULL auto_increment,
  `code` varchar(10) NOT NULL default '',
  `ipadres` varchar(25) NOT NULL default '',
  PRIMARY KEY  (`codeid`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=94 ;

?>
/////////////einde Sql///////////
