Scripts
Mijn gastenboek
Simpel gastenboek met mogelijkheden voor smilies en UBB codes en scheldwoordenfilter. Geen database nodig. Maak zelf het bestand berichten.txt aan en CHMOD het 777. Het complete bestand is te downloaden. Dan zit er nog een admin bij om berichten online te verwijderen en te bewerken. Ook zit er dan nog een style-sheet bij en een inlogsysteem bij de admin. Download: http://www.nummer11.nl/elf/down.php?down=gastenboek Dit gastenboek heb ik in eerste plaats voor mijzelf gemaakt. Het bestaat o.a. uit een aantal code-snippers die ik geleend heb van verschillende webmastersite's en fora.
mijn-gastenboek
---- index.php ---
[code]<?php
if(!$start) {
$start="0";} else{
$start=$start;}
?>
<html>
<head>
<?php
include("include/config.php");
include("include/style.inc.php");
include("include/functies.inc.php");
?>
<title>Mijn gastenboek</title>
<script type="text/javascript">
// ADDTEXT
function addtext(veld,text)
{
document.gastenboek.elements[veld].value += " "+text+" ";
document.gastenboek.elements[veld].focus();
}
</script>
<script>
function submitonce(theform){
//if IE 4+ or NS 6+
if (document.all||document.getElementById){
//screen thru every element in the form, and hunt down "submit" and "reset"
for (i=0;i<theform.length;i++){
var tempobj=theform.elements[i]
if(tempobj.type.toLowerCase()=="submit"||tempobj.type.toLowerCase()=="reset")
//disable em
tempobj.disabled=true
}
}
}
</script></head><body>
<i><h5>Laat eens iets van je horen ... schrijf ook
iets in ons gastenboek ...</h5><br>
<br>
<?php
include("bekijk.php");
?></p>
<p> </p>
<form method="POST" name="gastenboek" form method="POST" action="voegtoe.php" onSubmit="submitonce(this)">
<div align="center">
<center>
<table border="0" cellpadding="2" width="100%">
<tr>
<td width="19%">Naam:</td>
<td width="81%"><input type="text" name="naam" size="30"></td>
</tr>
<tr>
<td width="19%">E-mail:</td>
<td width="81%"><input type="text" name="email" size="30"></td>
</tr>
<tr>
<td width="19%">Website: (met http://)</td>
<td width="81%"><input type="text" name="website" size="30" value="http://"></td>
</tr>
<tr>
<td width="19%">Lid van onze club:</td>
<td width="81%"><input type="checkbox" name="lid" value="ON">ja</td>
</tr>
<tr>
<td width="19%" valign="top">Jouw bericht:</td>
<td width="81%">
<?php
if ($UBB=="true") {
UBBinc(bericht);
}
?>
<textarea rows="4" name="bericht" cols="40" class="tekstvak"></textarea><br>
<?php
if ($smilie=="true") {
smilieinc(bericht);
}
?>
</td>
</tr>
<tr>
<td width="19%"></td>
<td width="81%"><input type="submit" value="Verzenden" name="B1" class="knop"> <input type="reset" value="Invoer wissen" name="B2" class="knop"></td>
</tr>
</table>
</center>
</div>
</form>
<?php
//copyright
if($Copyrightnr11) {
copyright ();}
?>
</body></html>[/code]
--- voegtoe.php ---
[code]<?php
// Boven aan je pagina
ob_start();
include("include/config.php");
include("include/style.inc.php");
include("include/functies.inc.php");
session_start();
$verlooptijd = 40; //tijd in seconden waarna er weer gepost mag worden
if($_SESSION[tijd] + $verlooptijd > time()){
$wachten = $_SESSION[tijd] + $verlooptijd - time();
echo "U heeft zojuist al een bericht geplaatst, over ".$wachten." seconden kunt u weer posten.";
}
else{
$tijd = time();
session_register("tijd");
$datum=date("d-m-Y @ H:i:s",time());
$id=date("dmyHis",time());
//check lege velden
if (strlen($naam)<2) {
echo "<b>U heeft uw naam (nog) niet ingevuld ...</b><br><br><A href=\"javascript: history.go(-1);\" target=\"_self\"><blockquote>Klik hier om terug te gaan en vult u alsnog uw naam in !!!</blockquote></A>";
}
elseif (strlen($bericht)<3) {
echo "<br><br><b><br>U heeft (nog) geen bericht achtergelaten ...</b></font><br><br><A href=\"javascript: history.go(-1);\" target=\"_self\"><blockquote>Klik hier om terug te gaan en schrijft u alsnog een leuk <img border=\"0\" src=\"img/smile/knipoog.gif\"> bericht !!!</blockquote></a>";
}
else {
//html-tags verwijderen
$naam = strip_tags($naam);
$website = strip_tags($website);
$email = strip_tags($email);
$bericht = strip_tags($bericht);
$bericht = stripslashes($bericht);
//vervangen van de smilies-codes door html codes ...
$bericht=smilie($bericht);
if ($scheldwoorden=="true") {
$bericht = scheldwoorden($bericht);
}
//vervangen van de UBB codes door html codes ...
$bericht=UBB($bericht);
$bericht = nl2br($bericht);
$bericht = eregi_replace("\n", "", $bericht);
//wegschrijven naar een bestand
$logfile = fopen("$bestand","a");
fputs($logfile, $id."||".$datum."||".$email."||".$lid."||".$website."||".$bericht."||".$naam."||\n");
fclose($logfile);
//Mail naar webmaster ter kennisgeving
$recipient = "jouw [email protected]";
$subject = "Nieuw bericht in het gastenboek";
$header = "From: Webmaster\nMime-Version: 1.0\nContent-Type: text/html";
$mail_body ="$naam heeft op $datum, het volgende bericht achtergelaten in het gastenboek:\n\n$bericht";
mail($recipient, $subject, $mail_body, $header);
//Mail naar de schrijver van het bericht
if (!$email=="") {
$recipient = "$email";
$subject = "Bedankt";
$header = "From: Webmaster van deze site\n";
$mail_body = "Beste $naam, bedankt voor jouw berichtje in ons gastenboek.\n\nGroetjes, De webmaster.\n\n";
mail($recipient, $subject, $mail_body, $header);
}
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<meta http-equiv="refresh" content="0;URL=index.php">
<title>::: Ons gastenboek :::</title>
</head>
<body>
</body>
</html>
<?php
} }
// Onder aan je pagina
ob_end_flush();
?>[/code]
--- bekijk.php ---
[code]<center>
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td width="100%">
<?php
$gastenboek=Array();
$gastenboek=file($bestand);
?> <b>Berichten <? echo $start+1; ?> tot en met <? echo min($start+$amount,sizeof($gastenboek)); ?></b><br><i>(Totaal <? echo sizeof($gastenboek); ?> berichten)</i></p>
<hr align="left">
<br>
</td>
</tr>
</table>
</center>
<?php
$gastenboek=array_reverse($gastenboek);
for ($i=$start;$i<$start+$amount && $i<sizeof($gastenboek);$i++) {
list($ID,$datum,$email,$lid,$website,$bericht,$naam)=explode('||',$gastenboek[$i]);
//check of er een website is
if ($website == "") {$link="";}
elseif ($website =="http://") {$link="";}
else {$link= "<a href=\"$website\" target=\"_blank\"><img border=\"0\" src=\"img/home.gif\" alt=\"Bezoek de website van $naam\">";}
//check email met anti-spam
if(ereg( "^[_a-zA-Z0-9-]+(\\.[_a-zA-Z0-9-]+)*@[a-zA-Z0-9-]+(\\.[a-zA-Z0-9-]+)+$", $email)) {
$mail=mijnmail($email);
} else { $mail="";}
//check lidmaatschap
if ($lid == "") {$lid="";}
else {$lid="<img border=\"0\" src=\"img/lid.gif\" alt=\"$naam is lid van onze club\">";}
echo"
<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" width=\"60%\">
<tr>
<td width=\"25%\"><b class=\"vet\">".$naam."</b></td>
<td width=\"40%\">".$link." ". $mail." ". $lid."</td>
</center>
<td width=\"35%\"><i>".$datum."</i></td>
</tr>
<tr>
<td width=\"100%\" colspan=\"3\"><br>".$bericht."<br><br><br></td>
</tr>
<tr>
<td width=\"100%\" colspan=\"3\">
<hr align=\"left\">
</td>
</tr></table>";
}
?>
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td width="100%">
<p align="center">
<?php
if ($start>0) echo '<A href="index.php?start='.max(0,$start-$amount).'"><<<</a></A> ';
$regels = count($gastenboek); if(!$n) { $n = 0; } else { $n = intval($n); }
{ for($i = 0; $i < $regels; $i+=$amount) { if($regels > $i) { echo(" [<a href='index.php?start=$i'>".($i/$amount+1)."</a>]"); } } }
if ($start+$amount<sizeof($gastenboek)) echo ' <A href="index.php?start='.($start+$amount).'">>>></a></A>';
?></td>
</tr>
</table>[/code]
--- include/functies.php ---
[code]<?php
function copyright () {
echo"<br><br><center>Gastenboek Versie 1.2<br>
<a href=\"http://www.nummer11.nl\" target=\"_blank\">
<b>2004 © Nummer11.nl</b>
</center></a>";}
function smilie($tekst) {
$tekst = str_replace(":)","<img src=\"img/smile/lach.gif\" border=\"0\">",$tekst);
$tekst= str_replace(":(","<img src=\"img/smile/boos.gif\" border=\"0\">",$tekst);
$tekst= str_replace(":knipoog:","<img src=\"img/smile/knipoog.gif\" border=\"0\">",$tekst);
$tekst= str_replace(":applaus:","<img src=\"img/smile/klap.gif\" border=\"0\">",$tekst);
$tekst = str_replace(":ik schaam me:","<img src=\"img/smile/schaam.gif\" border=\"0\">",$tekst);
$tekst = str_replace(":stom van me:","<img src=\"img/smile/stom.gif\" border=\"0\">",$tekst);
$tekst = str_replace(":oeps:","<img src=\"img/smile/groen.gif\" border=\"0\">",$tekst);
$tekst = str_replace(":hihi:","<img src=\"img/smile/hihi.gif\" border=\"0\">",$tekst);
return $tekst;
}
function UBB($tekst) {
$tekst = preg_replace("#\[b\](.*?)\[/b\]#si","<b>\\1</b>",$tekst);
$tekst = preg_replace("#\[i\](.*?)\[/i\]#si","<i>\\1</i>", $tekst);
$tekst = preg_replace("#\[u\](.*?)\[/u\]#si","<u>\\1</u>", $tekst);
return $tekst;
}
function scheldwoorden ($tekst) {
$tekst = str_replace("fuck","***",$tekst);
$tekst = str_replace("shit","vervelend",$tekst);
$tekst = str_replace("joden","***",$tekst);
$tekst = str_replace("fucking","***",$tekst);
$tekst = str_replace("cum","***",$tekst);
$tekst = str_replace("klote","***",$tekst);
$tekst = str_replace("pik","eitje",$tekst);
$tekst = str_replace("kut","***",$tekst);
$tekst = str_replace("lul","***",$tekst);
$tekst = str_replace("eikel","ei",$tekst);
$tekst = str_replace("klootzak","***",$tekst);
$tekst = str_replace("homo","***",$tekst);
$tekst = str_replace("asshole","***",$tekst);
$tekst = str_replace("hoer","***",$tekst);
$tekst = str_replace("slet","***",$tekst);
$tekst = str_replace("hoer","***",$tekst);
$tekst = str_replace("teef","***",$tekst);
$tekst = str_replace("bitch","***",$tekst);
$tekst = str_replace("Fuck","***",$tekst);
$tekst = str_replace("Shit","Balen",$tekst);
$tekst = str_replace("Joden","***",$tekst);
$tekst = str_replace("Fucking","***",$tekst);
$tekst= str_replace("Klote","***",$tekst);
$tekst = str_replace("Pik","Eitje",$tekst);
$tekst = str_replace("Kut","***",$tekst);
$tekst = str_replace("Lul","***",$tekst);
$tekst = str_replace("Eikel","Ei",$tekst);
$tekst = str_replace("Klootzak","***",$tekst);
$tekst = str_replace("Homo","***",$tekst);
$tekst = str_replace("Asshole","***",$tekst);
$tekst = str_replace("Slet","***",$tekst);
$tekst = str_replace("Hoer","***",$tekst);
$tekst = str_replace("Teef","***",$tekst);
$tekst = str_replace("Bitch","***",$tekst);
return $tekst;
}
function smilieinc($tekst) {
echo" <a href=\"javascript:addtext('$tekst',':)')\"><img src=\"img/smile/lach.gif\" border=\"0\"></a>
<a href=\"javascript:addtext('$tekst',':oeps:')\"><img src=\"img/smile/groen.gif\" border=\"0\"></a>
<a href=\"javascript:addtext('$tekst',':applaus:')\"><img src=\"img/smile/klap.gif\" border=\"0\"></a>
<a href=\"javascript:addtext('$tekst',':(')\"><img src=\"img/smile/boos.gif\" border=\"0\"></a>
<a href=\"javascript:addtext('$tekst',':stom van me:')\"><img src=\"img/smile/stom.gif\" border=\"0\"></a>
<a href=\"javascript:addtext('$tekst',':ik schaam me:')\"><img src=\"img/smile/schaam.gif\" border=\"0\"></a>
<a href=\"javascript:addtext('$tekst',':hihi:')\"><img src=\"img/smile/hihi.gif\" border=\"0\"></a>
<a href=\"javascript:addtext('$tekst',':knipoog:')\"><img src=\"img/smile/knipoog.gif\" border=\"0\"></a>";
}
function UBBinc($tekst) {
echo"<a href=\"javascript:addtext('$tekst','[b] [/b]')\"><img src=\"img/UBB/Bold.gif\" alt =\"vetgedrukte tekst\" border=\"0\"></a>
<a href=\"javascript:addtext('$tekst','[i] [/i]')\"><img src=\"img/UBB/Italic.gif\" alt =\"schuine tekst\" border=\"0\"></a>
<a href=\"javascript:addtext('$tekst','[u] [/u]')\"><img src=\"img/UBB/Underlined.gif\" alt=\"onderstreepte tekst\" border=\"0\"></a><br>";
}
//anti-spam emailadres
function mijnmail($email_instellingen) {
$email_temp = "";
// van elke character een unicode maken
for ($a = 0 ; $a < strlen($email_instellingen) ; $a++) {
$nr = ord(substr($email_instellingen , $a , 1));
$email_temp .= "&#" . $nr . ";";
}
// splitsen van het email-adres en de eventuele tekst
$email_instelling = explode(";", $email_temp);
// controleren of er tekst is ingevoerd
if (isset($email_instelling[1])) {
$titel = ' title="' . $email_instelling[1] . '"';
$tekst ="<img border=\"0\" src=\"img/email.gif\" alt=\"Stuur $naam een e-mail\">";
}
else {
$titel = '';
$tekst ="<img border=\"0\" src=\"img/email.gif\" alt=\"Stuur $naam een e-mail\">";
}
// de terugkoppeling maken van de link
$mailto = 'mailto:';
return '<a href="' . $mailto . $email_instelling[0] . '"' . $titel . '>' . $tekst . '</a>';
}
?>[/code]
--- include/config.php ---
[code]<?php
//tekst bestand voor de berichten in het gastenboek
$bestand ="berichten.txt";
// Wil je de copyright van Nummer11.nl weergeven?
// true of false
//Plaats je geen copyright, dan
// verzoeken wij je vriendelijk ergens anders op
// jouw site een link naar Nummer11.nl te plaatsen
$Copyrightnr11 ="true";
//aantal berichten per pagina
$amount="7";
//wel of geen smilies
//true is ja --- false is nee
$smilie="true";
//wel of een UBB codes
//true is ja --- false is nee
$UBB="true";
//wel of geen scheldwoordenfiler
//true is ja --- false is nee
$scheldwoorden="true";
//kleur van de horizontale lijn
$hr="#c0c0c0";
$schrijver="#cccccc";
$letter="verdana";
$kleurb="#999999";
$tekstgrootte="8 pt";
?>[/code]
Reacties
0