CONFIG.PHP
-------------
<?php
// variabelen
$sSoortmode = 'DESC'; //waarop de berichten gesorteerd moeten worden
$sEmailadres = ''; //emailadres voor als er een error is
$sTitelGastenboek = "Gastenboek"; //titel gastenboek
$sTabelBreedte = "550"; // tabel breedte van het gastenboek
$sBorderdikte = "0px"; // de border van het gasteboek
$kleurGeenBerichten = "#FFFFFF";
$rDatabaseConnection = mysql_connect ($sDatabaseHost, $sDatabaseGebruiker, $sDatabaseWachtwoord);
mysql_select_db ($sDatabaseNaam);
$sDatabaseGebruiker = ''; // De gebruikersnaam, dus.
$sDatabaseWachtwoord = ''; // Het wachtwoord.
$sDatabaseNaam = ''; // De database naam
$sDatabaseHost = ''; // De database host naam
#### Begin UBB en Smileys code ####
function ubb_smiley ( $bericht )
{
// ubb code
$bericht = preg_replace("/\[B\](?U)((.|\n|\r)*)\[\/B\]/", "<B>\\1</B>", $bericht);
$bericht = preg_replace("/\[U\](?U)((.|\n|\r)*)\[\/U\]/", "<U>\\1</U>", $bericht);
$bericht = preg_replace("/\[I\](?U)((.|\n|\r)*)\[\/I\]/", "<I>\\1</I>", $bericht);
$bericht = preg_replace("/\[S\](?U)((.|\n|\r)*)\[\/S\]/", "<S>\\1</S>", $bericht);
$bericht = eregi_replace("\\[COLOR=([^\\[]*)\\]([^\\[]*)\\[/COLOR\\]","<font color=\"\\1\">\\2</font>",$bericht);
$bericht = eregi_replace("\\[SIZE=([^\\[]*)\\]([^\\[]*)\\[/SIZE\\]","<font size=\"\\1\">\\2</font>",$bericht);
$bericht = eregi_replace("\\[ALIGN=([^\\[]*)\\]([^\\[]*)\\[/ALIGN\\]","<p align=\"\\1\">\\2</p>",$bericht);
$bericht = eregi_replace("\\[EMAIL=([^\\[]*)\\]([^\\[]*)\\[/EMAIL\\]", "<a href=\"mailto:\\1\">\\2</a>",$bericht);
$bericht = eregi_replace("\\[URL=([^\\[]*)\\]([^\\[]*)\\[/URL\\]","<a href=\\1 target=_blank>\\2</a>",$bericht); ;
//Smileys-code
$bericht = str_replace(":o","<img src=\"gastenboekje//smilies/verrast.gif\" alt=''>", $bericht);
$bericht = str_replace(":happy","<img src=\"gastenboekje/smilies/happy.gif\" alt=''>", $bericht);
$bericht = str_replace(":good","<img src=\"gastenboekje/smilies/good.gif\" alt=''>", $bericht);
$bericht = str_replace(":cool","<img src=\"gastenboekje/smilies/cool.gif\" alt=''>", $bericht);
$bericht = str_replace(":lief","<img src=\"gastenboekje/smilies/lief.gif\" alt=''>", $bericht);
$bericht = str_replace(":lol","<img src=\"gastenboekje/smilies/lol.gif\" alt=''>", $bericht);
$bericht = str_replace(":$","<img src=\"gastenboekje/smilies/verlegen.gif\" alt=''>", $bericht);
$bericht = str_replace(":@","<img src=\"gastenboekje/smilies/boos.gif\" alt=''>", $bericht);
$bericht = str_replace(":)","<img src=\"gastenboekje/smilies/glimlach.gif\" alt=''>", $bericht);
$bericht = str_replace(":('","<img src=\"gastenboekje/smilies/huilend.gif\" alt=''>", $bericht);
$bericht = str_replace(";)","<img src=\"gastenboekje/smilies/knipoog.gif\" alt=''>", $bericht);
$bericht = str_replace("8o|","<img src=\"gastenboekje/smilies/ontblote_tanden.gif\" alt='' >", $bericht);
$bericht = str_replace(":D","<img src=\"gastenboekje/smilies/open_mond.gif\" alt=''>", $bericht);
$bericht = str_replace("8-|","<img src=\"gastenboekje/smilies/sukkelig.gif\" alt=''>", $bericht);
$bericht = str_replace(":|","<img src=\"gastenboekje/smilies/teleurgesteld.gif\" alt=''>", $bericht);
$bericht = str_replace(":P", "<img src=\"gastenboekje/smilies/uitstekende_tong.gif\" alt=''>", $bericht);
$bericht = str_replace("(H)", "<img src=\"gastenboekje/smilies/verhit.gif\" alt=''>", $bericht);
// woorden vervangen
$bericht = eregi_replace('tering', 't***ng',$bericht);
$bericht = eregi_replace('neuken', 'n****n',$bericht);
$bericht = eregi_replace('tering', 't***ng',$bericht);
$bericht = eregi_replace('kanker', 'k***er',$bericht);
$bericht = eregi_replace('vagina', 'v****a',$bericht);
$bericht = eregi_replace('tievus', 't****s',$bericht);
$bericht = eregi_replace('tyfus', 't***s',$bericht);
$bericht = eregi_replace('klote', 'k***e',$bericht);
$bericht = eregi_replace('pik', 'p*k',$bericht);
$bericht = eregi_replace('kut', 'k*t',$bericht);
$bericht = eregi_replace('lul', 'l*l',$bericht);
$bericht = eregi_replace('godverdomme', '***********',$bericht);
$bericht = eregi_replace('homo', 'h**o',$bericht);
$bericht = eregi_replace('flikker', 'f*****r',$bericht);
$bericht = eregi_replace('nicht', 'n**ht',$bericht);
$bericht = eregi_replace('hoer', 'h**r',$bericht);
$bericht = eregi_replace('likker', 'l***er',$bericht);
$bericht = eregi_replace('suck', 's**k',$bericht);
$bericht = eregi_replace('fuck', 'f**k',$bericht);
return $bericht;
}
#### Einde UBB en Smileys code ####
### Begin afkorten functie ###
function fBerichtenAfkorten($str, $len=60, $cut="\n") {
$astr = explode(" ", $str);
foreach($astr as $k => $v) {
if(strlen($v) > $len) {
$astr[$k] = wordwrap($v, $len, $cut, 1);
}
}
return implode(" ", $astr);
}
### einde afkorten funcite ###
### Begin highlight functie ###
function highlight ( $bericht )
{
ob_start();
highlight_string ( $bericht );
$bericht = ob_get_contents();
ob_end_clean ( );
return $bericht;
}
### Einde highlight functie ###
// ipadres opvragen
$iIpadres = $_SERVER['REMOTE_ADDR'];
?>
------------------------
GASTENBOEK.PHP
-------------------------
<?php
include ( "config.php" );
// ### Begin navigatie ##
$qNavigatie = 'SELECT COUNT(id) FROM gastenboek';
if ( ! $qNavigatie = mysql_query ( $qNavigatie ) )
{
echo 'De berichten konden niet uit de database worden opgehaald, probeer het later nog eens opnieuw.';
}
else
{ // deze wordt op het einde pas gesloten
$iItemsTotaal = mysql_result ( $qNavigatie, 0 ); // het totaal aantal items
mysql_free_result ( $qNavigatie ); // geef het resultaat vrij
$iItemsPerPagina = 10; // vrij te kiezen
$iAantalPaginas = ceil ( $iItemsTotaal / $iItemsPerPagina); // het aantal items per pagina
// de huidige pagina opvragen
$iHuidigePagina = 0; // default
if ( isset ( $_GET['paginas'] ) && is_numeric ( $_GET['paginas'] ) && $_GET['paginas'] > 0 && $_GET['paginas'] < $iAantalPaginas)
{
$iHuidigePagina = $_GET['paginas'];
}
// items van de huidige pagina ophalen
$offset = $iHuidigePagina * $iItemsPerPagina;
// ### Einde navigatie ##
$qBerichtWeergeven = ' SELECT * FROM gastenboek ORDER BY datum ' . $sSoortmode . ' LIMIT '.$offset.','.$iItemsPerPagina;
if ( ! $rBerichtWeergeven = mysql_query ( $qBerichtWeergeven ) )
{
echo 'De berichten konden niet uit de database worden opgehaald, probeer het later nog eens opnieuw.';
}
else
{
?>
<?php
if ( mysql_num_rows ( $rBerichtWeergeven ) == 0 )
{
?>
<table class="tekst" cellpadding="0" cellspacing="0" bgcolor="<?=$kleurGeenBerichten;?>" class="tekst">
<tr>
<td>
Er bevinden zich nog geen berichten in het gastenboek<p>
<a class="menulink" href="gastenboekje/bericht_toevoegen">In het gastenboek tekenen</a><p>
</td>
</td>
</table>
<?php
}
else
{
?>
<table style="width: 550px; height: 20px; border: 1px solid #969AC0; background-color: #7BA6AD;" cellpadding="0" cellspacing="0" class="tekst">
<tr>
<td>
<< <a class="menulink" href="/?pagina=gastenboekje/bericht_toevoegen">In het gastenboek tekenen</a> >>
</td>
<td align="left">
<?php
// navigatie
for ( $iNavigatie = 0; $iNavigatie < $iAantalPaginas; $iNavigatie++ )
{
if ( $iHuidigePagina == $iNavigatie )
{
// huidige pagina is niet klikbaar
echo '<strong>'. ( $iNavigatie+1 ) .'</strong>';
}
else
{
// een andere pagina dan de huidige is wel klikbaar
echo '<a class="menulink" href="'.$_SERVER['PHP_SELF'].'?pagina=gastenboekje/gastenboek&paginas='.$iNavigatie.'">'. ( $iNavigatie+1 ) .' </a>';
}
// deel-streepje tussen alle items
if ( $iNavigatie < $iAantalPaginas - 1 )
{
echo " - ";
}
}
?>
</td>
<td style="text-align: right;">
<?php
$qGeposteBerichten=mysql_query("SELECT * FROM gastenboek");
$rGeposteBerichten =mysql_num_rows ( $qGeposteBerichten );
if ( $rGeposteBerichten == 1 )
{
echo 'Er is '.$rGeposteBerichten.' bericht geplaatst ';
}
else
{
echo 'Er zijn '.$rGeposteBerichten.' berichten geplaatst ';
}
?>
</td>
</tr>
</table>
<?php
while ( $aBerichtWeergeven = mysql_fetch_assoc ( $rBerichtWeergeven ) )
{
$aBerichtWeergeven['bericht'] = stripslashes($aBerichtWeergeven['bericht']);
$aBerichtWeergeven['bericht'] = highlight($aBerichtWeergeven['bericht']);
$aBerichtWeergeven['bericht'] = ubb_smiley($aBerichtWeergeven['bericht']);
$iKleur++;
if($iKleur == 2)
{
//het getal is oneven!
$sKleur = "#9EBEC3";
$iKleur = 0;
}
else
{
//het getal is even!
$sKleur = "#DBE7E8";
}
?>
<table bgcolor="<?php echo $sKleur; ?>" class="tekst" cellpadding="0" cellspacing="0">
<tr>
<td>
<strong> Gepost door: </strong> <?php echo htmlspecialchars ( $aBerichtWeergeven['naam'] ) ; ?>
</td>
</tr>
<tr>
<td>
<strong> Website </strong> <a class="menulink" href="<?php echo htmlspecialchars ( $aBerichtWeergeven['website'] ) ; ?>" target=_blank><?php echo htmlspecialchars ( $aBerichtWeergeven['website'] ) ; ?></a>
</td>
</tr>
<tr >
<td>
<strong> Email</strong> <a class="menulink" href="mailto:<?php echo $aBerichtWeergeven['email']; ?>"><?php echo htmlspecialchars ( $aBerichtWeergeven['email'] ); ?></a>
</td>
</tr>
<tr>
<td>
<strong> Gepost op:</strong>
<?php
echo $aBerichtWeergeven['datum']; ?>
</td>
</tr>
<tr>
<td > <strong>Bericht:</strong></td>
</tr>
<tr >
<td>
<table width="<?=$sTabelBreedte; ?>" class="tekst">
<tr>
<td>
<?php
echo fBerichtenAfkorten ( $aBerichtWeergeven['bericht'] ) ; //functie wordt gebruikt voor het goed houden van de layout
?>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td>
</td>
</tr>
</table>
<?
}
?>
<p>
<table style="width: 550px; height: 20px; border: 1px solid #969AC0; background-color: #7BA6AD;" cellpadding="0" cellspacing="0" class="tekst">
<tr>
<td>
<< <a class="menulink" href="?pagina=gastenboekje/bericht_toevoegen">In het gastenboek tekenen</a> >>
</td>
<td align="left">
<?php
// navigatie
for ( $iNavigatie = 0; $iNavigatie < $iAantalPaginas; $iNavigatie++ )
{
if ( $iHuidigePagina == $iNavigatie )
{
// huidige pagina is niet klikbaar
echo '<strong>'. ( $iNavigatie+1 ) .'</strong>';
}
else
{
// een andere pagina dan de huidige is wel klikbaar
echo '<a class="menulink" href="'.$_SERVER['PHP_SELF'].'?pagina=gastenboekje/gastenboek&paginas='.$iNavigatie.'">'. ( $iNavigatie+1 ) .' </a>';
}
// deel-streepje tussen alle items
if ( $iNavigatie < $iAantalPaginas - 1 )
{
echo " - ";
}
}
?>
</td>
<td style="text-align: right;">
<?php
$qGeposteBerichten=mysql_query("SELECT * FROM gastenboek");
$rGeposteBerichten =mysql_num_rows ( $qGeposteBerichten );
if ( $rGeposteBerichten == 1 )
{
echo 'Er is '.$rGeposteBerichten.' bericht geplaatst ';
}
else
{
echo 'Er zijn '.$rGeposteBerichten.' berichten geplaatst ';
}
?>
</td>
</tr>
</table>
<?php
} // einde while lus
} // einde else lus
} // einde van de else lus van navigatie
?>
------------------------------
BERICHT_TOEVOEGEN.PHP
-------------------------------
<script language="JavaScript" type="text/javascript" >
//Deze functie hebben we later nodig voor de UBB code
function smiley() {
return;
}
function Invoegen(Smiley) {
var edit;
var HuidigeTekst = document.gastenboek.aBericht.value;
edit = HuidigeTekst+Smiley+" ";
document.gastenboek.aBericht.value=edit;
document.gastenboek.aBericht.focus();
return;
}
</script>
<table cellpadding="0" cellspacing="0">
<tr>
<td class="tekst">
Hier kunt u een bericht toevoegen aan het gastenboek!.<p>
</td>
</tr>
<tr>
<td>
<?php
include ( 'config.php' );
if ( $_SERVER ['REQUEST_METHOD'] != 'POST' )
{
?> <form method="post" action="http://www.scriptguru.nl/?pagina=gastenboekje/bericht_toevoegen" name="gastenboek">
<table style="border: 1px solid #969AC0; width: 550;" class="tekst" cellpadding="0" cellspacing="0">
<tr style="background-color: #9EBEC3; height:40px;">
<td class="linksform" style="width: 140px;">
<img src="images/naam.gif" alt=""> Naam:
</td>
<td><input class="textvak" type="text" name="aNaam" size="20" maxlength="40"></td>
</tr>
<tr style="background-color: #DBE7E8; height:40px;">
<td class="linksform">
<img src="images/website.gif" alt=""> Website:
</td>
<td><input class="textvak" type="text" name="aWebsite" size="20" maxlength="40"></td>
</tr>
<tr style="background-color: #9EBEC3; height:40px;"">
<td class="linksform">
<img src="images/naam.gif" alt=""> E-mail adres:
</td>
<td><input class="textvak" type="text" name="aMail" size="20" maxlength="40"></td>
</tr>
<tr style="background-color: #DBE7E8; height:40px;"">
<td><!-- om de smilies en ubb op de goede plaatst te houden --> </td>
<td colspan="2">
<!-- UBB en SMILIES -->
<table cellspacing="0" cellpadding="0">
<tr>
<td colspan="4">
<input class="button" type="button" name="b" value="B" style="font-weight: bold; width: 30px;" onClick="javascript:Invoegen('[B]...[/B]');">
<input class="button" type="button" name="u" value="U" style="text-decoration: underline; width: 30px;" onClick="javascript:Invoegen('[U]...[/U]');">
<input class="button" type="button" name="i" value="I" style="font-style: italic; width: 30px;" onClick="javascript:Invoegen('[I]...[/I]');">
<input class="button" type="button" name="s" value="S" style="text-decoration: line-through; width: 30px;" onClick="javascript:Invoegen('[S]...[/S]');">
<input class="button" type="button" name="color" value="Kleur" onClick="javascript:Invoegen('[COLOR=...]...[/COLOR]');">
<input class="button" type="button" name="size" value="Grootte" onClick="javascript:Invoegen('[SIZE=...]...[/SIZE]');">
</td>
</tr>
<tr>
<td style="height: 3px;">
</td>
</tr>
</table>
<!-- EINDE UBB en SMILIES -->
</td>
</tr>
<tr style="background-color: #9EBEC3;">
<td class="linksform" style="vertical-align: top;">
<img src="images/bericht.gif" alt=""> Opmerking: </td>
<td >
<textarea class="textvak" cols="20" rows="10" name="aBericht"></textarea>
</td>
</tr>
<tr><td></td>
<td colspan="2">
<a href="javascript:smiley();" onClick="javascript:Invoegen(':)');"><img src="gastenboekje/smilies/glimlach.gif" width="20" height="20" alt=""></a>
<a href="javascript:smiley();" onClick="javascript:Invoegen(':('');"><img src="gastenboekje/smilies/huilend.gif" width="20" height="20" alt=""></a>
<a href="javascript:smiley();" onClick="javascript:Invoegen(';)');"><img src="gastenboekje/smilies/knipoog.gif" width="20" height="20" alt=""></a>
<a href="javascript:smiley();" onClick="javascript:Invoegen('8o|');"><img src="gastenboekje/smilies/ontblote_tanden.gif" width="20" height="20" alt=""></a>
<a href="javascript:smiley();" onClick="javascript:Invoegen(':D');"><img src="gastenboekje/smilies/open_mond.gif" width="20" height="20" alt=""></a>
<a href="javascript:smiley();" onClick="javascript:Invoegen('8-|');"><img src="gastenboekje/smilies/sukkelig.gif" width="20" height="20" alt=""></a>
<a href="javascript:smiley();" onClick="javascript:Invoegen(':|');"><img src="gastenboekje/smilies/teleurgesteld.gif" width="20" height="20" alt=""></a>
<a href="javascript:smiley();" onClick="javascript:Invoegen(':P');"><img src="gastenboekje/smilies/uitstekende_tong.gif" width="20" height="20" alt=""></a>
<a href="javascript:smiley();" onClick="javascript:Invoegen('(H)');"><img src="gastenboekje/smilies/verhit.gif" width="20" height="20" alt=""></a>
<a href="javascript:smiley();" onClick="javascript:Invoegen(':o');"><img src="gastenboekje/smilies/verrast.gif" width="20" alt="" ></a>
<a href="javascript:smiley();" onClick="javascript:Invoegen(':good');"><img src="gastenboekje/smilies/good.gif" width="20" height="20" alt="" ></a>
<a href="javascript:smiley();" onClick="javascript:Invoegen(':cool');"><img src="gastenboekje/smilies/cool.gif" width="20" height="20" alt="" ></a>
<a href="javascript:smiley();" onClick="javascript:Invoegen(':lief');"><img src="gastenboekje/smilies/lief.gif" width="20" height="20" alt=""></a>
<a href="javascript:smiley();" onClick="javascript:Invoegen(':lol');"><img src="gastenboekje/smilies/lol.gif" width="20" height="20" alt=""></a>
<a href="javascript:smiley();" onClick="javascript:Invoegen(':$');"><img src="gastenboekje/smilies/verlegen.gif" width="20" height="20" alt=""></a>
<a href="javascript:smiley();" onClick="javascript:Invoegen(':@');"><img src="gastenboekje/smilies/boos.gif" width="20" height="20" alt=""></a>
</td>
<tr style="background-color: #9EBEC3; height:20px;"">
<td style="width: 50px;"> </td>
<td> <input class="button" type="submit" value="Post bericht!" /> </td>
</tr>
</table>
</form>
<?php
}
else
{
$sFouten = array();
if ( empty ( $_POST['aNaam'] ) )
{
$sFouten [] = 'U heeft uw naam niet ingevult';
}
elseif ( empty ( $_POST['aWebsite'] ) )
{
$sFouten [] = 'Uw heeft uw website niet ingevult';
}
elseif(empty($_POST['aMail']) || !eregi('@',$_POST['aMail']) || !eregi('.',$_POST['aMail']) || eregi(' ',$_POST['aMail']))
{
$sFouten[] = 'Uw heeft uw <b>emailadres</b> niet ingevult';
}
elseif ( empty ( $_POST['aBericht'] ) )
{
$sFouten [] = 'Zonder bericht heeft het weinig nut om in het gastenboel te schrijven of niet?';
}
if ( count ( $sFouten ) == 0 )
{
$qBerichtInvoeren = "INSERT INTO gastenboek ( naam, website, email, bericht, datum, ipadres )
VALUES ( '" . addslashes($_POST['aNaam']) . "',
'" . addslashes($_POST['aWebsite']) . "',
'" . addslashes($_POST['aMail']) . "',
'" . addslashes($_POST['aBericht']) . "',
NOW(),
'" . $iIpadres . "'
)";
if (!mysql_query ( $qBerichtInvoeren ))
{
echo '<span class="tekst">Het bericht is niet toegevoegd aan de database. Neem contact op met met de <a class="menulink" href = "mailto: '.$sEmailadres.'">webmaster</a></span>';
}
else
{
?>
Het bericht is toegevoegd aan het gastenboek
U wordt door verwezen naar het gastenboek <meta http-equiv="refresh" content= "0; url='http://www.leentjesweb.nl/?pagina=gastenboekje/gastenboek'" >
<?php
}
}
else
{
for ($i = 0; $i < count ( $sFouten ); $i++)
{
?>
<table style="border: 1px solid #969AC0; width: 550;" class="tekst" cellpadding="0" cellspacing="0">
<tr>
<td class="tekst" style="vertical-align: middle">
<img src="images/uitroepteken_foutmelding_reacties.gif" alt="">
</td>
<td>
<?=$sFouten[$i];?>, ga <a href="javascript:history.back()">terug naar het formulier.</a>
</td>
</tr>
</table>
<?php
}
}
}
?>
</td>
</tr>
</table>