Ulkoisen tiedoston
päivittäminen lomakkeella
Seuraavaksi rakennamme sivuston, jonka tekstiä voimme
päivittää lomakeruudun avulla. Tämä eroaa aikaisempaan
kurssiin siten, että luotu ja päivitetty teksti tuodaan
päivitysruutuun. Näin tekstin muokkaaminen on helpompaa kun
vanha teksti on näkyvillä.
Koodin rakenne
Headin ja bodyn väliin asetetaan tekstitiedoston aukaisemiseen
tarkoitettu koodi. Teksti tiedostosta luetaan rivi kerrallaan
välimuistiin. Itse teksti tulostetaan tekstialueeseen
lomakeruudussa. Tekstitiedoston tekstistä tehdään muuttuja
$tiedosto. Tietysti tekstitiedosto teksti.txt on myös
oltava samassa kansiossa, jotta tekstiä voidaan lukea sieltä.
Lomake lähettää tekstin ja siihen tehdyn muokkauksen
txtkirjoitus.php-tiedostoon post-siirrolla. Tämä tiedosto
käsittelee lähetetyn tekstin ja vaihtaa sen tekstitiedostoon.
Harjoitus22.php avaa tekstitiedoston teksti.txt
tekstin ja siirtää sen lomakeruudulle.
Painettaessa "Päivitä sivu"-nappia, lomakkeen
muokatut tekstit lähetetään post-toiminnolla
txtkirjoitus.php-sivulle.
Txtkirjoitus.php kaappaa lähetetyt tiedot, eli
muokatun tekstin. Tämä tiedosto avaa tekstitiedoston,
liittää siihen uuden tekstin ja sulkee tiedoston.
Lopuksi näkyy linkki takaisin
harjoitus22.php-sivulle.

» harjoitus22.php malli
Jotta teksti vaihtuisi teksti.txt-tiedostossa on se avattava
uudelleen ja sinne siirretään kaapattu lomakeruudun teksti.
Sivulla on myös oltava linkki takaisin lomakesivulle.

Päivitetyn tekstitiedostossa olevan teksti.txt-tekstin voi
siirtää suoraan haluttuun paikkaan aiemmin harjoitellulla
include-koodilla. Näin voidaan luoda oma tekstin muokkaussivu
vaikka sivujen leipätekstin muokkaamiseen. Muokkaussivusto on
kuitenkin hyvä salasanasuojata, jottei kukaan kutsumaton
pääsisi muokkaamaan sivun sisältöä.
Tämän koodin huono puoli on tekstin muokkauksen puuttuminen.
Jos esimerkiksi halutaan teksti eri väriseksi, suuruudeksi tai
vaikka paksummaksi, ei se onnistu ilman html-koodin
liittämistä tekstin sekaan ja sen opettaminen käyttäjille on
vaikeaa ja joskus jopa mahdotonta. Päivityssivuun voidaan
kuitenkin ohjelmoida erilaisia helpompia muokkaustoimintoja,
mutta se vaatii lisäopiskelua php-koodauksessa.
Salasanasuojaus
Aina kun on kyse päivityssivuista joita vain joku muokkaa ja
kutsumattomia vieraita ei haluta, pitää sivut salasanasuojata.
Helpoin ja varmin tapa on käyttää webbihotellin omia
palveluita kansioiden suojaamiseksi. Php-koodillakin voidaan
suojata yksittäisiä sivuja. Php-koodi ei näy käyttäjälle,
joten salasanasuojauksen voi tehdä monellakin tapaa. Yksi on
käyttää ehtolauseita if-else ja verrata annettua salasanaa
tekstiruutuun kirjoitettuun sanaan. Jos salasana täsmää,
ajetaan määritelty html-koodi. Salasana viedään
post-komennolla vertailukoodiin.

» harjoitus23.php malli |