Ik heb een gastenboek in elkaar geprobeerd te zetten.
Nu geeft hij echter geen foutmeldingen meer, maar hij slaat de berichten die worden geplaatst niet op. Het lijkt alsof hij deze niet wegschrijfd. Ik zat te denken dat ik misschien de functie fwrite mis. Maar weet ook niet goed waar of dat ik deze zou moeten plaatsen.
Ook zou ik graag captcha erin willen hebben. Ook hierbij heb ik eigenlijk geen idee hoe ik deze in zou moeten bouwen.
Kan iemand mij helpen????
hier is de php code
<?php
$commentaar=$_POST["commentaar"];
$naam=$_POST["naam"];
$email=$_POST["email"];
echo "<h2>Gastenboek van De Mikkies</h2>\n";
echo "<form action=\"$_SERVER[PHP_SELF]\" method=\"post\">\n";
echo "<p>Uw naam: <input type=\"text\" name=\"naam\"></p>\n";
echo "<p>Uw emailadres: <input type=\"text\" name=\"email\"></p>\n";
echo "<p>Uw bericht:</p>\n";
echo "<textarea cols=\"55\" rows=\"5\" wrap=\"soft\" name=\"bericht\"></textarea><br>\n";
echo "<p><input type=\"submit\" value=\"Verzenden\"></p>\n";
echo "<hr>\n";
echo "<p><h2>Berichten die zijn geschreven in het gastenboek van De Mikkies:</h2></p>\n";
$tekstbestand="berichten.txt";
if (isset($commentaar) && naam !="" && email !="") {
$pointer=fopen($tekstbestand,"r+");
$oudcommentaar=fread($pointer,filesize($tekstbestand));
$email="<a href=\"mailto:$email\">#email</a>";
$date=dat("j.n.Y");
$commentaar=htmlspecialchars($commentaar);
$commentaar=stripslashes(nl2br($commentaar));
$geschreven="<p><strong>$naam</strong> ($email) heeft geschreven op <i>$date</i>:
<br><br>$commentaar</p><hr>\n";
rewind($pointer);
fputs($pointer,"$geschreven\n$oudcommentaar\n");
}
readfile($tekstbestand)
?>
In dit deel bestaat de $_POSt variabele nog niet eens, en daarbij is het ook zinloos om deze in een losse variabele op te slaan, zonder er een enige bewerking over uit te voeren.
$_POST variabelen zijn pas bekend als je iets hebt verstuurd, dus gebruik
if($_SERVER['REQUEST_METHOD']=="POST"), waarmee je dan pas controleert of het formulier verstuurd is.
In dit deel bestaat de $_POSt variabele nog niet eens, en daarbij is het ook zinloos om deze in een losse variabele op te slaan, zonder er een enige bewerking over uit te voeren.
$_POST variabelen zijn pas bekend als je iets hebt verstuurd, dus gebruik
if($_SERVER['REQUEST_METHOD']=="POST"), waarna je dan pas controleert of het formulier verstuurd is.
Dus ik moet dit helemaal vervangen door dit?
$commentaar=$_POST["commentaar"];
$naam=$_POST["naam"];
$email=$_POST["email"];