Miten tehdään PHP:llä sivu, joka avaa tekstikenttään
tiedoston "sivu.php" -lähdekoodin ja tallentaa muutokset, kun painetaan "Tallenna" -painiketta?
Luet osoiteriviltä tiedoston nimen / ID:n, tulostat textareaan ja käsittelysivulla tallennat käyttäjän lähettämän takaisin tiedostoon.
tsuriga kirjoitti:
Luet osoiteriviltä tiedoston nimen / ID:n, tulostat textareaan ja käsittelysivulla tallennat käyttäjän lähettämän takaisin tiedostoon.
Tällä tavalla mahdollista lukea/muokata mitä tahansa kriittistä tiedostoa?
Hakoulinen kirjoitti:
tsuriga kirjoitti:
Luet osoiteriviltä tiedoston nimen / ID:n, tulostat textareaan ja käsittelysivulla tallennat käyttäjän lähettämän takaisin tiedostoon.
Tällä tavalla mahdollista lukea/muokata mitä tahansa kriittistä tiedostoa?
Jep, ilman mitään tarkistuksia kyllä hyvinkin mahdollista.
Kiitos!
En oikein ymmärtänyt tuota (koska en ole vielä mikään php-guru), mutta löysin hyvän scriptin:
index.php
<title>Tekstin päivitys</title> <form action="processscript.php" method="post"> <textarea rows="30" cols="80" name="content"> <? $fn = "../test.html"; print htmlspecialchars(implode("",file($fn))); ?> </textarea><br> <input type="submit" value="Change!"> </form>
processscript.php
<? $fn = "../test.txt"; $content = stripslashes($_POST['content']); $fp = fopen($fn,"w") or die ("Error opening file in write mode!"); fputs($fp,$content); fclose($fp) or die ("Error closing file!"); echo "<meta http-equiv=\"refresh\" content=\"0; url=edit.shtml\" />\n"; ?>
Olisiko tuosta vaikea vääntää WYSIWYG -versio (kuten monissa sähköpostipalveluissa)?
Tehtävä on erittäin vaikea, ja lopputulos ei silti toimisi kunnolla, joten minusta kannattaa pysyä tavallisessa tekstikentässä.
Noita WYSIWYG-editoreitahan löytyy valmiinakin, esimerkiksi FCKeditor.
Aihe on jo aika vanha, joten et voi enää vastata siihen.