# Gepost op 19-01-2010 22:33
Bewerkt door Ricardo op 19-01-2010 22:59
Bewerkt door Ricardo op 19-01-2010 22:59
Zojuist heb ik even een simpel gastenboekje in elkaar geflanst.
Misschien heeft iemand er wat aan. Het is nog erg simpel en er zit dus ook geen/weinig beveiliging op, maar je kunt zelf de CAPTCHA implementeren.
Dit is de index.php waarop dus alle berichten getoont worden
Dit is dus de config-file hier moet je alles naar wens instellen
Nu wordt het tijd voor een van de belangrijkste (lees:belangrijkste) bestand.
Zo en dan heb je dus een simpel gastenboek!
Het is nog zo standaard dat het er niet echt optimaal uit ziet, dit is gemakkelijk aan te passen
Downloaden: ZIP | TAR.GZ
Groeten,
Ricardo
Misschien heeft iemand er wat aan. Het is nog erg simpel en er zit dus ook geen/weinig beveiliging op, maar je kunt zelf de CAPTCHA implementeren.

Inhoudsopgave
MySQL
- CREATE TABLE IF NOT EXISTS `reacties` (
- `ID` int(1) NOT NULL AUTO_INCREMENT,
- `onderwerp` text NOT NULL,
- `naam` text NOT NULL,
- `email` text NOT NULL,
- `inhoud` longtext NOT NULL,
- `datum` date NOT NULL,
- `ip` text NOT NULL,
- PRIMARY KEY (`ID`),
- UNIQUE KEY `ID` (`ID`)
- ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=5 ;INSERT INTO `reacties` (`ID`, `onderwerp`, `naam`, `email`, `inhoud`, `datum`, `ip`) VALUES
- (1, 'Succesvol geinstalleerd!', 'Mr. Gastenboek', 'geen@adres.nl', 'Als je dit ziet dan heb je succesvol je eigen gastenboek opgezet!, ik hoop dat je er veel plezier mee hebt!', '0000-00-00', '127.0.0.1');
index.php
Dit is de index.php waarop dus alle berichten getoont worden
- <?php
- include('includes/config.php');
- include('includes/gastenboek.class.php');
- if($_POST['submit']){
- print $gastenboek->reageer();
- }
- else{
- ?>
- <form action="index.php?actie=reageer" method="post" accept-charset="iso-8859-1">
- <p>
- De gegevens die u via het volgende formulier invult, worden op het gastenboek geplaatst en zullen voor iedereen zichtbaar zijn behalve als er bij vermeld wordt dat dit niet het geval is.
- </p>
- <p>
- Naam: <br>
- <input name="naam" type="text" size="40" tabindex="1000">
- </p>
- <p>
- E-mail: (niet vertoond)<br>
- <input name="email" type="text" size="40" tabindex="1001">
- </p>
- <p>
- Onderwerp:<br>
- <input name="onderwerp" type="text" size="40" tabindex="1003">
- </p>
- <p>
- Uw bericht: <br>
- <textarea name="bericht" rows="8" cols="40" tabindex="1004"></textarea>
- </p>
- <p>
- <input type="submit" name="submit" value="Verstuur" title="Verstuur dit formulier" tabindex="1005">
- </p>
- <?
- }
- }
- else{
- print $gastenboek->laadreacties();
- echo "<br /><a href=?actie=reageer>Reageren in dit gastenboek</a>";
- }
- ?>
includes/config.php
Dit is dus de config-file hier moet je alles naar wens instellen
- <?php
- # De mysql host, waar je database op draait. Is meestal localhost
- # De mysql gebruikersnaam. Is meestal niet root
- # Het mysql wachtwoord, is eigenlijk nooit leeg
- # De tabel waar het systeem op draait. Als je de SQL niet hebt uitgevoerd moet je deze aanpassen
- # IP van de eigenaar, als je dit instelt dan kan je de e-mail en ip van degene die de bericht heeft geplaatst bewonderen
- ?>
includes/gastenboek.class.php
Nu wordt het tijd voor een van de belangrijkste (lees:belangrijkste) bestand.
- <?php
- class gastenboek{
- public function __construct(){
- #Laten we een verbinding maken
- }
- function laadreacties(){
- #En nu een query om maar is wat reacties uit de database te trekken
- ?>
- <table class="tabel" width="500">
- <tr class="naam">
- <td>Naam:</td>
- <td><?php echo $row['naam']; ?></td>
- </tr>
- <tr class="onderwerp">
- <td>Onderwerp:</td>
- <td><?php echo $row['onderwerp']; ?></td>
- </tr>
- <?php
- if($_SERVER['REMOTE_ADDR'] == owner_ip){
- ?>
- <tr class="email">
- <td>E-mail:</td>
- <td><?php echo $row['email']; ?></td>
- </tr>
- <tr class="ip">
- <td>IP:</td>
- <td><?php echo $row['ip']; ?></td>
- </tr>
- <?php
- }
- ?>
- <tr class="datum">
- <td>Geplaatst op:</td>
- <td><?php echo $row['datum']; ?></td>
- </tr>
- <tr class="inhoud">
- <td><?php echo $row['inhoud']; ?></td>
- </tr>
- </table><br /><br />
- <?
- }
- }
- function reageer(){
- #alle $_POST's in een mysql_real_escape_string zetten
- $ip = $_SERVER['REMOTE_ADDR'];
- #query maken
- $sql = "insert INTO reacties (
- onderwerp,
- naam,
- email,
- inhoud,
- datum,
- ip
- ) VALUES(
- '$onderwerp',
- '$naam',
- '$email',
- '$bericht',
- CURDATE(),
- '$ip'
- )";
- echo "<p>Uw bericht is geplaatst, <a href=index.php>ga terug</a></p>";
- }
- }
- $gastenboek = new gastenboek();
- ?>
Zo en dan heb je dus een simpel gastenboek!
Het is nog zo standaard dat het er niet echt optimaal uit ziet, dit is gemakkelijk aan te passen
Downloaden: ZIP | TAR.GZ
Groeten,
Ricardo