Ben net begonnen met php, wil graag een gastenboek maken waar er nieuwtjes gepost kunnen worden en dat die op iedere pagina in een div te zien zijn.
Heb een simpel script gevonden voor het gastenboek, wanneer ik het form invul word het niet weer gegeven.
Als je wil ...
Dit is een gastenboek, met een bestand.
"gasten.htm" eerst aanmaken (leeg is goed) !
Je kan je voorstellen dat een database interessanter is; het biedt veel meer mogelijkheden.
Maar ik denk dat dit wel functioneert.
Er is geen bescrerming tegen spam; geen "edit" of "delete" knop ...
<?php
$file = 'gasten.htm'; // file waar de records worden geschreven/gelezen. Maak deze file eerst aan!
$messages = file_get_contents($file);
if ($_SERVER['REQUEST_METHOD'] == 'POST'
&& isset($_POST['username'], $_POST['email'], $_POST['message'])
) {
$now = date_create('now'); // genereert een datetime object
$record = '
<div class="record">
<span class="username">' . htmlentities($_POST['username']) . '</span>
<span class="email">' . htmlentities($_POST['email']) . '</span>
<span class="time">' . $now->format('d/m/Y H:i:s') . '</span>
<div class="message">' . nl2br(htmlentities($_POST['message'])) . '</div>
</div>';
file_put_contents(
$file,
$messages . $record // ofwel zet je $record voor $messages
);
// we willen niet dat de POST actief blijft. Hiervoor hebben we header('location...')
header('location: index.php'); //naar de juiste plaats sturen ...
}
?>
<html>
<head>
<style>
.record {
border: 1px solid grey;
margin: 2px;
padding: 3px;
}
</style>
</head>
<body>
<form action="" method="post">
<input name="username"> Naam <br>
<input name="email"> e-mail <br>
<textarea name="message"></textarea> <br>
<input type="submit" value="GO">
</form>
<div id="messages"><?php echo $messages; ?></div>
</body>
</html>
... en uiteraard verder stylen. Voel je ook vrij om de HTML anders in te delen.
Als je wil ...
Dit is een gastenboek, met een bestand.
"gasten.htm" eerst aanmaken (leeg is goed) !
Je kan je voorstellen dat een database interessanter is; het biedt veel meer mogelijkheden.
Maar ik denk dat dit wel functioneert.
Er is geen bescrerming tegen spam; geen "edit" of "delete" knop ...
... en uiteraard verder stylen. Voel je ook vrij om de HTML anders in te delen.
Dankje Kris! Ik zit zelf steeds meer te twijfelen wat ik het beste kan doen! De site is nl. niet voor mij en iemand moet dit makkelijk kunnen onderhouden (die totaal geen verstand hier van heeft) Heb jij evt nog een idee hierover?