Yksinkertainen vieraskirja. Tee myös allaolevien filujen lisäksi tyhjä data.txt-tiedosto, ja chmodaa se kirjoittavaksi yms.
guestbook.php
<?php session_start(); //muuta nämä oikeiksi $admin_email = "pake1@operamail.com"; $admin_salasana = "salasana"; //Tulostetaan linkit echo ' <a href="vieraskirja.php?a=read">Lue vieraskirjaa</a> - <a href="vieraskirja.php?a=write">Kirjoita vieraskirjaan</a> - <a href="vieraskirja.php?a=login">Adminpaneeli</a><br><br> '; //Nyt alkaa itse skripti //tehdään oma funktio viestien tulostukselle, jotta viestien näyttäminen olisi helpompaa function ShowMessages() { $open = file("data.txt"); $count = count($open); for ($i=0; $i<$count; $i++) { $entry = explode("|", $open[$i]); echo '<b><i>'; echo $entry[0]; echo '</i></b><br>'; echo '<a href="'; echo $entry[3]; echo '">www</a><br>'; echo $entry[1]; echo '<br><br>'; } } //jos käyttäjä on klikannut lue-linkkiä, niin näytetään viestit. if($_GET["a"] == "read"){ ShowMessages(); } //Jos arvoa ei ole määritelty, eli käyttäjä on tullut suoraan vieraskirjaan, niin näytetään viestit. if($_GET["a"] == ""){ ShowMessages(); } //jos käyttäjä haluaa kirjoittaa vieraskirjaan, niin näytetään formi. if($_GET["a"] == "write"){ echo ' <form action="vieraskirja.php?a=write2" method="post"> <p>Nimimerkki: <input type="text" name="nimimerkki"></p> <p>E-Mail: <input type="text" name="email"></p> <p>WWW: <input type="text" name="www"></p> <p>Viesti:</p> <p><textarea name="viesti" style="width: 100%; height: 10em;"></textarea></p> <p><input type="submit" value="Kirjoita!"></p> '; } //Jos käyttäjä on lähettänyt formin, niin käsitellään tiedot. if($_GET["a"] == "write2"){ $nimimerkki = $_POST["nimimerkki"]; $email = $_POST["email"]; $www = $_POST["www"]; $yv = $_POST["yv"]; $viesti = $_POST["viesti"]; $nimimerkki = strip_tags($nimimerkki); $email = strip_tags($email); $www = strip_tags($www); $viesti = strip_tags($viesti); $nimimerkki = str_replace("<", "<", $nimimerkki); $nimimerkki = str_replace(">", ">", $nimimerkki); $email = str_replace("<", "<", $email); $email = str_replace(">", ">", $email); $www = str_replace("<", "<", $www); $www = str_replace(">", ">", $www); $viesti = str_replace("<", "<", $viesti); $viesti = str_replace(">", ">", $viesti); $avaa = fopen("data.txt", "a"); $id = rand(0,99999); $rivi = "$nimimerkki|$viesti|$email|$www|$id\n"; if(!fwrite($avaa, $rivi)){ echo 'Tiedostoon ei voitu kirjoittaa!<br> Asiasta ilmoitettu ylläpidolle.'; $otsikko = "Virhe tapahtunut!"; $mail = "Sivuillasi on tapahtunut seuraava virhe:\n\n Tiedostoon ei voitu kirjoittaa."; $from = "From: $admin_email"; mail($admin_mail, $otsikko, $mail, $from); } else { echo "Viestin kirjoitus onnistui!"; } } //Jos käyttäjä haluaa adminpaneeliin. if($_GET["a"] == "login"){ echo ' <form action="vieraskirja.php?a=login2" method="post"> <p>Salasana: <input type="password" name="salis"></p> <p><input type="submit" value="Kirjaudu!"></p> </form> '; } //jos käyttäjä on lähettänyt kirjautumisformin. if($_GET["a"] == "login2"){ $salis = $_POST["salis"]; if($salis == $admin_salasana){ $_SESSION["check"] = logged; echo 'Olet kirjautunut sisään. Jatka painamalla <a href="vieraskirja.php?a=admin">tästä</a>.'; } else { exit("Väärä salasana!"); } } //Adminsivun määritys if($_GET["a"] == "admin"){ if(isset($_SESSION["check"])){ echo '<h2>Muokaa viestejä</h2><br>'; echo ' <form action="edit.php" method="post"> <textarea name="muok" style="width: 400px; height: 10em;"> '; include('data.txt'); echo ' </textarea><br><input type="submit" value="Muokkaa"></form><br> <br> <a href="vieraskirja.php?a=logout">Kirjaudu ulos</a> '; echo '</p>'; } else { echo "Et ole kirjautunut sisään!"; } } //uloskirjautuminen if($_GET["a"] == "logout"){ session_destroy(); echo "Olet kirjautunut ulos."; } ?>
edit.php
Aihe on jo aika vanha, joten et voi enää vastata siihen.