Seuraavanlainen vieraskirja käytössä:
viestin kirjoitus:
<form action="vieraskirja.php" method="post"> Nimesi: <input name="nimi"><br> Viestisi: <input name="viesti" size="50"><br> <input type="submit" value=" Jätä viesti "> </form>
viestin talletus:
<?php if ($viesti != '') { $uusirivi = '<p><b>' . date('d.m.Y H:i') . ', ' . strip_tags($nimi) . '</b>: ' . strip_tags($viesti) . '</p>'; $tiedosto = fopen('vieraskirja.txt', 'a'); fputs($tiedosto, $uusirivi); fclose($tiedosto); } ?>
Tässä tulee sitten ongelmia, eli viraskirjan näyttö:
<?php $viestit = fopen("vieraskirja.txt", "r"); $viestit = array_reverse($viestit); $viestimaara = count($viestit); echo "<p>Yhteensä <b>$viestimaara</b> viestiä.</p><hr>"; echo "<br>$viesti<hr>"; ?>
Tuon saa kyllä toimimaan niin että laittaa
<?php include ('vieraskirja.txt'); ?>
Mutta silloin ne tulee siinä järjestyksessä kuin ovat vastaanotettukkin.Olen nyt tuolla yllä olevalla koodilla yrittänyt saada niin että uusin viesti tulee ylimmäksi mutta jokin siinä mättää. vinkki olisi tarpeen.
Käy loopissa läpi tuo $viestit-taulukko ja tulosta viesti kerrallaan, äläkä yritä tulostaa jotain $viesti-muuttujaa, jonka arvoa ei oo koskaan asetettu miksikään.
Thänks.
Aihe on jo aika vanha, joten et voi enää vastata siihen.