Editor
4 příspěvky
Archiv diskusního fóra
Fórum je uzavřené a slouží pouze ke čtení. Některé informace mohou být zastaralé.
-
Zdravím chtěl bych se zeptat na tento script v čem je chyba <?php session_start(); if isset($_GET["soubor"]) $soubor = trim($_GET["soubor"]); // teď záleží na tom, co chcete dělat... například já vezmu, že název souboru může mít jen čísla, písmena, podtržítko a pomlčku // GETem předávám název souboru bez přípony if(!eregi('[a-z0-9_\-]*',$soubor) die("neplatny nazev souboru!"); // doplním řekněme příponu .txt $soubor = $soubor.".txt"; // uložím do session $_SESSION["soubor"]=$soubor; if(fopen($soubor,"r")){ $text = fread($soubor, filesize($soubor)); } else{ if file_exists($soubor) die("Chyba pri cteni souboru"); else $text = ""; } ?> HTML omáčka* <h1>Editace souboru <?php echo($soubor); ?></h1> <form action="ulozit.php" method="POST"> <textarea name="editor" id="editor"><?php echo($text)?></textarea> <input type="submit" value="uložit" /> </form> ** zbytek HTML *** a v tomhle <?php session_start(); $soubor = $_SESSION["soubor"]; if($soubor=="") die("Neplatný název souboru"); // odstraním z textu HTML/PHP kód... $text = strip_tags($_POST["editor"]); $deskriptor = fopen($soubor, "w"); if(!$deskriptor) die("nepodarilo se vytvorit soubor"); if(!fwrite($deskriptor, $text)) die("Nepodarilo se zapsat soubor"); ?> (HTML kód oznamující úspěšný zápis do souboru)
-
PHP může být nakonfigurováno (a tady, zřejmě je), tak, že je třeba zadat celou cestu k souboru. tedy např.: /home/x/xaver/soubor.txt
-
jde to i bez té cesty, tohle je první část (zpočátku jsem si nevšiml, že to má ještě potačování) a taky byl problém s umístěním závorek (pokud jsem tedy pochopil smysl a neuděl z toho něco jiného) <?php session_start(); if (isset ($_GET["soubor"])) $soubor = trim($_GET["soubor"]); // teď záleží na tom, co chcete dělat... například já vezmu, že název souboru může mít jen čísla, písmena, podtržítko a pomlčku // GETem předávám název souboru bez přípony if(!eregi('[a-z0-9_\-]*',$soubor)){ $text = ""; die("neplatny nazev souboru!"); } // doplním řekněme příponu .txt $soubor = $soubor.".txt"; // uložím do session $_SESSION["soubor"]=$soubor; if (file_exists($soubor)){ $fd = fopen($soubor,"r"); $text = fread($fd, filesize($soubor)); }else{ die("Chyba pri cteni souboru"); } ?>
-
už to mám thx za ochotu. :o)