is die er ook al dan? 


[COLOR= #0000BB]<?php[/COLOR]
[COLOR= #FF8000]/**
* Luckys Framework
* A highly extendable MVC PHP framework
*
* Created by Lucas van Dijk (http://www.return1.net)
* Copyright 2007 by Lucas van Dijk
*
* $Id$
*
* ---------------------------------------------------------------------
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
/**
* Represents an image.
*
* @package Images
* @author Lucas van Dijk
*/[/COLOR]
[URL="http://www.php.net/class"]class[/URL] Image
[COLOR= #007700]{[/COLOR]
[COLOR= #FF8000]/**
* Holds the image GD resource
*
* @var resource
*/[/COLOR]
[URL="http://www.php.net/protected"]protected[/URL] [COLOR= #0000BB]$image_resource[/COLOR][COLOR= #007700];[/COLOR]
[COLOR= #FF8000]/**
* Holds the width of the image
*
* @var int
*/[/COLOR]
[URL="http://www.php.net/protected"]protected[/URL] [COLOR= #0000BB]$width[/COLOR][COLOR= #007700];[/COLOR]
[COLOR= #FF8000]/**
* Holds the height of the image
*
* @var int
*/[/COLOR]
[URL="http://www.php.net/protected"]protected[/URL] [COLOR= #0000BB]$height[/COLOR][COLOR= #007700];[/COLOR]
[COLOR= #FF8000]/**
* Constructor, creates the image resource
* @param mixed $param1 The filename to open, or the width of the image
* @param int $param2 The height of the image, when creating a new image (not from a file)
*/[/COLOR]
[URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] __construct[COLOR= #007700]([/COLOR][COLOR= #0000BB]$param1[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$param2[/COLOR] [COLOR= #007700]=[/COLOR] null[COLOR= #007700])
{[/COLOR]
[URL="http://www.php.net/if"]if[/URL][COLOR= #007700]([/COLOR][URL="http://www.php.net/empty"]empty[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$param2[/COLOR][COLOR= #007700]))
{[/COLOR]
[COLOR= #FF8000]// Just one parameter given,
// Param1 should be a filename[/COLOR]
[COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] image_resource [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] create_image[COLOR= #007700]([/COLOR][COLOR= #0000BB]$param1[/COLOR][COLOR= #007700]);
}[/COLOR]
[URL="http://www.php.net/else"]else[/URL]
[COLOR= #007700]{[/COLOR]
[COLOR= #FF8000]// Param 2 is given
// So we create a new image with the width and height[/COLOR]
[COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] image_resource [COLOR= #007700]=[/COLOR] imagecreatetruecolor[COLOR= #007700]([/COLOR][URL="http://www.php.net/intval"]intval[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$param1[/COLOR][COLOR= #007700]),[/COLOR] [URL="http://www.php.net/intval"]intval[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$param2[/COLOR][COLOR= #007700]));
}[/COLOR]
[URL="http://www.php.net/if"]if[/URL][COLOR= #007700](![/COLOR][COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] image_resource[COLOR= #007700])
{[/COLOR]
throw [COLOR= #007700]new[/COLOR] Exception[COLOR= #007700]([/COLOR][COLOR= #DD0000]Could not create image[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]100[/COLOR][COLOR= #007700]);
}[/COLOR]
[COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] update_size[COLOR= #007700]();
}[/COLOR]
[COLOR= #FF8000]/**
* Creates an GD image resource based on image type
* @param string $file The file to open
* @return resource
*/[/COLOR]
[URL="http://www.php.net/protected"]protected[/URL] [COLOR= #007700]function[/COLOR] create_image[COLOR= #007700]([/COLOR][COLOR= #0000BB]$file[/COLOR][COLOR= #007700])
{[/COLOR]
[URL="http://www.php.net/list"]list[/URL][COLOR= #007700](, ,[/COLOR] [COLOR= #0000BB]$image_type[/COLOR][COLOR= #007700]) =[/COLOR] [URL="http://www.php.net/getimagesize"]getimagesize[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$file[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #0000BB]$img[/COLOR] [COLOR= #007700]=[/COLOR] false[COLOR= #007700];[/COLOR]
[URL="http://www.php.net/switch"]switch[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$image_type[/COLOR][COLOR= #007700])
{
case[/COLOR] [COLOR= #0000BB]3[/COLOR][COLOR= #007700]:[/COLOR]
[COLOR= #0000BB]$img[/COLOR] [COLOR= #007700]=[/COLOR] imagecreatefrompng[COLOR= #007700]([/COLOR][COLOR= #0000BB]$file[/COLOR][COLOR= #007700]);[/COLOR]
[URL="http://www.php.net/break"]break[/URL][COLOR= #007700];
case[/COLOR] [COLOR= #0000BB]2[/COLOR][COLOR= #007700]:[/COLOR]
[COLOR= #0000BB]$img[/COLOR] [COLOR= #007700]=[/COLOR] imagecreatefromjpeg[COLOR= #007700]([/COLOR][COLOR= #0000BB]$file[/COLOR][COLOR= #007700]);[/COLOR]
[URL="http://www.php.net/break"]break[/URL][COLOR= #007700];
case[/COLOR] [COLOR= #0000BB]1[/COLOR][COLOR= #007700]:[/COLOR]
[COLOR= #0000BB]$img[/COLOR] [COLOR= #007700]=[/COLOR] imagecreatefromgif[COLOR= #007700]([/COLOR][COLOR= #0000BB]$file[/COLOR][COLOR= #007700]);[/COLOR]
[URL="http://www.php.net/break"]break[/URL][COLOR= #007700];
case[/COLOR] [COLOR= #0000BB]6[/COLOR][COLOR= #007700]:[/COLOR]
[COLOR= #0000BB]$img[/COLOR] [COLOR= #007700]=[/COLOR] imagecreatefromwbmp[COLOR= #007700]([/COLOR][COLOR= #0000BB]$file[/COLOR][COLOR= #007700]);[/COLOR]
[URL="http://www.php.net/break"]break[/URL][COLOR= #007700];
default:[/COLOR]
throw [COLOR= #007700]new[/COLOR] Exception[COLOR= #007700]([/COLOR][COLOR= #DD0000]File is not a valid Image[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]101[/COLOR][COLOR= #007700]);
}[/COLOR]
[URL="http://www.php.net/return"]return[/URL] [COLOR= #0000BB]$img[/COLOR][COLOR= #007700];
}[/COLOR]
[COLOR= #FF8000]/**
* Allocates a color, based on a hex color
* @param string $color The hex color to allocate
* @param int The background color
*/[/COLOR]
[URL="http://www.php.net/protected"]protected[/URL] [COLOR= #007700]function[/COLOR] allocate_color[COLOR= #007700]([/COLOR][COLOR= #0000BB]$color[/COLOR][COLOR= #007700])
{[/COLOR]
[URL="http://www.php.net/if"]if[/URL][COLOR= #007700]([/COLOR][URL="http://www.php.net/substr"]substr[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$color[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]1[/COLOR][COLOR= #007700]) ==[/COLOR] [COLOR= #DD0000]"#"[/COLOR][COLOR= #007700])
{[/COLOR]
[COLOR= #0000BB]$color[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/substr"]substr[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$color[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]1[/COLOR][COLOR= #007700]);
}[/COLOR]
[COLOR= #0000BB]$parts[/COLOR] [COLOR= #007700]=[/COLOR] str_split[COLOR= #007700]([/COLOR][COLOR= #0000BB]$color[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]2[/COLOR][COLOR= #007700]);[/COLOR]
[URL="http://www.php.net/return"]return[/URL] [URL="http://www.php.net/eval"]eval[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000]return imagecolorallocate($this -> image_resource, 0x[/COLOR][COLOR= #007700].[/COLOR][COLOR= #0000BB]$parts[/COLOR][COLOR= #007700][[/COLOR][COLOR= #0000BB]0[/COLOR][COLOR= #007700]].[/COLOR][COLOR= #DD0000], 0x[/COLOR][COLOR= #007700].[/COLOR][COLOR= #0000BB]$parts[/COLOR][COLOR= #007700][[/COLOR][COLOR= #0000BB]1[/COLOR][COLOR= #007700]].[/COLOR][COLOR= #DD0000], 0x[/COLOR][COLOR= #007700].[/COLOR][COLOR= #0000BB]$parts[/COLOR][COLOR= #007700][[/COLOR][COLOR= #0000BB]2[/COLOR][COLOR= #007700]].[/COLOR][COLOR= #DD0000]);[/COLOR][COLOR= #007700]);
}[/COLOR]
[COLOR= #FF8000]/**
* Generates a random hex color
* @param bool $return_array return an array with three elememts containing each a part of the color, default false
* @return string|array The random hex color
*/[/COLOR]
[URL="http://www.php.net/protected"]protected[/URL] [COLOR= #007700]function[/COLOR] random_hex_color[COLOR= #007700]([/COLOR][COLOR= #0000BB]$return_array[/COLOR] [COLOR= #007700]=[/COLOR] false[COLOR= #007700])
{[/COLOR]
[COLOR= #0000BB]$chars[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/array_merge"]array_merge[/URL][COLOR= #007700]([/COLOR][URL="http://www.php.net/range"]range[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000]A[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #DD0000]F[/COLOR][COLOR= #007700]),[/COLOR] [URL="http://www.php.net/range"]range[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000]0[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #DD0000]9 [/COLOR][COLOR= #007700]));[/COLOR]
[COLOR= #0000BB]$max_chars[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/count"]count[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$chars[/COLOR][COLOR= #007700]) -[/COLOR] [COLOR= #0000BB]1[/COLOR][COLOR= #007700];[/COLOR]
[URL="http://www.php.net/srand"]srand[/URL][COLOR= #007700]( (double)[/COLOR] [URL="http://www.php.net/microtime"]microtime[/URL][COLOR= #007700]()*[/COLOR][COLOR= #0000BB]1000000[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #0000BB]$rand_color[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]#[/COLOR][COLOR= #007700];[/COLOR]
[URL="http://www.php.net/for"]for[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$i[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700];[/COLOR] [COLOR= #0000BB]$i[/COLOR] [COLOR= #007700]<[/COLOR] [COLOR= #0000BB]6[/COLOR][COLOR= #007700];[/COLOR] [COLOR= #0000BB]$i[/COLOR][COLOR= #007700]++)
{[/COLOR]
[COLOR= #0000BB]$rand_color[/COLOR] [COLOR= #007700]= ([/COLOR] [URL="http://www.php.net/empty"]empty[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$rand_color[/COLOR][COLOR= #007700])) ?[/COLOR] [COLOR= #0000BB]$chars[/COLOR][COLOR= #007700][[/COLOR][URL="http://www.php.net/rand"]rand[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]0[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$max_chars[/COLOR][COLOR= #007700])] :[/COLOR] [COLOR= #0000BB]$rand_color[/COLOR] [COLOR= #007700].[/COLOR] [COLOR= #0000BB]$chars[/COLOR][COLOR= #007700][[/COLOR][URL="http://www.php.net/rand"]rand[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]0[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$max_chars[/COLOR][COLOR= #007700])];
}[/COLOR]
[URL="http://www.php.net/if"]if[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$return_array[/COLOR][COLOR= #007700])
{[/COLOR]
[COLOR= #0000BB]$rand_color_array[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/array"]array[/URL][COLOR= #007700]();[/COLOR]
[COLOR= #0000BB]$rand_color_array[/COLOR][COLOR= #007700][[/COLOR][COLOR= #0000BB]0[/COLOR][COLOR= #007700]] =[/COLOR] [URL="http://www.php.net/substr"]substr[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$rand_color[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]1[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]2[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #0000BB]$rand_color_array[/COLOR][COLOR= #007700][[/COLOR][COLOR= #0000BB]1[/COLOR][COLOR= #007700]] =[/COLOR] [URL="http://www.php.net/substr"]substr[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$rand_color[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]3[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]2[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #0000BB]$rand_color_array[/COLOR][COLOR= #007700][[/COLOR][COLOR= #0000BB]2[/COLOR][COLOR= #007700]] =[/COLOR] [URL="http://www.php.net/substr"]substr[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$rand_color[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]5[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]2[/COLOR][COLOR= #007700]);[/COLOR]
[URL="http://www.php.net/return"]return[/URL] [COLOR= #0000BB]$rand_color_array[/COLOR][COLOR= #007700];
}[/COLOR]
[URL="http://www.php.net/return"]return[/URL] [COLOR= #0000BB]$rand_color[/COLOR][COLOR= #007700];
}[/COLOR]
[COLOR= #FF8000]/**
* Generates a random RGB Color
* @return array with key 0 as red, key 1 as green, and key 2 as blue
*/[/COLOR]
[URL="http://www.php.net/protected"]protected[/URL] [COLOR= #007700]function[/COLOR] random_rgb_color[COLOR= #007700]()
{[/COLOR]
[COLOR= #0000BB]$color[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/array"]array[/URL][COLOR= #007700]();[/COLOR]
[URL="http://www.php.net/for"]for[/URL] [COLOR= #007700]([/COLOR][COLOR= #0000BB]$c[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700];[/COLOR] [COLOR= #0000BB]$c[/COLOR] [COLOR= #007700]<[/COLOR] [COLOR= #0000BB]3[/COLOR][COLOR= #007700];[/COLOR] [COLOR= #0000BB]$c[/COLOR][COLOR= #007700]++)
{[/COLOR]
[COLOR= #0000BB]$color[/COLOR][COLOR= #007700][] =[/COLOR] [URL="http://www.php.net/rand"]rand[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]1[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]255[/COLOR][COLOR= #007700]);
}[/COLOR]
[URL="http://www.php.net/return"]return[/URL] [COLOR= #0000BB]$color[/COLOR][COLOR= #007700];
}[/COLOR]
[COLOR= #FF8000]/**
* Updates the width and height of the image
*/[/COLOR]
[URL="http://www.php.net/protected"]protected[/URL] [COLOR= #007700]function[/COLOR] update_size[COLOR= #007700]()
{[/COLOR]
[COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] width [COLOR= #007700]=[/COLOR] imagesx[COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] image_resource[COLOR= #007700]);[/COLOR]
[COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] height [COLOR= #007700]=[/COLOR] imagesy[COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] image_resource[COLOR= #007700]);
}[/COLOR]
[COLOR= #FF8000]/**
* Returns the image resource
* @return resource
*/[/COLOR]
[URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] get_resource[COLOR= #007700]()
{[/COLOR]
[URL="http://www.php.net/return"]return[/URL] [COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] image_resource[COLOR= #007700];
}[/COLOR]
[COLOR= #FF8000]/**
* Copies an Image object into the current image
* @param Image $image the image object to copy
* @param int $x The X position
* @param int $y The Y psoition
*/[/COLOR]
[URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] [URL="http://www.php.net/copy"]copy[/URL][COLOR= #007700]([/COLOR]Image [COLOR= #0000BB]$image[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$x[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$y[/COLOR][COLOR= #007700])
{[/COLOR]
imagecopy[COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] image_resource[COLOR= #007700],[/COLOR] [COLOR= #0000BB]$image[/COLOR] [COLOR= #007700]->[/COLOR] get_resource[COLOR= #007700](),[/COLOR] [COLOR= #0000BB]$x[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$y[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$image[/COLOR] [COLOR= #007700]->[/COLOR] get_width[COLOR= #007700]() -[/COLOR] [COLOR= #0000BB]1[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$image[/COLOR] [COLOR= #007700]->[/COLOR] get_height[COLOR= #007700]() -[/COLOR] [COLOR= #0000BB]1[/COLOR][COLOR= #007700]);
}[/COLOR]
[COLOR= #FF8000]/**
* Resizes the image
* @param int $max_width max width of the image
* @param int $max_height max height of the image
* @param bool $keep_aspect_ratio True if you wnat to keep the aspect ratio
*/[/COLOR]
[URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] resize[COLOR= #007700]([/COLOR][COLOR= #0000BB]$max_width[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$max_height[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$keep_aspect_ratio[/COLOR] [COLOR= #007700]=[/COLOR] true[COLOR= #007700])
{[/COLOR]
[URL="http://www.php.net/if"]if[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$keep_aspect_ratio[/COLOR][COLOR= #007700])
{[/COLOR]
[COLOR= #FF8000]// Find resize scale[/COLOR]
[COLOR= #0000BB]$resize_scale[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/min"]min[/URL][COLOR= #007700]([/COLOR][URL="http://www.php.net/min"]min[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$max_width[/COLOR] / [COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] width[COLOR= #007700],[/COLOR] [COLOR= #0000BB]$max_height[/COLOR] / [COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] height[COLOR= #007700]),[/COLOR] [COLOR= #0000BB]1.0[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #0000BB]$new_width[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$resize_scale[/COLOR] [COLOR= #007700]*[/COLOR] [COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] width[COLOR= #007700];[/COLOR]
[COLOR= #0000BB]$new_height[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$resize_scale[/COLOR] [COLOR= #007700]*[/COLOR] [COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] height[COLOR= #007700];
}[/COLOR]
[URL="http://www.php.net/else"]else[/URL]
[COLOR= #007700]{[/COLOR]
[COLOR= #0000BB]$new_width[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$max_width[/COLOR][COLOR= #007700];[/COLOR]
[COLOR= #0000BB]$new_height[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$max_height[/COLOR][COLOR= #007700];
}[/COLOR]
[COLOR= #0000BB]$new_img[/COLOR] [COLOR= #007700]=[/COLOR] imagecreatetruecolor[COLOR= #007700]([/COLOR][COLOR= #0000BB]$new_width[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$new_height[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #FF8000]// Resize it[/COLOR]
imagecopyresampled[COLOR= #007700]([/COLOR][COLOR= #0000BB]$new_img[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] image_resource[COLOR= #007700],[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$new_width[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$new_height[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] width[COLOR= #007700],[/COLOR] [COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] height[COLOR= #007700]);[/COLOR]
[COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] image_resource [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$new_img[/COLOR][COLOR= #007700];[/COLOR]
[COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] update_size[COLOR= #007700]();
}[/COLOR]
[COLOR= #FF8000]/**
* Outputs the image to the screen
*
* This method outputs the current image to the screen.
* Note: This function does <b>not</b> send the right Content-Type
* for the image, youll have to do that by yourself
* @param string $type The image type to output
* @param int $quality The quality of the image (only needed for JPEG images)
*/[/COLOR]
[URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] show_image[COLOR= #007700]([/COLOR][COLOR= #0000BB]$type[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]"png"[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$quality[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]70[/COLOR][COLOR= #007700])
{[/COLOR]
[URL="http://www.php.net/switch"]switch[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$type[/COLOR][COLOR= #007700])
{
case[/COLOR] [COLOR= #DD0000]"png"[/COLOR][COLOR= #007700]:[/COLOR]
imagepng[COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] image_resource[COLOR= #007700]);[/COLOR]
[URL="http://www.php.net/break"]break[/URL][COLOR= #007700];
case[/COLOR] [COLOR= #DD0000]"jpg"[/COLOR][COLOR= #007700]:
case[/COLOR] [COLOR= #DD0000]"jpeg"[/COLOR][COLOR= #007700]:[/COLOR]
imagejpeg[COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] image_resource[COLOR= #007700],[/COLOR] null[COLOR= #007700],[/COLOR] [COLOR= #0000BB]$quality[/COLOR][COLOR= #007700]);[/COLOR]
[URL="http://www.php.net/break"]break[/URL][COLOR= #007700];
case[/COLOR] [COLOR= #DD0000]"gif"[/COLOR][COLOR= #007700]:[/COLOR]
imagegif[COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] image_resource[COLOR= #007700]);[/COLOR]
[URL="http://www.php.net/break"]break[/URL][COLOR= #007700];
default:[/COLOR]
imagepng[COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] image_resource[COLOR= #007700]);
}
}[/COLOR]
[COLOR= #FF8000]/**
* Saves the image to a specific path
* @param string $file The path where to save to
* @param string $type The image type
* @param int $quality The quality of the image (only needed for JPEG images)
*/[/COLOR]
[URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] save_to_file[COLOR= #007700]([/COLOR][COLOR= #0000BB]$file[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$type[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]"png"[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$quality[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]70[/COLOR][COLOR= #007700])
{[/COLOR]
[URL="http://www.php.net/switch"]switch[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$type[/COLOR][COLOR= #007700])
{
case[/COLOR] [COLOR= #DD0000]"png"[/COLOR][COLOR= #007700]:[/COLOR]
imagepng[COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] image_resource[COLOR= #007700],[/COLOR] [COLOR= #0000BB]$file[/COLOR][COLOR= #007700]);[/COLOR]
[URL="http://www.php.net/break"]break[/URL][COLOR= #007700];
case[/COLOR] [COLOR= #DD0000]"jpg"[/COLOR][COLOR= #007700]:
case[/COLOR] [COLOR= #DD0000]"jpeg"[/COLOR][COLOR= #007700]:[/COLOR]
imagejpeg[COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] image_resource[COLOR= #007700],[/COLOR] [COLOR= #0000BB]$file[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$quality[/COLOR][COLOR= #007700]);[/COLOR]
[URL="http://www.php.net/break"]break[/URL][COLOR= #007700];
case[/COLOR] [COLOR= #DD0000]"gif"[/COLOR][COLOR= #007700]:[/COLOR]
imagegif[COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] image_resource[COLOR= #007700],[/COLOR] [COLOR= #0000BB]$file[/COLOR][COLOR= #007700]);[/COLOR]
[URL="http://www.php.net/break"]break[/URL][COLOR= #007700];
default:[/COLOR]
imagepng[COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] image_resource[COLOR= #007700],[/COLOR] [COLOR= #0000BB]$file[/COLOR][COLOR= #007700]);
}
}[/COLOR]
[COLOR= #FF8000]/**
* Returns the width of the image
*
* @return int
*/[/COLOR]
[URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] get_width[COLOR= #007700]()
{[/COLOR]
[URL="http://www.php.net/return"]return[/URL] [COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] width[COLOR= #007700];
}[/COLOR]
[COLOR= #FF8000]/**
* Returns the height of the image
*
* @return int
*/[/COLOR]
[URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] get_height[COLOR= #007700]()
{[/COLOR]
[URL="http://www.php.net/return"]return[/URL] [COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] height[COLOR= #007700];
}[/COLOR]
[URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] __toString[COLOR= #007700]()
{[/COLOR]
[URL="http://www.php.net/return"]return[/URL] imagepng[COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] image_resource[COLOR= #007700]);
}
}[/COLOR]
[COLOR= #FF8000]/**
* Represents the captcha image
* It generates a number of drawings,
* paints it on the main image,
* and sets the captcha code
* @package Images
* @author Lucas van Dijk
*/[/COLOR]
[URL="http://www.php.net/class"]class[/URL] Captcha extends Image
[COLOR= #007700]{[/COLOR]
[URL="http://www.php.net/protected"]protected[/URL] [COLOR= #0000BB]$drawings[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/array"]array[/URL][COLOR= #007700]();[/COLOR]
[URL="http://www.php.net/protected"]protected[/URL] [COLOR= #0000BB]$font[/COLOR][COLOR= #007700];[/COLOR]
[URL="http://www.php.net/protected"]protected[/URL] [COLOR= #0000BB]$number[/COLOR][COLOR= #007700];[/COLOR]
[URL="http://www.php.net/protected"]protected[/URL] [COLOR= #0000BB]$code_length[/COLOR][COLOR= #007700];[/COLOR]
[URL="http://www.php.net/protected"]protected[/URL] [COLOR= #0000BB]$code[/COLOR][COLOR= #007700];[/COLOR]
[COLOR= #FF8000]/**
* Constructor, sets the captcha parameters, and inits the image
* @param string $font The TTF font file used in the image, use ./font.ttf (with ./) ti use a font in the current directory
* @param int $number_of_drawings The number of drawings you want to generate
* @param int $code_length The length of the catcha codes
*/[/COLOR]
[URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] __construct[COLOR= #007700]([/COLOR][COLOR= #0000BB]$number_of_drawings[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]2[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$code_length[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]5[/COLOR][COLOR= #007700])
{[/COLOR]
[URL="http://www.php.net/if"]if[/URL][COLOR= #007700](!([/COLOR][URL="http://www.php.net/ctype_digit"]ctype_digit[/URL][COLOR= #007700]((string)[/COLOR] [COLOR= #0000BB]$number_of_drawings[/COLOR][COLOR= #007700]) &&[/COLOR] [URL="http://www.php.net/ctype_digit"]ctype_digit[/URL][COLOR= #007700]((string)[/COLOR] [COLOR= #0000BB]$code_length[/COLOR][COLOR= #007700])))
{[/COLOR]
throw [COLOR= #007700]new[/COLOR] InvalidArgumentException[COLOR= #007700]([/COLOR][COLOR= #DD0000]Invalid parameters[/COLOR][COLOR= #007700]);
}[/COLOR]
[COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] code_length [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$code_length[/COLOR][COLOR= #007700];[/COLOR]
[COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] number [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$number_of_drawings[/COLOR][COLOR= #007700];[/COLOR]
[COLOR= #0000BB]$height[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]50[/COLOR] [COLOR= #007700]+ ([/COLOR][COLOR= #0000BB]$number_of_drawings[/COLOR] [COLOR= #007700]*[/COLOR] [COLOR= #0000BB]35[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #0000BB]$width[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]200[/COLOR] [COLOR= #007700]+ ([/COLOR]imagefontwidth[COLOR= #007700]([/COLOR][COLOR= #0000BB]4[/COLOR][COLOR= #007700]) *[/COLOR] [COLOR= #0000BB]$code_length[/COLOR][COLOR= #007700]) +[/COLOR] [COLOR= #0000BB]50[/COLOR][COLOR= #007700];[/COLOR]
parent[COLOR= #007700]::[/COLOR]__construct[COLOR= #007700]([/COLOR][COLOR= #0000BB]$width[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$height[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] create[COLOR= #007700]();[/COLOR]
imagecolortransparent[COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] image_resource[COLOR= #007700],[/COLOR] [COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] allocate_color[COLOR= #007700]([/COLOR][COLOR= #DD0000]FFFFFF[/COLOR][COLOR= #007700]));
}[/COLOR]
[COLOR= #FF8000]/**
* Generates a random string
* @param int $max_length The length of the generated string
* @param bool $hash Hash the string with md5?
* @return string The generated string
*/[/COLOR]
[URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] generate_random_string[COLOR= #007700]([/COLOR][COLOR= #0000BB]$max_length[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]8[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$hash[/COLOR] [COLOR= #007700]=[/COLOR] false[COLOR= #007700])
{[/COLOR]
[COLOR= #0000BB]$chars[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/array_merge"]array_merge[/URL][COLOR= #007700]([/COLOR][URL="http://www.php.net/range"]range[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000]a[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #DD0000]z[/COLOR][COLOR= #007700]),[/COLOR] [URL="http://www.php.net/range"]range[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000]A[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #DD0000]Z[/COLOR][COLOR= #007700]),[/COLOR] [URL="http://www.php.net/range"]range[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000]0[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #DD0000]9[/COLOR][COLOR= #007700]));[/COLOR]
[COLOR= #0000BB]$max_chars[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/count"]count[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$chars[/COLOR][COLOR= #007700]) -[/COLOR] [COLOR= #0000BB]1[/COLOR][COLOR= #007700];[/COLOR]
[COLOR= #0000BB]$rand_str[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #DD0000][/COLOR][COLOR= #007700];[/COLOR]
[URL="http://www.php.net/for"]for[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$i[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700];[/COLOR] [COLOR= #0000BB]$i[/COLOR] [COLOR= #007700]<[/COLOR] [COLOR= #0000BB]$max_length[/COLOR][COLOR= #007700];[/COLOR] [COLOR= #0000BB]$i[/COLOR][COLOR= #007700]++)
{[/COLOR]
[COLOR= #0000BB]$rand_str[/COLOR] [COLOR= #007700]= ([/COLOR][COLOR= #0000BB]$i[/COLOR] [COLOR= #007700]==[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700]) ?[/COLOR] [COLOR= #0000BB]$chars[/COLOR][COLOR= #007700][[/COLOR][URL="http://www.php.net/mt_rand"]mt_rand[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]0[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$max_chars[/COLOR][COLOR= #007700])] :[/COLOR] [COLOR= #0000BB]$rand_str[/COLOR] [COLOR= #007700].[/COLOR] [COLOR= #0000BB]$chars[/COLOR][COLOR= #007700][[/COLOR][URL="http://www.php.net/mt_rand"]mt_rand[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]0[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$max_chars[/COLOR][COLOR= #007700])];
}[/COLOR]
[URL="http://www.php.net/return"]return[/URL] [COLOR= #007700]([/COLOR][COLOR= #0000BB]$hash[/COLOR][COLOR= #007700]) ?[/COLOR] [URL="http://www.php.net/md5"]md5[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$rand_str[/COLOR][COLOR= #007700]) :[/COLOR] [COLOR= #0000BB]$rand_str[/COLOR][COLOR= #007700];
}[/COLOR]
[COLOR= #FF8000]/**
* Returns the main captcha code
* @return string
*/[/COLOR]
[URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] get_code[COLOR= #007700]()
{[/COLOR]
[URL="http://www.php.net/return"]return[/URL] [COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] code[COLOR= #007700];
}[/COLOR]
[COLOR= #FF8000]/**
* Creates the image
*
* Adds a border to the image, the seperation line, and paints the drawings
* on the image
*/[/COLOR]
[URL="http://www.php.net/protected"]protected[/URL] [COLOR= #007700]function[/COLOR] create[COLOR= #007700]()
{[/COLOR]
imagefilledrectangle[COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] image_resource[COLOR= #007700],[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] get_width[COLOR= #007700]() -[/COLOR] [COLOR= #0000BB]1[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] get_height[COLOR= #007700]() -[/COLOR] [COLOR= #0000BB]1[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] allocate_color[COLOR= #007700]([/COLOR][COLOR= #DD0000]FFFFFF[/COLOR][COLOR= #007700]));[/COLOR]
imagerectangle[COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] image_resource[COLOR= #007700],[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] get_width[COLOR= #007700]() -[/COLOR] [COLOR= #0000BB]1[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] get_height[COLOR= #007700]() -[/COLOR] [COLOR= #0000BB]1[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] allocate_color[COLOR= #007700]([/COLOR][COLOR= #DD0000]000000[/COLOR][COLOR= #007700]));[/COLOR]
imageline[COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] image_resource[COLOR= #007700],[/COLOR] [COLOR= #0000BB]150[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]150[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] get_height[COLOR= #007700](),[/COLOR] [COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] allocate_color[COLOR= #007700]([/COLOR][COLOR= #DD0000]000000[/COLOR][COLOR= #007700]));[/COLOR]
[URL="http://www.php.net/for"]for[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$i[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700];[/COLOR] [COLOR= #0000BB]$i[/COLOR] [COLOR= #007700]<[/COLOR] [COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] number[COLOR= #007700];[/COLOR] [COLOR= #0000BB]$i[/COLOR][COLOR= #007700]++)
{[/COLOR]
[COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] add_drawing[COLOR= #007700](new[/COLOR] CaptchaDrawing[COLOR= #007700]());
}[/COLOR]
[COLOR= #FF8000]// Determine the main drawing[/COLOR]
[COLOR= #0000BB]$main[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/mt_rand"]mt_rand[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]0[/COLOR][COLOR= #007700],[/COLOR] [URL="http://www.php.net/count"]count[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] drawings[COLOR= #007700]) -[/COLOR] [COLOR= #0000BB]1[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] code [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] drawings[COLOR= #007700][[/COLOR][COLOR= #0000BB]$main[/COLOR][COLOR= #007700]][[/COLOR][COLOR= #0000BB]1[/COLOR][COLOR= #007700]];[/COLOR]
[COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] paint_drawings[COLOR= #007700]([/COLOR][COLOR= #0000BB]$main[/COLOR][COLOR= #007700]);
}[/COLOR]
[COLOR= #FF8000]/**
* This function paints the drawings on the main image
* @param int $main The index of the main image, which will be painted on the left
*/[/COLOR]
[URL="http://www.php.net/protected"]protected[/URL] [COLOR= #007700]function[/COLOR] paint_drawings[COLOR= #007700]([/COLOR][COLOR= #0000BB]$main[/COLOR][COLOR= #007700])
{[/COLOR]
[COLOR= #FF8000]// paint the main drawing on the image[/COLOR]
[COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] [URL="http://www.php.net/copy"]copy[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] drawings[COLOR= #007700][[/COLOR][COLOR= #0000BB]$main[/COLOR][COLOR= #007700]][[/COLOR][COLOR= #0000BB]0[/COLOR][COLOR= #007700]],[/COLOR] [COLOR= #0000BB]25[/COLOR][COLOR= #007700], ([/COLOR][COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] get_height[COLOR= #007700]()[/COLOR] / [COLOR= #0000BB]2[/COLOR][COLOR= #007700]) -[/COLOR] [COLOR= #0000BB]50[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #FF8000]// Paint all drawings on the right of the image, with the code[/COLOR]
[COLOR= #0000BB]$i[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700];[/COLOR]
[COLOR= #0000BB]$x[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]175[/COLOR][COLOR= #007700];[/COLOR]
[URL="http://www.php.net/foreach"]foreach[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] drawings [COLOR= #007700]as[/COLOR] [COLOR= #0000BB]$drawing[/COLOR][COLOR= #007700])
{[/COLOR]
[COLOR= #0000BB]$drawing[/COLOR][COLOR= #007700][[/COLOR][COLOR= #0000BB]0[/COLOR][COLOR= #007700]] ->[/COLOR] resize[COLOR= #007700]([/COLOR][COLOR= #0000BB]30[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]30[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] [URL="http://www.php.net/copy"]copy[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$drawing[/COLOR][COLOR= #007700][[/COLOR][COLOR= #0000BB]0[/COLOR][COLOR= #007700]],[/COLOR] [COLOR= #0000BB]$x[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]25[/COLOR] [COLOR= #007700]+ ([/COLOR][COLOR= #0000BB]50[/COLOR] [COLOR= #007700]*[/COLOR] [COLOR= #0000BB]$i[/COLOR][COLOR= #007700]) -[/COLOR] [COLOR= #0000BB]15[/COLOR][COLOR= #007700]);[/COLOR]
imagestring[COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] image_resource[COLOR= #007700],[/COLOR] [COLOR= #0000BB]4[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$x[/COLOR] [COLOR= #007700]+[/COLOR] [COLOR= #0000BB]40[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]15[/COLOR] [COLOR= #007700]+ ([/COLOR][COLOR= #0000BB]50[/COLOR] [COLOR= #007700]*[/COLOR] [COLOR= #0000BB]$i[/COLOR][COLOR= #007700]),[/COLOR] [COLOR= #0000BB]$drawing[/COLOR][COLOR= #007700][[/COLOR][COLOR= #0000BB]1[/COLOR][COLOR= #007700]],[/COLOR] [COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] allocate_color[COLOR= #007700]([/COLOR][COLOR= #DD0000]000000[/COLOR][COLOR= #007700]));[/COLOR]
[COLOR= #0000BB]$i[/COLOR][COLOR= #007700]++;
}
}[/COLOR]
[COLOR= #FF8000]/**
* Adds a drawing to the $drawings member, and generates a code for the drawing
* @param CaptchaDrawing $drawing The drawing to add
*/[/COLOR]
[URL="http://www.php.net/protected"]protected[/URL] [COLOR= #007700]function[/COLOR] add_drawing[COLOR= #007700]([/COLOR]CaptchaDrawing [COLOR= #0000BB]$drawing[/COLOR][COLOR= #007700])
{[/COLOR]
[COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] drawings[COLOR= #007700][] =[/COLOR] [URL="http://www.php.net/array"]array[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$drawing[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] generate_random_string[COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] code_length[COLOR= #007700]));
}
}[/COLOR]
[COLOR= #FF8000]/**
* A simple drawing on the captcha images
*
* The drawing is generated completely random
* @package Images
* @author Lucas van Dijk
*/[/COLOR]
[URL="http://www.php.net/class"]class[/URL] CaptchaDrawing extends Image
[COLOR= #007700]{[/COLOR]
[COLOR= #FF8000]/**
* Constructor, generates the image immediatly
* @param int $width The width of the drawing
* @param int $height The height of the drawing
*/[/COLOR]
[URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] __construct[COLOR= #007700]([/COLOR][COLOR= #0000BB]$width[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]100[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$height[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]100[/COLOR][COLOR= #007700])
{[/COLOR]
parent[COLOR= #007700]::[/COLOR]__construct[COLOR= #007700]([/COLOR][COLOR= #0000BB]$width[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$height[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] generate_random_drawing[COLOR= #007700]();
}[/COLOR]
[COLOR= #FF8000]/**
* Generates a completely random drawing
*/[/COLOR]
[URL="http://www.php.net/protected"]protected[/URL] [COLOR= #007700]function[/COLOR] generate_random_drawing[COLOR= #007700]()
{[/COLOR]
imagefilledrectangle[COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] image_resource[COLOR= #007700],[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] get_width[COLOR= #007700]() -[/COLOR] [COLOR= #0000BB]1[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] get_height[COLOR= #007700]() -[/COLOR] [COLOR= #0000BB]1[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] allocate_color[COLOR= #007700]([/COLOR][COLOR= #DD0000]FFFFFF[/COLOR][COLOR= #007700]));[/COLOR]
[COLOR= #0000BB]$lines_drawed[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700];[/COLOR]
[COLOR= #0000BB]$max_lines[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/rand"]rand[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]2[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]5[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #0000BB]$min_width[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] get_width[COLOR= #007700]()[/COLOR] / [COLOR= #0000BB]100[/COLOR] [COLOR= #007700]*[/COLOR] [COLOR= #0000BB]15[/COLOR][COLOR= #007700];[/COLOR]
[COLOR= #0000BB]$max_width[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] get_width[COLOR= #007700]()[/COLOR] / [COLOR= #0000BB]100[/COLOR] [COLOR= #007700]*[/COLOR] [COLOR= #0000BB]75[/COLOR][COLOR= #007700];[/COLOR]
[COLOR= #0000BB]$min_height[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] get_height[COLOR= #007700]()[/COLOR] / [COLOR= #0000BB]100[/COLOR] [COLOR= #007700]*[/COLOR] [COLOR= #0000BB]15[/COLOR][COLOR= #007700];[/COLOR]
[COLOR= #0000BB]$max_height[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] get_height[COLOR= #007700]()[/COLOR] / [COLOR= #0000BB]100[/COLOR] [COLOR= #007700]*[/COLOR] [COLOR= #0000BB]75[/COLOR][COLOR= #007700];[/COLOR]
[COLOR= #0000BB]$rectangle_drawed[/COLOR] [COLOR= #007700]=[/COLOR] false[COLOR= #007700];[/COLOR]
[COLOR= #0000BB]$circle_drawed[/COLOR] [COLOR= #007700]=[/COLOR] false[COLOR= #007700];[/COLOR]
[URL="http://www.php.net/while"]while[/URL][COLOR= #007700](([/COLOR][COLOR= #0000BB]$rectangle_drawed[/COLOR] [COLOR= #007700]==[/COLOR] false [COLOR= #007700]||[/COLOR] [COLOR= #0000BB]$circle_drawed[/COLOR] [COLOR= #007700]==[/COLOR] false[COLOR= #007700]) &&[/COLOR] [COLOR= #0000BB]$lines_drawed[/COLOR] [COLOR= #007700]<[/COLOR] [COLOR= #0000BB]$max_lines[/COLOR][COLOR= #007700])
{[/COLOR]
[COLOR= #0000BB]$what_to_draw[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/mt_rand"]mt_rand[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]1[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]4[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #FF8000]// generate random width/height[/COLOR]
[COLOR= #0000BB]$width[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/mt_rand"]mt_rand[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$min_width[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$max_width[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #0000BB]$height[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$width[/COLOR] [COLOR= #007700]* ([/COLOR][URL="http://www.php.net/mt_rand"]mt_rand[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]75[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]120[/COLOR][COLOR= #007700])[/COLOR] / [COLOR= #0000BB]100[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #FF8000]// Generate the X and Y positions[/COLOR]
[COLOR= #0000BB]$max_x[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] get_width[COLOR= #007700]() -[/COLOR] [COLOR= #0000BB]$width[/COLOR][COLOR= #007700];[/COLOR]
[COLOR= #0000BB]$max_y[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] get_height[COLOR= #007700]() -[/COLOR] [COLOR= #0000BB]$height[/COLOR][COLOR= #007700];[/COLOR]
[COLOR= #0000BB]$x[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/mt_rand"]mt_rand[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]0[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$max_x[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #0000BB]$y[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/mt_rand"]mt_rand[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]0[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$max_y[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #0000BB]$filled[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/mt_rand"]mt_rand[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]0[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]2[/COLOR][COLOR= #007700]) !=[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700];[/COLOR]
[URL="http://www.php.net/switch"]switch[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$what_to_draw[/COLOR][COLOR= #007700])
{
case[/COLOR] [COLOR= #0000BB]1[/COLOR][COLOR= #007700]:[/COLOR]
[URL="http://www.php.net/if"]if[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$filled[/COLOR][COLOR= #007700])
{[/COLOR]
imagefilledellipse[COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] image_resource[COLOR= #007700],[/COLOR] [COLOR= #0000BB]$x[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$y[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$width[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$height[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] allocate_color[COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] random_hex_color[COLOR= #007700]()));
}[/COLOR]
[URL="http://www.php.net/else"]else[/URL]
[COLOR= #007700]{[/COLOR]
imageellipse[COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] image_resource[COLOR= #007700],[/COLOR] [COLOR= #0000BB]$x[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$y[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$width[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$height[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] allocate_color[COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] random_hex_color[COLOR= #007700]()));
}[/COLOR]
[COLOR= #0000BB]$circle_drawed[/COLOR] [COLOR= #007700]=[/COLOR] true[COLOR= #007700];[/COLOR]
[URL="http://www.php.net/break"]break[/URL][COLOR= #007700];
case[/COLOR] [COLOR= #0000BB]2[/COLOR][COLOR= #007700]:[/COLOR]
[URL="http://www.php.net/if"]if[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$filled[/COLOR][COLOR= #007700])
{[/COLOR]
imagefilledrectangle[COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] image_resource[COLOR= #007700],[/COLOR] [COLOR= #0000BB]$x[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$y[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$x[/COLOR] [COLOR= #007700]+[/COLOR] [COLOR= #0000BB]$width[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$y[/COLOR] [COLOR= #007700]+[/COLOR] [COLOR= #0000BB]$height[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] allocate_color[COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] random_hex_color[COLOR= #007700]()));
}[/COLOR]
[URL="http://www.php.net/else"]else[/URL]
[COLOR= #007700]{[/COLOR]
imagerectangle[COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] image_resource[COLOR= #007700],[/COLOR] [COLOR= #0000BB]$x[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$y[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$x[/COLOR] [COLOR= #007700]+[/COLOR] [COLOR= #0000BB]$width[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$y[/COLOR] [COLOR= #007700]+[/COLOR] [COLOR= #0000BB]$height[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] allocate_color[COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] random_hex_color[COLOR= #007700]()));
}[/COLOR]
[COLOR= #0000BB]$rectangle_drawed[/COLOR] [COLOR= #007700]=[/COLOR] true[COLOR= #007700];[/COLOR]
[URL="http://www.php.net/break"]break[/URL][COLOR= #007700];
case[/COLOR] [COLOR= #0000BB]3[/COLOR][COLOR= #007700]:
case[/COLOR] [COLOR= #0000BB]4[/COLOR][COLOR= #007700]:[/COLOR]
[COLOR= #FF8000]// Draw a random line[/COLOR]
[URL="http://www.php.net/if"]if[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$lines_drawed[/COLOR] [COLOR= #007700]<=[/COLOR] [COLOR= #0000BB]$max_lines[/COLOR][COLOR= #007700])
{[/COLOR]
[COLOR= #0000BB]$x2[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/mt_rand"]mt_rand[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$min_width[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$max_width[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #0000BB]$y2[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/mt_rand"]mt_rand[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$min_height[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$max_height[/COLOR][COLOR= #007700]);[/COLOR]
imageline[COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] image_resource[COLOR= #007700],[/COLOR] [COLOR= #0000BB]$x[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$y[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$x2[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$y2[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] allocate_color[COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR] [COLOR= #007700]->[/COLOR] random_hex_color[COLOR= #007700]()));[/COLOR]
[COLOR= #0000BB]$lines_drawed[/COLOR][COLOR= #007700]++;
}[/COLOR]
[URL="http://www.php.net/break"]break[/URL][COLOR= #007700];
}
}
}
}[/COLOR] [COLOR= #0000BB]<?php[/COLOR]
[URL="http://www.php.net/session_start"]session_start[/URL][COLOR= #007700]();[/COLOR]
[URL="http://www.php.net/include_once"]include_once[/URL] [COLOR= #DD0000]captcha.class.php[/COLOR][COLOR= #007700];[/COLOR]
[COLOR= #0000BB]$captcha[/COLOR] [COLOR= #007700]= new[/COLOR] Captcha[COLOR= #007700]([/COLOR][COLOR= #0000BB]3[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #0000BB]$_SESSION[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]captcha_code[/COLOR][COLOR= #007700]] =[/COLOR] [URL="http://www.php.net/strtolower"]strtolower[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$captcha[/COLOR] [COLOR= #007700]->[/COLOR] get_code[COLOR= #007700]());[/COLOR]
[URL="http://www.php.net/header"]header[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000]"Content-Type: image/png"[/COLOR][COLOR= #007700]);[/COLOR]
[URL="http://www.php.net/echo"]echo[/URL] [COLOR= #007700](string)[/COLOR] [COLOR= #0000BB]$captcha[/COLOR][COLOR= #007700];[/COLOR] 

de bedoeling is dat hij het bericht uit een txt bestand haaltErik schreef:heb je er dan een? want eigenlijk gebruik ik zon gb iets van 12 X drm txtUit txt is slecht.. Je kan em beter opslaan in een database.



[COLOR= #0000BB]<?php[/COLOR]
[URL="http://www.php.net/include"]include[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000]admin.php[/COLOR][COLOR= #007700])[/COLOR]
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1250">
<meta name="generator" content="PSPad editor, www.pspad.com">
<title>je pagina titel</title>
</head>
<body>
Zet hier je eigen tekst of haal het: Bericht van de Admin: weg en dan zie je altijd het $adminbericht.
<br>
<b>Bericht van de Admin: </b> [COLOR= #0000BB]<?php[/COLOR] [URL="http://www.php.net/echo"]echo[/URL] [COLOR= #0000BB]$adminbericht[/COLOR] ?>
</body>
</html> [COLOR= #0000BB]<?php
$adminbericht[/COLOR][COLOR= #007700]=[/COLOR] [COLOR= #DD0000]Je bericht[/COLOR] [COLOR= #007700];[/COLOR]
?>