Vieraskirjaan tarvitsee 3 tiedostoa.
Ensiksi luodaan tyhjä tiedosto viestit.txt
Sitten luodaan tiedosto laheta_viesti.php
<?php $nimi = $_POST['nimi']; $viesti = $_POST['viesti']; # Jos nimi ja viesti ovat lomakkeeseen määritetyt # arvot niin ketään ei päästetä läpi if($nimi == "Nimi" || $viesti == "Viesti") { echo "Tietojasi pitää muuttaa"; exit(); } # Katsotaan onko nimi- tai viestikenttä tyhjänä if(empty($nimi)) { echo "Nimi puuttuu."; exit(); } if(empty($viesti)) { echo "Viesti puuttuu."; exit(); } # Poistetaan html tagit, paitsi <b>, <i> ja <u> $viesti = strip_tags($msg,"<b>,<i>,<u>"); $nimi = strip_tags($nick,""); # Lisätään tietoihin tyylitys $tyylitys = "<strong>$nimi</strong>:<br>$viesti<br><br>\n"; # Korjataan " ja ' merkit $tyylitys = str_replace("\\\"","\"",$logit); $tyylitys = str_replace("\\'","'",$logit); $fp = fopen("viestit.txt", "a+"); fwrite($fp, $tyylitys); fclose($fp); # Lähetetään käyttäjä takaisin viestit.php tiedostoon header("location: viestit.php"); ?>
Kun tämä tiedosto on luotu,luodaan tiedosto viestit.php
<form method="post" action="laheta_viesti.php" name="laheta"> <input name="nimi" value="Nimi" maxlength="15"><br> <input name="viesti" type="text" value="Viesti" maxlength="100"> <input name="submit" type="submit" value="Lähetä viestisi!"> <hr align="center" width="100%" size="1" color="blue" noshade> <?php $viesti = file("viestit.txt"); $maara = count($viesti); // echo ($viesti[$maara-1] . "\n" . $viesti[$maara-2] . "\n" . $viesti[$maara-3] . "\n" . $viesti[$maara-4] . "\n" . $viesti[$maara-5] . "\n"); ?>
Pari pientä ongelmaa: koodi ei toimi, koska olet mokannut muuttujien nimien kanssa monessakin paikassa (ks. $nick, $msg ja $logit), ja lisäksi koodi on huonosti tehty, nimittäin usean rivin mittainen viesti rikkoo järjestelmäsi, sivulle voi helposti lähettää omaa HTML- ja JS-koodia, lainausmerkkien "korjaus" on väärin ja esimerkiksi minun palvelimellani päinvastoin rikkoo viestin, ja kaiken kukkuraksi HTML-koodisi on viallista.
Aihe on jo aika vanha, joten et voi enää vastata siihen.