X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость ( Вход | Регистрация )

Открыть тему
Тема закрыта
> Помогите с php, Редактирование кода через сайт
Nisan
Nisan
Topic Starter сообщение 24.11.2008, 23:21; Ответить: Nisan
Сообщение #1


Новичок
*

Группа: User
Сообщений: 38
Регистрация: 26.9.2008
Поблагодарили: 6 раз
Репутация:   2  


Добрый вечер!
Требуется Ваша помощь! rolleyes.gif

Попробовал написать примитивный html редактор для редактирования страниц непосредственно через сайт.

Имеется:
1. index.php
<?php
$filename = "1.php";
$handle = fopen("1.php", "r+");
$handle1 = fread($handle,filesize($filename));
fclose($handle);
?>

<form action="write.php" method="post" name="write">
<textarea name="text" id="text" cols="80" rows="40"><?echo $handle1;?></textarea>
<input type="submit" name="write" id="write" value="Запсать">
</form>



2. write.php
<?
$filename = '1.php';
$f=fopen($filename,"a+");
ftruncate($f,0);
if (isset($_POST['text']))        {$text = $_POST['text']; if ($text == '') {unset($text);}}

// Вначале давайте убедимся, что файл существует и доступен для записи.
if (is_writable($filename)) {

    // В нашем примере мы открываем $filename в режиме "дописать в конец".
    // Таким образом, смещение установлено в конец файла и
    // наш $somecontent допишется в конец при использовании fwrite().
    if (!$handle = fopen($filename, 'a')) {
         echo "Не могу открыть файл ($filename)";
         exit;
    }

    // Записываем $text в наш открытый файл.
    if (fwrite($handle, $text) === FALSE) {
        echo "Не могу произвести запись в файл ($filename)";
        exit;
    }
    
    echo stripslashes("Ура! Записали <a href='./'>назад</a><b><pre>$text</pre></b> в файл <b>$filename</b>");
    
    fclose($handle);

} else {
    echo "Файл $filename недоступен для записи";
}
?>


Принцип думаю ясен smile.gif

Вроде все вышло, но при сохранении текста перед символами " , ' и \ php ставит \ (бэк-слэш)
Причем при пересохранении они (\) "плодятся" в геометрической прогрессии.

Кто знает как решается данная проблема? )
Буду премного благодарен.


--------------------
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Lordie
Lordie
сообщение 24.11.2008, 23:22; Ответить: Lordie
Сообщение #2


Топовый постер
*******


Группа: Active User
Сообщений: 4737
Регистрация: 11.5.2008
Поблагодарили: 966 раз
Репутация:   153  


fwrite($handle, $text)

=>
fwrite($handle, stripslashes($text))


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Nisan
Nisan
Topic Starter сообщение 24.11.2008, 23:52; Ответить: Nisan
Сообщение #3


Новичок
*

Группа: User
Сообщений: 38
Регистрация: 26.9.2008
Поблагодарили: 6 раз
Репутация:   2  


(Lordie @ 24.11.2008, 22:22) *
fwrite($handle, $text)

=>
fwrite($handle, stripslashes($text))


Lordie, большое спасибо! wink.gif

И скажи пожалуйста безопасно ли пользоваться данным скриптом. В смысле могут возникнуть случаи нарушения целостности страницы в силу специфики php? Или все норм?


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Lordie
Lordie
сообщение 24.11.2008, 23:57; Ответить: Lordie
Сообщение #4


Топовый постер
*******


Группа: Active User
Сообщений: 4737
Регистрация: 11.5.2008
Поблагодарили: 966 раз
Репутация:   153  


Nisan, в принципе, безопасно.. но функциональность - спартанская
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Nisan
Nisan
Topic Starter сообщение 25.11.2008, 0:16; Ответить: Nisan
Сообщение #5


Новичок
*

Группа: User
Сообщений: 38
Регистрация: 26.9.2008
Поблагодарили: 6 раз
Репутация:   2  


(Lordie @ 24.11.2008, 22:57) *
Nisan, в принципе, безопасно.. но функциональность - спартанская


Да мне впринципе ничего особенного не нужно!
Может только нумерацию строк и подсветку синтаксиса сделаю! (Если конечно получиться biggrin.gif )

Еще раз благодарю! wink.gif


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Lordie
Lordie
сообщение 25.11.2008, 0:28; Ответить: Lordie
Сообщение #6


Топовый постер
*******


Группа: Active User
Сообщений: 4737
Регистрация: 11.5.2008
Поблагодарили: 966 раз
Репутация:   153  


Nisan, с подсветкой лучше сразу забей smile.gif
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Nisan
Nisan
Topic Starter сообщение 25.11.2008, 1:22; Ответить: Nisan
Сообщение #7


Новичок
*

Группа: User
Сообщений: 38
Регистрация: 26.9.2008
Поблагодарили: 6 раз
Репутация:   2  


(Lordie @ 24.11.2008, 23:28) *
Nisan, с подсветкой лучше сразу забей smile.gif


Да, в textarea лучше даже не пытаться! biggrin.gif


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Недорогие услуги - php/js/mysql/jquery/bootstrap
2 vlads 643 Вчера, 21:01
автор: vlads
Открытая тема (нет новых ответов) Веб-разработка (HTML5, CSS3, JavaScript, jQuery, Ajax, PHP)
18 qpPeW 3375 12.12.2017, 13:32
автор: qpPeW
Открытая тема (нет новых ответов) Помогите выбрать программу
Помогите выбрать программу
11 impak 1334 11.12.2017, 13:11
автор: Mikki
Открытая тема (нет новых ответов) php скрипты любой сложности / диз+верстка (адаптивно)
любые задачи на php - автоматизация, парсинг, работа с БД
1 affrodita 496 8.12.2017, 17:40
автор: affrodita
Открытая тема (нет новых ответов) Помогите найти плагин на WP
Отзывы с профилей соц сетей
1 SEOMR 438 30.11.2017, 7:18
автор: Nell


 



RSS Текстовая версия Сейчас: 14.12.2017, 2:30
Дизайн