Hey cp,
Ik heb een gastenboek script, die alleen je naam weergeeft als je iets zegt. Nou wil ik het zo maken dat als bijvoorbeeld je status -> 18 dat er dan naast je naam (Admin) komt te staan, en als dat bijvoorbeeld -> 1 is, dat er dan (lid) komt te staan.
Hoe doe ik dit? Dit is het stukje PHP code:
PHP
<?php
error_reporting(E_ALL);
// UBB aanmaken
function ubb($string) {
$string = htmlspecialchars($string); // Beveiligen voor XSS injection
$string = stripslashes($string); // Slashes verwijderen
$string = nl2br($string); // Zorgen dat er meerdere regels gebruikt kunnen worden
$string = preg_replace("#\[b\](.+?)\[/b\]#is", "<b>\\1</b>", $string); // [b][/b] => <b></b>
$string = preg_replace("#\[i\](.+?)\[/i\]#is", "<i>\\1</i>", $string); // [i][/i] => <i></i>
$string = preg_replace("#\[u\](.+?)\[/u\]#is", "<u>\\1</u>", $string); // [u][/u] => <u></u>
$string = preg_replace("#\[s\](.+?)\[/s\]#is", "<s>\\1</s>", $string); // [s][/s] => <s></s>
return $string;
}
$dagen = Array("zondag", "maandag", "dinsdag", "woensdag", "donderdag", "vrijdag", "zaterdag");
?>
<?php
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
// Als er een veld niet ingevuld is
if (empty($_POST['bericht'])) {
echo '<span style="color:red; font-weight: bold">Je hebt niet alle velden ingevuld!</span>';
} elseif (strlen($_POST['bericht']) > 500) {
echo '<span style="color:red; font-weight: bold">De ingevulde velden hebben te veel karakters bericht maximaal 500</span>';
} elseif ($_POST['dag'] != $dagen[date('w')]) {
echo '<span style="color:red; font-weight: bold">De ingevulde dagnaam klopt niet!</span>';
} else {
// Als alle velden ingevuld zijn wordt het bericht gefilterd toegevoegd
$sql = mysql_query("SELECT `gebruikersnaam` FROM `gebruikers` WHERE id =".$_SESSION['gebruiker']);
$res = mysql_fetch_assoc($sql);
$naam = $res['gebruikersnaam'];
if (mysql_query("INSERT INTO gastenboek (naam, bericht, datum, ip) VALUES ('".$naam."', '".trim(mysql_real_escape_string($_POST['bericht']))."', NOW(), '".mysql_real_escape_string($_SERVER['REMOTE_ADDR'])."')")) {
echo '<span style="color:green; font-weight: bold"Je reactie is succesvol toegevoegd!</span>';
} else {
echo '<span style="color:green; font-weight: bold">Er is iets fout gegaan en je reactie is niet toegevoegd. Probeer het later opnieuw.</span>';
}
}
}
?>
<a href="gastenboek.php#2" target="_self">Plaats een bericht</a><br><br />
<?php
// Gegevens ophalen uit de database en sorteren op id
$sql = mysql_query("SELECT * FROM gastenboek ORDER BY datum DESC");
if (mysql_num_rows($sql) == 0) {
// Als er nog geen reacties geplaatst zijn
echo 'We hebben nog geen reacties!';
} else {
while($data = mysql_fetch_assoc($sql)) {
// Als er wel reacties zijn geplaatst worden deze nu weergegeven
echo '
<table><tr>
<td class="comment_td">
<p style="text-transform:capitalize;"><b>'.htmlspecialchars(stripslashes($data['naam'])).'</b></p>
<p>'.ubb($data['bericht']).'</p>
<p><i>'.htmlspecialchars(stripslashes($data['datum'])).'</i></p></td>
</tr><hr />';
?> </table> <?
}
}
?><br>
<h1><a name="2">Reactie plaatsen</a></h1>
<? if(isset($_SESSION['gebruiker'])) { ?>
<form method="post" action=""><p>
Welke dag is het vandaag:<br />
<input type="text" name="dag" /><br /><br />
Bericht: (maximaal 500 karakters)<br />
<textarea name="bericht" id="tekst" rows="6" cols="37"></textarea><br /><br />
<input type="submit" value="Toevoegen" onClick="this.value='Reactie wordt geplaatst...';" /> <input type="reset" value="Herstel" />
</p></form>
<p> <?
} else {
echo 'Je bent niet ingelogged, klik <a href="index.php">hier</a> om dit te doen.<br><br><br>';
}
?>
Toon Meer
Kan iemand mij helpen? Ik weet echt niet hoe het moet.
groetjes,