# schrijven.php [aangepast!!!]
// Query om gegevens te selecteren voor in het xml document
$write2xmlQ = "SELECT * FROM gastenboek ORDER BY id DESC LIMIT 0,5";
?>
<script language="JavaScript">
//Deze functie hebben we later nodig voor de UBB code
function smiley() {
return;
}
function Invoegen(Smiley) {
var edit;
var HuidigeTekst = document.gastenboek.bericht.value;
edit = HuidigeTekst+Smiley+" ";
document.gastenboek.bericht.value=edit;
document.gastenboek.bericht.focus();
return;
}
</script>
<?php
include('config.php'); // De config includen voor MySQL gegevens en opmaak van de gastenboek
include('xml.php'); // De extra functie voor het aanmaken van een .xml file op je server includeren
//Als men op Submit gedrukt heeft
if ($_POST['Submit']) {
//Deze functie gebruiken we later om te checken of het e-mailadres wel
//bestaat zodat mensen geen fake e-mailadres kunnen ingeven
function check_email($address) {
$pattern_local = "^([0-9a-z]*([-|_]?[0-9a-z]+)*)(([-|_]?)\.([-|_]?)[0-9a-z]*([-|_]?[0-9a-z]+)+)*([-|_]?)$";
$pattern_host = "^([0-9a-z]+([-]?[0-9a-z]+)*)(([-]?)\.([-]?)[0-9a-z]*([-]?[0-9a-z]+)+)*\.[a-z]{2,4}$";
$match_local = eregi($pattern_local, $local); $match_host = eregi($pattern_host, $host);
if($match_local && $match_host) {
return 1;
} else {
return 0;
}
}
//We gaan controleren of alle velden zijn ingevuld en dat e-mailadres bestaat
//Ook checken we of dat de gebruiker al een bericht heeft gepost om Spam te vermijden
if (!trim($_POST['naam'])) $error="Je moet je naam invullen";
elseif(!check_email($_POST['emailadres']))
$error="Je moet een geldig e-mailadres invullen";
elseif (!trim($_POST['bericht'])) $error="Je moet een bericht invullen";
elseif ($_COOKIE[Gastenboek] == "1") {
$error="Je kan geen bericht posten omdat je er al �n hebt gepost";
}
//Als er een veld niet is ingevuld of wanneer het e-mailadres niet bestaat komt er een error
if ($error != "") {
<center>
<table class=\"gastenboek\" width=\"100%\" border=\"1\" cellspacing=\"0\" cellpadding=\"2\">
<tr>
<td align=\"center\">
<b>$error</b>
<br>
<form method=\"post\" action=\"javascript:history.go(-1)\">
<input type=\"submit\" name=\"Terug\" value=\"Terug\">
</form>
</td>
</tr>
</table>
</center>";
//Als alles correct is ingevuld gaan we over naar het posten van de gegevens naar de database
} else {
//De datum en de tijd maken we aan door de functie date()
//We maken een query en voeren die uit door mysql_query()
$query="INSERT INTO gastenboek (naam, emailadres, website, bericht, datum, tijd)
VALUES ('$_POST[naam]', '$_POST[emailadres]', '$_POST[website]', '$_POST[bericht]', '$datum', '$tijd')";
//Om SPAM te vermijden maken we een COOKIE (zie config)
// Met deze functie word de inhoud van je database naar een .xml bestand geschreven.
// de variabele $write2xmlQ moet een select query zijn, deze bepaald het aantal records
// en de volgorde wat naar je .xml file geschreven word.
xml_write($write2xmlQ, './xmlfile/');
//Na het verzenden sturen we de gebruiker terug naar het gastenboek
header ("location: lezen.php");
}
//Als men nog niet op Submit gedrukt heeft krijgt men natuurlijk het formulier te zien
} else {
?>
<center>
<form name="gastenboek" action="" method="post">
<table class="gastenboek" width="100%" border="1" cellspacing="0" cellpadding="2">
<tr>
<td height="20" colspan="2"><strong>Bericht posten in het gastenboek:</strong></td>
</tr>
<tr>
<td width="44%">Naam:</td>
<td width="56%">
<input name="naam" type="text" id="naam" size="30" maxlength="50">
</td>
</tr>
<tr>
<td>Website:</td>
<td>
<input name="website" type="text" id="website" value="http://" size="30" maxlength="50">
<br>
<font color="#FF0000">(<strong>niets invullen</strong> als je<strong> geen website</strong> hebt)</font>
</td>
</tr>
<tr>
<td>E-mail adres:</td>
<td>
<input name="emailadres" type="text" id="emailadres" size="30" maxlength="50">
</td>
</tr>
<tr>
<td align="center" colspan="2">Bericht:</td>
</tr>
<tr>
<td align="center" colspan="2">
<table width="27%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td align="center" height="21" colspan="4"><small><i><b>Ubb-code:</b></i></small>
</td>
</tr>
<tr>
<td align="center" height="27" colspan="4">
<input type="button" name="b" value="B" style="font-weight: bold; width: 30px;" onClick="javascript:Invoegen('[B]...[/B]');">
<input type="button" name="u" value="U" style="text-decoration: underline; width: 30px;" onClick="javascript:Invoegen('[U]...[/U]');">
<input type="button" name="i" value="I" style="font-style: italic; width: 30px;" onClick="javascript:Invoegen('[I]...[/I]');">
<input type="button" name="s" value="S" style="text-decoration: line-through; width: 30px;" onClick="javascript:Invoegen('[S]...[/S]');">
<input type="button" name="url" value="http://" onClick="javascript:Invoegen('[URL=http://...]...[/URL]');">
</td>
</tr>
<tr>
<td align="center" height="21" colspan="4">
<input type="button" name="align" value="Align" onClick="javascript:Invoegen('[ALIGN=...]...[/ALIGN]');">
<input type="button" name="color" value="Kleur" onClick="javascript:Invoegen('[COLOR=...]...[/COLOR]');">
<input type="button" name="size" value="Grootte" onClick="javascript:Invoegen('[SIZE=...]...[/SIZE]');">
<input type="button" name="e-mail" value="E-mail" onClick="javascript:Invoegen('[EMAIL=...]...[/EMAIL]');">
</td>
</tr>
<tr>
<td align="center" height="21" colspan="4"><small><i><b>Smileys:</b></i></small></td>
</tr>
<tr>
<td height="41" width="24%" valign="middle" align="center"><a href="javascript:smiley();" onClick="javascript:Invoegen(':)');"><img src="smileys/blij.gif" width="20" border="0"></a></td>
<td height="41" width="24%" align="center" valign="middle"><a href="javascript:smiley();" onClick="javascript:Invoegen(':D');"><img src="smileys/tanden.gif" width="20" height="20" border="0"></a></td>
<td height="41" width="23%" valign="middle" align="center"><a href="javascript:smiley();" onClick="javascript:Invoegen(':P');"><img src="smileys/tong.gif" width="20" height="20" border="0"></a></td>
<td height="41" width="29%" valign="middle" align="center"><a href="javascript:smiley();" onClick="javascript:Invoegen(';)');"><img src="smileys/knipoog.gif" width="20" height="20" border="0"></a></td>
</tr>
<tr>
<td height="36" width="24%" valign="middle" align="center"><a href="javascript:smiley();" onClick="javascript:Invoegen(':cool:');"><img src="smileys/cool.gif" width="20" height="20" border="0"></a></td>
<td height="36" width="24%" align="center" valign="middle"><a href="javascript:smiley();" onClick="javascript:Invoegen(':s');"><img src="smileys/verward.gif" width="20" height="20" border="0"></a></td>
<td height="36" width="23%" valign="middle" align="center"><a href="javascript:smiley();" onClick="javascript:Invoegen(':omg:');"><img src="smileys/omg.gif" width="20" height="20" border="0"></a></td>
<td height="36" width="29%" valign="middle" align="center"><a href="javascript:smiley();" onClick="javascript:Invoegen(':(');"><img src="smileys/droevig.gif" width="20" height="20" border="0"></a></td>
</tr>
</table>
<br>
<textarea name="bericht" cols="50" rows="10" id="bericht"></textarea><br>
</td>
</tr>
<tr>
<td height="25" colspan="2" align="center">
<input type="submit" name="Submit" value="Verzenden">
<input name="Reset" type="submit" id="Reset" value="Opnieuw">
</td>
</tr>
</table>
</form>
</center>
<?php } ?>