в одной папке лежат файлы 1.php и редактируемый файл index.html3. С помощью пхп открываем содержимое файла index.html3 в поле textarea. Как потом сохранить отредактированные данные в этот же файл ? То что начал делать: 1.php: PHP: <html> <body> <form > <textarea name="body" rows="20" cols="105" class="enter"> <? $fi = "index.html3"; $fp = fopen ($fi, "r"); $content = fread ($fp, filesize ($fi)); echo $content; // и не забываем закрыть файл fclose ($fp); ?> </textarea><br> <input type="submit" value="отправить" name="edit"> </form> </body> </html> Файл index.html3 HTML: <h1>Привет, измени меня на что нибудь другое</h1>
если я правильно понял что ты хочешь то наверное чтото типа того: Код (Text): if (isset($_REQUEST['edit'])) { $fi = "index.html3"; $fp = fopen ($fi, "w+"); $content = fwrite ($fp, $_REQUEST['body']); fclose ($fp); }
у меня кое что получилось, но скрипт не работает. Посмотрите что не так? 1.php PHP: <html> <body> <form > <textarea name="body" rows="20" cols="105" class="enter"> <? $fi = "index.html3"; $fp = fopen ($fi, "r"); $content = fread ($fp, filesize ($fi)); echo $content; // и не забываем закрыть файл fclose ($fp); ?> </textarea><br> <input type="submit" value="отправить" name="edit"> </form> <? $fi = "index.html3"; $w=fopen($fi,'w'); fputs($w,$body); // 7 fclose($w); ?> </body> </html> index.html3: HTML: <h1>Привет, измени меня на что нибудь другое</h1> <p>Молодца, поменял</p>
почитай про функции file_get_content и file_put_content а форму надо так офрмлять... <form name="" action="" method="post"> ... </form> так же можешь поинтересоваться функцией flock()
вычитал здесь только общий вид string file_get_contents ( string filename [, bool use_include_path [, resource context [, int offset [, int maxlen]]]] ), а пример применения найти не могу. Пожалуйста подскажите как её применить в моем примере
Вот что я получил, слегка модифицировав твой скрипт. PHP: <? if (isset ($_POST['body'])) { $fi = "index.html3"; $w = fopen ($fi, "w"); fwrite ($w, $_POST['body']); fclose ($w); } ?> <html> <body> <form action="" method="POST"> <textarea name="body" rows="20" cols="105" class="enter"> <? $fi = "index.html3"; $fp = fopen ($fi, "r"); $content = fread ($fp, filesize ($fi)); echo $content; // и не забываем закрыть файл fclose ($fp); ?> </textarea><br> <input type="submit" value="отправить" name="edit"> </form> </body> </html> А вообще я бы посоветовал побольше поработать с файлами, читая параллельно учебники. Чем больше опыта (и всё равно - удачного или нет) - тем лучше получается.
1.php PHP: <? Error_Reporting(E_ALL & ~E_NOTICE); ?> <html> <body> <form method=post> <textarea name=body rows="20" cols="105" ><? $fileName = "index.html"; if(is_file($fileName)){ if($fd = @fopen($fileName, "r")){ $string .= @fread($fd, filesize($fileName)); fclose($fd); } } echo $string; ?></textarea><br> <input type="submit" value="отправить" name="edit"> </form> <? function complete(){ $fi = "index.html"; $w=fopen($fi,'w'); fputs($w,$_POST[body]); fclose($w); echo '<h3>Данные обновлены</h3>'; } ?> <? if($_POST['edit']) complete(); ?> </body> </html> Редактируемый файл index.html Теперь все работает