shoutbox

Gesponsorde koppelingen

PHP script bestanden

  1. shoutbox

« Lees de omschrijving en reacties

//*************BERICHTEN.PHP


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
<? exit("u hebt geen toegang tot dit bestand");
?>



//************ CONFIG.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
<?
/********************
UITLEG:

Script is puur voor unix gemaakt, windows gebruikers (muahahaha) moeten hun plan maar trekken om het om te zetten
De informatie wordt telkens naar een bestand geschreven en gelezen

********************/

//het pad naar het bestand (niet http pad, wel unix pad)

$bestandspad = "/home/.sites/65/site131/web/php/bshout/berichten.php";

//aantal berichten dat er bewaard moeten worden (dit is NIET hoeveel er getoond zullen worden!
//$aantal_bestand = 20;

//aantal berichten er getoond moeten worden
//$aantal_toon = 10;

//manier om de tijd te tonen (zie php Manual: http://nl.php.net/date )

$datum_formaat = "d/m(H:i)";

//laatste berichten eerst of laatst, eerst = true, laatst = false
$volgorde = true;

//deze opties aan of uitzetten? true = gebruiken, false = verbieden!
$ubb = true;  //enkel in het bericht
$html = false; //in naam/email/bericht, of in geen van de drie!!! standaard staat het uit, er is genoeg met UBB code!
$smileys = true; //enkel in het bericht (kan ook via een checkbox in het toevoegform bepaald worden door d gebruiker!
//voor een lijst met smileys, zie shoutbox.php!!!



/********************
HTML CODE
********************/

/*** voor alle berichten ***/

function shout_voor(){
return <<<HTML
<html><head><title>shoutbox</title></head><body>
<table border="3" width="250"><tr><td>
HTML
;
}

/*** voor elk bericht ****/
function shout_bericht($naam, $datum, $email, $bericht){
return <<<HTML
<a href="mailto:$email">$naam</a> schreef op $datum:<br>
$bericht
<hr>
HTML
;
}

/*** na alle berichten ****/
function shout_na(){
return <<<HTML
</td></tr><tr><td>
<form name="bshout" method="post" action="shoutbox.php">
Naam: <input type="text" name="naam" maxlength="25"><br>
email: <input type="text" name="email" maxlength="25"><br>
bericht: <input type="text" name="bericht" maxlength="200"><br>
<input type="submit" value="en daarmee basta" name="verstuur">
</td></tr></table></body></html>
HTML
;
}



?>


//**************** SHOUTBOX.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
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
<?
require("config.php");
if ($verstuur) {

    /********************
    validatie
    ********************/


    $datum = time();
    $naam = addslashes($naam);
    $email = addslashes($email);
    $bericht = addslashes($bericht);

    /********************
    formatatie
    ********************/


    $naam = addslashes($naam);

    /********************
    bijschrijven
    ********************/

    $bestand = fopen($bestandspad, "a");
    fwrite($bestand, "$naam|$email|$datum|$bericht\n");
    fclose($bestand);

    /********************
    naam onthouden
    ********************/

    //setcookie("naam","$naam",time()+60*60*24*30); // 60 seconden maal 60 minuten maal 24 uur maal 30 dagen = 30 dagen!
    //setcookie("email","$email",time()+60*60*24*30); // 60 seconden maal 60 minuten maal 24 uur maal 30 dagen = 30 dagen!


}

/********************
uitlezen
********************/

$bestand= file($bestandspad);
$inhoud=array_reverse($bestand); //inlezen, en laatste berichten eerst zetten
array_shift($inhoud); //eerste deel wegdoen
array_pop($inhoud);  //laatste deel wegdoen

if ($inhoud[0] == "") echo ("bestand is leeg"); //zijn er nog records?

/********************
uitvoer
********************/

echo shout_voor();

foreach($inhoud as $i) { //per array element
    $i=explode("|",$i);
    $naam = $i[0];
    $email = $i[1];
    $datum = date($datum_formaat, $i[2]);
    $bericht = $i[3];

    if (!$html){
        $naam = htmlspecialchars($naam);
        $bericht = htmlspecialchars($bericht);
        $email = htmlspecialchars($email);
    }


    echo shout_bericht($naam, $datum, $email, $bericht);
}


echo shout_na();


/********************
formatatie functies
********************/
//******UBB PARSEN*********/

function ubb($bericht) {
$bericht = eregi_replace("\[b\]","<b>",$bericht);
$bericht = eregi_replace("\[/b\]","</b>",$bericht);
$bericht = eregi_replace("\[i\]","<i>",$bericht);
$bericht = eregi_replace("\[/i\]","</i>",$bericht);
$bericht = eregi_replace("\[u\]","<u>",$bericht);
$bericht = eregi_replace("\[/u\]","</u>",$bericht);
$bericht = eregi_replace("\[SMALL\]","<font size=1>",$bericht);
$bericht = eregi_replace("\[/SMALL\]","</font>",$bericht);
$bericht = eregi_replace("\[BIG\]","<font size=6>",$bericht);
$bericht = eregi_replace("\[/BIG\]","</font>",$bericht);
$bericht = eregi_replace("[[:graph:]]+@[^<>[:space:]]+[[:alnum:]]", "<a href=\"mailto:\\0\">\\0</a>", $bericht);
$bericht = eregi_replace("\\[url=([^\\[]*)\]([^\\[]*)\\[/url\\]","<a href=\"\\1\" target=\"_blank\">\\2</a>",$bericht);
return $bericht;
}

//******SMILEYS*********/
function smileys($bericht) {
$bericht = str_replace(":)","<img src='smilysmile.gif'>",$bericht);
$bericht = str_replace(":(","<img src='smilysmile.gif'>",$bericht);
$bericht = str_replace(":'(","<img src='smilysmile.gif'>",$bericht);
$bericht = str_replace(":D","<img src='smilysmile.gif'>",$bericht);
$bericht = str_replace(":p","<img src='smilysmile.gif'>",$bericht);

return $bericht;
}


?>

 
 

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.