Ik heb heb een shoutbox script gekregen, maar als een bericht wordt gepost, post hij onderaan terwijl ik wil dat de nieuwe berichten bovenaan staan. Dit is het script:
<?php
if(isset($_POST['verstuurformulier']))
{
if(isset($_POST['naam']) && isset($_POST['bericht']))
{
$naam = htmlspecialchars($_POST['naam']);
$bericht = nl2br(htmlspecialchars($_POST['bericht']));
$content = '<b>'.$naam.'</b><br>'.$bericht.'<br>';
}else{
echo 'Je moet wel alles invullen!';
exit;
}
$bestand = 'shout.txt';
if(is_writable($bestand))
{
if(!$handeling = fopen($bestand, 'a'))
{
echo 'Error<br />
er is iets mis gegaan';
exit;
}
if(fwrite($handeling, $content) === FALSE)
{
echo 'Error<br />
er is iets mis gegaan';
exit;
}
echo 'Je shout is toegevoegd';
fclose($handeling);
}else{
echo "Het bestand is niet beschrijfbaar!";
}
}else{
?>
Of je bent een vent en maakt een connectie met een database. Overzichterlijker, sneller, veiliger, efficienter en je kan er dan veel meer mee.
Wat dat met 'vent zijn' te maken heeft weet ik niet. Misschien is ie juist een vent omdat ie het nog met de veel lastigere methode doet, een file. Of misschien heeft ie wel geen database.
A door r+ vervangen helpt niet, Hierdoor wordt het oude bericht vervangen door een nieuw bericht.
Weet je het zeker?
php.net
r+' Openen voor lezen en schrijven; plaats de bestands pointer aan het begin van het bestand.
php.net
w+' Openen voor lezen en schrijven; plaats de bestands pointer aan het begin van het bestand en maak het bestand 0 bytes lang. Als het bestand niet bestaat, probeer het aan te maken.
Zoals ik het lees zou r+ moeten werken, en zou w+ moeten doen, wat jij zegt...