Elikkäs olis kysymistä flatfile viekun vastaus systeemistä. Eli:
Miten teen sen paneelin joka on:
- salasanasuojattu
ja siin pitäs näkyy kaikki viestit ja vastaus button. Vinkkiä?
Dexter kirjoitti:
Elikkäs olis kysymistä flatfile viekun vastaus systeemistä. Eli:
Miten teen sen paneelin joka on:
- salasanasuojattu
Teet kentän, joka lähetetään POST-datana serverille, esim.:
<?php $salainen_sana = 'akuankka'; if (isset($_POST['salasana']) and $_POST['salasana'] === $salainen_sana) { echo "salaista sisältöä"; // jne... } else echo "Salasana väärin."; ?>
Salasanan voi tietysti hashata esim. md5:lla ja lisätä salaisen suolan ym., niistä lisää täällä.
Dexter kirjoitti:
ja siin pitäs näkyy kaikki viestit ja vastaus button. Vinkkiä?
Riippuu siitä miten vieraskirjasi on tehty.
Tämän tyylinen se on =)
<html> <head> <title>Linkkilista</title> </head> <body> <?php print "<h1>Linkkilista</h1>"; $tulostus = file("linkit.txt"); $rivit = count($tulostus); if ($rivit == 0 ) { print "Linkkilistassa ei ole yhtään linkkiä.<br><br>"; } elseif ($rivit == 1) { print "Linkkilistassa on 1 linkki.<br><br>"; } else { print "Linkkilistassa on $rivit linkkiä.<br><br>"; } if ($rivit != 0) { $rivit2 = $rivit - 1; $i = 0; while ($i <= $rivit2) { $tulosta = explode("|", $tulostus[$i]); print "<b><a href=\"$tulosta[0]\">$tulosta[1]</a></b><br>$tulosta[2]<br><br>"; $i++; } } print "<br><br> <b>Lisää oma linkkisi:</b><br><br> <form method=\"post\" action=\"$PHP_SELF\"> Sivun URL: <input type=\"text\" name=\"url\" size=\"20\" value=\"http://\"><br> Sivun nimi: <input type=\"text\" name=\"nimi\" size=\"20\" value=\"\"><br> Sivun kuvaus: <input type=\"text\" name=\"kuvaus\" size=\"20\" value=\"\"><br> <input type=\"submit\" value=\"Lähetä\"> </form> "; if (isset($url)) { $tiedosto = "linkit.txt"; $fp = fopen($tiedosto, 'a'); $data = "$url|$nimi|$kuvaus\n"; fwrite ($fp, $data); print "Linkki lisätty."; } ?> </body> </html>
Toi ei kuitenkaan ole lähellekkään saman lainen mutta pääasiassa kyllä
Mod. lisäsi oikeat kooditagit
Tuohon kohtaan laitat sen vastausnappulan ylläpitäjän sivulle:
<?php if ($rivit != 0) { $rivit2 = $rivit - 1; $i = 0; while ($i <= $rivit2) { $tulosta = explode("|", $tulostus[$i]); print "<b><a href=\"$tulosta[0]\">$tulosta[1]</a></b><br>$tulosta[2]<br><br><a href=\"{$tulosta[0]}?act=vastaa\">vastaa</a>"; $i++; } } ?>
Sitten teet käsittelijän $_GET['act'] -muuttujalle ja näyttelet sen mukaan vastausformin.
Tosin tuo on suunniteltu hieman huonosti, koska järkevää olisi tehdä jokaiselle tietueelle oma uniikki-ID, jonka perusteella niitä pystyisi helposti käsittelemään.
Tuossa pätkässä on käytetty myös vanhoja (huonoja) tapoja, kuten esimerkiksi register_globalsin käyttöä, joka on ollut jo PHP4 -versiosta asti oletuksena disabloituna sen haavoittuvuuden takia, kuten myös PHP_SELF.
Unohdan koko projektin :( en vaan jaksa ku en osaa, sitten kun osaan paremmin niin jatkan.
Jaksu-Preriumzone kirjoitti:
Unohdan koko projektin :( en vaan jaksa ku en osaa, sitten kun osaan paremmin niin jatkan.
Ei kannata kokonaan unohtaa. ;) Pyydät vaan joltai hyvähermoselta oikeilla sanoilla apua, niin into löytyy taas. ;D
Ja lue vaikka aluksi Ohjelmointiputkan PHP-opas. ;)
Olen lukenut sen oppaan. Nyt kuitenkin minulla on muuta tekemistä. Enkä unohda sittenkään kokonaan =)
Aihe on jo aika vanha, joten et voi enää vastata siihen.