gratis scripts.

Gestart doorJesse40 reacties646 weergaven

41 berichten · pagina 2 van 3

Berichten
15.303
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
is die er ook al dan? yummie
0
Erik

Lid

Berichten
7.109
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Ja.

[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]


captcha.php

[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]
0
Berichten
15.303
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Oké, ik heb niets gezegd. hypocrite
0
Erik

Lid

Berichten
7.109
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Alleen het controleren is kut. sadley
0
Berichten
93.699
Reputatie
0
Punten
1,27
Lid sinds
Laatst gezien
heefd iemand ook nog goed gastenboek met captha ik heb mijn gb gesloopt en is nu kapot xdde bedoeling is dat hij het bericht uit een txt bestand haalt
0
Erik

Lid

Berichten
7.109
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Uit txt is slecht.. Je kan em beter opslaan in een database.
0
Berichten
93.699
Reputatie
0
Punten
1,27
Lid sinds
Laatst gezien
Erik schreef:
Uit txt is slecht.. Je kan em beter opslaan in een database.
heb je er dan een? want eigenlijk gebruik ik zon gb iets van 12 X drm txt
0
Erik

Lid

Berichten
7.109
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
dan maak je toch 12 van die tabellen? schater
0
Berichten
35.796
Reputatie
1
Punten
0,00
Lid sinds
Laatst gezien
Wat is eigenlijk het doel van dit topic?
Alle scripts dumpen die je tegenkomt? emo
0
Berichten
5.737
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Visit leejoo.nl
0
Rik

Lid

Berichten
18.393
Reputatie
0
Punten
0,04
Lid sinds
Laatst gezien
Eigenlijk was het doel EIGEN Scripts te posten wink
0
Jesse

Lid · Topicstarter

Berichten
11.099
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Het doel van dit topic is mensen helpen ( met scripts ) het is echt niet erg als je een keer van een andere site een script dumpt als je denkt dat mensen er wat aan hebben!
maar zoals guildjuhhh al zijn liefst eigen scripts.
0
Berichten
5.737
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Je kan je eigen scripts toch beter verkopen?
0
Jesse

Lid · Topicstarter

Berichten
11.099
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Het zou kunnen ja maar niet iedereen wil alles voor puntjes.
Het is ook wel is leuk voor de minder rijke leden zodat die ook een kans hebben.
0
Bram

Lid

Berichten
15
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Ik heb hier nog een leuk script, je kunt zo een eigen bericht plaatsen wat je snel kunt veranderen.
Index.php

[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>


admin.php

[COLOR= #0000BB]<?php
$adminbericht[/COLOR][COLOR= #007700]=[/COLOR] [COLOR= #DD0000]Je bericht[/COLOR] [COLOR= #007700];[/COLOR]
?>


Doordat je in het admin bestand je bericht typt hoef je alleen die up te loaden, inplaats van steeds het index.php bewerken.

Veel plezier.
Bram
0

Jouw reactie

Deel je idee, stel een vraag of help een ander verder.

Editor laden…

Praat mee met de One2xs-community.

Inloggen om te reageren