beveiliging-van-gastenboek

Gesponsorde koppelingen

PHP script bestanden

  1. beveiliging-van-gastenboek

« Lees de omschrijving en reacties

//////////////////Image.php//////////////////////

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
<?php

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

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

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

function
generate($length)
{

    $c = "abcdefghijklmnopqrstuvqxyz0123456789";
    $code = "";
    for ($i = 0; $i < $length; $i++)
    {

        $char = $c{rand(0, strlen($c) - 1)};
        if (rand(0,1) == 1) $char = strtoupper($char);
        $code .= $char;
    }

    
    // verwijder oudere codes van deze bezoeker.
    mysql_query("DELETE FROM `gastenboekcodes` WHERE `ipadres` = '{$_SERVER['REMOTE_ADDR']}';");
    
    // code controleren.
    mysql_query("INSERT INTO `gastenboekcodes` SET `code` = '$code', `ipadres` = '{$_SERVER['REMOTE_ADDR']}';");
    return $code;
}

function
tekencode($code)
{

    $width = strlen($code) * 20;
    $image = imagecreatetruecolor($width, 26);
    
    // Maak een kleuren pallet. RGB
    $achtergrond = imagecolorallocate($image, 151, 156, 250);
    $lijn = imagecolorallocate($image, 210, 210, 210);
    $tekst = imagecolorallocate($image, 0, 0, 0);
    
    // Stel de achtergrond kleur in.
    imagefill($image, 0, 0, $achtergrond);
    
    $y = 0; $x = 0;
    $length = 0;
    for ($i = 0; $i < 10; $i ++)
    {

        $y += rand(1, 4);
        $x = rand(0, 0);
        $length = rand($width - 10, $width);
        imageline($image, 0, $y, strlen($code) * 20, $y + rand(-5, 5), $lijn);
    }

    
    // Een loopje door elke karakter in de string.
    $x = 5; $y = 0;
    for ($i = 0; $i < strlen($code); $i++)
    {

        $char = substr($code, $i, 1);
        $y = rand(16, 23);

        // Voeg het karakter toe aan het plaatje.
        $tx = rand($x - 3, $x + 3);
        imagettftext($image, 10, rand(-12, 12), $tx, $y, $tekst, "fonts/comic.ttf", $char);
        $x += 20;
    }

    imagerectangle($image, 0, 0, $width - 1, 25, imagecolorallocate($image, 0, 0, 0));
    imagejpeg($image, null, 100);
}


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

//////////////////einde image.php/////////////

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

Bouw onderstaande code in, in het gedeelte van het schrijven van een bericht
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
<?php
// controleren of iemand de juiste code heeft ingevoerd
        if(check_code($_POST[code]) == false)
        {

            //echo "U heeft een onjuiste code ingevoerd. U keert terug...";
            //echo "<meta http-equiv=\"refresh\" content=\"4; URL=javascript:history.back()\">";

            // Error message weergeven

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

?>

/////////////////einde check code////////////

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

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

?>

//////////////einde het formulier////////////


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

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

?>

/////////////einde Sql///////////

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.