Здравствуйте Гость ( Вход | Регистрация ) | Выслать повторно письмо для активации |
Домофонщик |
Отправлено: Dec 3 2007, 02:28 PM
|
||||||||||
Генерал Группа: Members Сообщений: 244 Пользователь №: 1099 Регистрация: 22-August 07 |
Удаленный редактор Сегодня мы напишем интересную и очень полезную программу для вашего сайта. Хотя посетители и не смогут оценить ее, но то, что она упростит жизнь вам, это точно :-). Реализация примера, конечно же, будет на PHP. Итак, открывайте свой любимый редактор и начнем кодить. Все будет сделано просто и, как говорится, для себя :-). Выведем строку для ввода адреса к файлу на сервере и кнопки с обозначениями, которые будут одновременно сообщать, что с этим файлом можно сделать. Наша цель — предоставить возможность чтения, редактирования, запуска и удаления указанного файла. В режиме редактирования мы также будем иметь возможность сохранить промежуточный результат, а заодно сделаем кнопку «Сохранить как…», чтобы можно было создать резервную копию. Резервные копии часто требуются при написании нового кода или внесении хоть каких-то существенных изменений в уже работающий код. Это избавляет от возможных проблем и головной боли :-). Весь скрипт представляет из себя один сценарий с именем editor.php. Редактирование файлов будет производиться относительно этого сценария, так что желательно для удобства поместить его в корень сайта. Иначе каталог, в который он будет помещен, будет считаться корневым. Код может показаться немного сложным для неподготовленных, чтобы все было ясно, будем разбирать его частями. Итак, начнем заполнять скрипт кодом:
Итак, первые действия — это загрузка нашей постоянной формы, которая представляет из себя строку для ввода адреса файла, над которым мы будем работать, и кнопки с выполнением операций чтения, редактирования, запуска и удаления. Обработку нажатия на эти кнопки мы будем реализовывать далее. Единственное, что пришлось сделать заранее — это обработать функцию запуска указанного файла, так как после любого вывода в браузер мы уже не можем никак изменить Header, который требуется нам для переадресации на указанный адрес. Наш скрипт должен отслеживать, на какую клавишу было осуществлено нажатие, и выполнять соответствующие действия с указанным в строке адреса файлом. Потому пишем такой код:
Итак, мы обработали одно из возможных действий — удаление файла. Но прежде чем что-либо делать с файлом или проверять действие, которое выбрали на выполнение, мы проводим проверку на наличие файла, с которым собираемся далее работать. Если окажется, что файл отсутствует на сервере, то никаких проверок выполняться не будет, выведется сообщение, как показано на рис. 1. Теперь напишем код обработки чтения указанного файла:
Здесь нет ничего сложного — мы получаем содержимое указанного файла в переменную $txt и выводим ее в браузер, предварительно отформатировав. Так как текст не должен быть доступен для редактирования, мы выводим его в таблицу с заливкой. Форматирование текста любой может устроить на свой вкус. Я решил поставить там тэг <code>, так как лично мне приходится таким образом изменять PHP- и HTML-коды. Далее следует проверить, действительно ли пользователь хочет редактировать файл, но перед этим следует обрабатывать возможные опции «Сохранить» и «Сохранить как…». Опишем в коде сначала их:
Обработка сохранения и сохранения с указаниями имени файла подобны. Разница состоит в именах файлов, куда осуществляется запись. Если выбрана опция «Сохранить как…», мы сразу же указываем имя нового файла в поле, таким образом запись содержимого осуществляется именно туда. При простом сохранении весь редактируемый текст оказывается в файле, который редактируется в данный момент. Я специально написал проверку на сохранение файла перед тем как описывать редактирование — если в файл внесены изменения, то пользователь должен получить их моментально, без обновления страницы. Последнее, что осталось — это описать функцию редактирования файла, которая осуществляется при нажатии на кнопку «Редактировать»:
Редактирование немного напоминает обычное чтение файла. Текст из указанного файла загружается уже не в таблицу, а прямо в область для ввода текста, чтобы дать возможность редактировать и вносить изменения в файл. Ниже таблицы размещаются две кнопки — «Сохранить» и «Сохранить как…», обработку нажатия на которые мы уже реализовали. Заключение Скрипт полностью готов к использованию, я уже давно успешно его использую, что и вам советую :-). На рис. 2 показано чтение файла с помощью разработанного сценария. |
||||||||||
DelphiST |
Отправлено: Dec 4 2007, 01:40 PM
|
Команда ЭйсВэб Группа: Super moderator Сообщений: 1093 Пользователь №: 796 Регистрация: 23-May 07 |
Не увидел запуска сценария (exec). Так статья хорошая... но бесполезная. Щас на любом хостинге есть и FTP и web-файл-навигатор
-------------------- |
Домофонщик |
Отправлено: Dec 4 2007, 02:15 PM
|
Генерал Группа: Members Сообщений: 244 Пользователь №: 1099 Регистрация: 22-August 07 |
Стобой я полностью согласен!!!
Но етот скрипт тоже очень полезен в своей мере! Можно в любой момент зайти на сайт, и отредактировать любой файл (html, PHP) |
Asid Storm |
Отправлено: Dec 4 2007, 07:33 PM
|
Команда ЭйсВэб Группа: Super moderator Сообщений: 895 Пользователь №: 39 Регистрация: 27-August 06 |
Не помешало бы защитку сделать, а то лбой зайдёт пропишет editor.php )
И удалит/отредактирует все файлы ) |
Домофонщик |
Отправлено: Dec 6 2007, 01:14 PM
|
Генерал Группа: Members Сообщений: 244 Пользователь №: 1099 Регистрация: 22-August 07 |
Немешалобы!
Но увы я не знаю как!!! --- А может ты знаеш как ето зделать??? Asid Storm: Дабл постинг... |
p1ay3r |
Отправлено: Dec 6 2007, 09:20 PM
|
Майор Группа: Members Сообщений: 106 Пользователь №: 1016 Регистрация: 30-June 07 |
он говорит как йода)))))
-------------------- |
Asid Storm |
Отправлено: Dec 6 2007, 10:31 PM
|
Команда ЭйсВэб Группа: Super moderator Сообщений: 895 Пользователь №: 39 Регистрация: 27-August 06 |
Щас времени нет )))
На выходных немного отредактирую скрипт )))) |
ruitrjiu |
Отправлено: Dec 7 2013, 02:18 PM
|
Unregistered |
Leading Down The structure party handled the room<br><br>with the very best all the way down. You start with signals, they will chose the Fillista pendant rug Moncler Jackets as a result of IKEA $29. 99, encouraged by way of a different mid-century advanced antique the actual Henningsen Artichoke bulb meant for Poulsen Discount Moncler. We wanted to renovation and also reduce the strength, morale, or resistance the main middle century appearance create the item sought-after. The house provides a well-known house and also were going to Nike Air Max keep most of of which experience while in the room or space. Along with there's a nipper on the family members and we wished to keeping it pleasurable, defined Turner.<br>
Top Throughout the design squad dealt with the space Devilish Interiors Design Pair of Beverly Typically the corner calculated big rood tttttt |
|
ruitrjiu |
Отправлено: Dec 13 2013, 02:37 AM
|
Unregistered |
Ya think which will Miley's EMAs<br><br>stunt ended up being scandalous together with incredible, and also has got the take celeb previously be depleted for different ways to astonish along with idolatry? women ugg A great deal more From This Factor: Miley Cyrus's 'Wrecking Ball' Videos Parodied by Betty White-colored: Several other Super stars Spoof Miley Miley Cyrus Needed Partially nude VMAs Efficiency: Many times She has Removed Lower I got watching one of the best Cheap Ugg Boots YouTube actors The particular Great Bros and their latest Canada Goose Jackets video clip from them Boys and girls Take action range,<br>
Really likely which will the woman's stop failed to shock many broadcast full straight-forward stop these times Do you think of which Miley's EMAs xxxxxx |
|