Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Вебмастеру (http://forum.oszone.net/forumdisplay.php?f=22)
-   -   Скрипт публикации на PHP (http://forum.oszone.net/showthread.php?t=71369)

Netloger 15-09-2006 16:31 485320

Скрипт публикации на PHP
 
Доброго времени суток, уважаемые форумчане!

Есть вопрос по-поводу реализации возможности добавления статей, файлов и пр.

Необходимо сделать так, чтобы каждый пользователь мог опубликовать свою статью, (как это реаизовано во многих cms но без предв. проверки дмином)

На сколько я понимаю, это можно сделать несколькими способами. Первый это когда юзер отправляет в текстовом файле свою статью, после чего скрипт просматривает папку и выдает список файлов в данной папке, по названиям и соответствующей ссылкой на файл.

Второй, это возможно запись в базу (мускул) статьи юзера (из формы название и автор, и сама статья и дата), а потом просто выводить соответственно список записей, тоесть названий статей. И вот тут вопрос, каким образом генерить html или php страницу на лету, или как это называется я не знаю, в общем так чтобы как тока произошел запрос к статье в базе, то сразу на сервере сгенерировалась страница типа myarticle.html...

Какой способ лучше выбрать, и если я изобретаю велосипед, то подскажите может такое уже реализовано и если можно название или линку.

Заранее спасибо за ответ.

VeshchiyOleg 15-09-2006 17:03 485335

у-у-у-у-у-у-у....
да тут можно нафантазировать...
есть третий вариант - не высылать готовый файл и не хранить текст в базе, а создавать файл на сервере

а дальше уж сам думай:
можно ли выкладывать картинки???
доступно ли форматирование???
разрешены ли javascript`ы???
естессно нужно будет где-то хранить: где чей файл лежит? либо в БД либо также в файлах - создать некое подобие базы данных
и, естессно - авторизация это чтоб никто другой не мог редактировать чужие файлы
Цитата:

если я изобретаю велосипед, то подскажите может такое уже реализовано и если можно название или линку
http://www.livejournal.com/
http://ljplus.ru/

Netloger 15-09-2006 19:35 485390

Не, я не то имел ввиду, мест где такое работает я знаю уйму. :) Вопрос в том есть ли где готовые иходники. :)

Цитата:

естессно нужно будет где-то хранить: где чей файл лежит? либо в БД либо также в файлах - создать некое подобие базы данных
и, естессно - авторизация это чтоб никто другой не мог редактировать чужие файлы
Никакой авторизации, правки тоже нет, только в экстренных случаях админом на серваке в крайнем случае.
Вставка картинок и все, и тегов типа <b><p><br> <a><img> остального быть не должно.

Как это все отобразится на качестве безопасности?
Цитата:

а создавать файл на сервере
Это я и имел вииду собственно.

Igor_I 16-09-2006 17:48 485656

http://www.p-stone.ru/libr/internet/...c11/gl06.shtml - папкопотрошилка, скрипт из книги "PHP - полезные приемы"

Netloger 16-09-2006 19:05 485667

Папкопотрошилку я уже написал :) и вывод названия файла с линокм на него тоже, но блин неудобно...надо все-таки что-нить с генерацией страницы...

Igor_I 17-09-2006 13:23 485879

Цитата:

И вот тут вопрос, каким образом генерить html или php страницу на лету, или как это называется я не знаю, в общем так чтобы как тока произошел запрос к статье в базе, то сразу на сервере сгенерировалась страница типа myarticle.html...
Вот так что-ли? А зачем тебе сгенерированная страница? Чем не устраивает вывод статьи в каком-либо шаблоне?

VeshchiyOleg 19-09-2006 09:12 486578

я не пойму в чем проблема сохранения сгенерированного файла???
генерируешь текст файла, сохраняешь его и пишешь соответственно header и footer...
что-то вроде этого:
PHP код:

$file_content = '<?include 'header.php\';?>'.$formdata.'<?include \'footer.php\';?>'# текст файла
if ($file = @fopen($file_name'w+')) { # создаем файл с именем $file_name
    
chmod($file_name0754); # права на файл... без этого, в принципе, можно обойтись
    
@fwrite($file$file_content); # пишем собсно контент
    
fclose($file); # закрываем файл - файл готов
}


Netloger 10-10-2006 00:34 495603

Спасибо. :) вот этого мне и не хватало я никак не мог сообразить каким образом генерить.


Время: 17:08.

Время: 17:08.
© OSzone.net 2001-