![]() |
|
Модераторы: korob2001, ginnie |
![]()
|
|
| Гость_Константин |
|
|||
|
Unregistered |
Всем привет! Прошу у вас помощи. Дело в том ,что я не дока в программировании, но поковырять исходники и настроить под себя (в основном дизайн) могу.Попался мне скрипт отличного чата. На Перле. Всё в нём хорошо, да вот одна беда - цвет,который юзер себе выбирает, не пишется к нему в кук. =( И при следующем заходе юзер опять получает цвет по умолчанию... Тоже самое и с ником... =((( Помогите,пожалуйста... Уж ковырялся я, ковырялся. Если кому нужно будет - отдам сам исходник чата. Заранее спасибо.
ЗЫ. ФАК по перлу и кукам здесь читал, но для меня это тёмный лес... =( ЗЫЫ. И еще маленький вопрос, если не сложно - как заменить смайлик картинкой ?
Что то типа этого ? Спасибо. |
|||
|
||||
| korob2001 |
|
||||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: 13 Всего: 61 |
Заходи сюда, и скачай файл перевода документации модуля CGI.pm. Это то, что нужно. Тебе понадобится Adobe Acrobat Reader, для того, что бы прочесть PDF файл. Затем прокрути скролл до 47 страницы, там описано очень доступно о куках. Спасибо админу.
Что ты подразумеваешь под смайликом? Если это - ;)
Если ты имел ввиду что-то другое, опиши подробнее проблему. Удачи. Это сообщение отредактировал(а) korob2001 - 23.8.2004, 02:34 -------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
||||||
|
|||||||
| Secandr |
|
|||
|
Связист ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4043 Регистрация: 3.8.2003 Где: Russia, Volgograd Репутация: нет Всего: 39 |
А чем тут тогда помочь можно?
Только переписать часть кода, а это я думаю в разде работа |
|||
|
||||
| Гость_Константин |
|
|||
|
Unregistered |
2 korob2001:
Спасибо ) Именно это я и хотел (по поводу смайликов). А вот относительно записи куки - там в чате есть даже параметр, когда ник записывается юзеру в кук...
Типа этого. Пытался я туда присобачить и $color , но не выводится... Можно я где-будь выложу 2 скрипта и Вы посмотрите. ? А вот перевод документации я тоже читал... И когда вставляю что-нибудь в скрипт, у меня по большей части 500 ошибка... =( |
|||
|
||||
| korob2001 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: 13 Всего: 61 |
Высылай на мыло [email protected]
-------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
|||
|
||||
| Гость_Константин |
|
|||
|
Unregistered |
Ушло.
|
|||
|
||||
| Гость_Константин |
|
|||
|
Unregistered |
Что-нибудь прояснилось ? =)
|
|||
|
||||
| korob2001 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: 13 Всего: 61 |
Подождите немного. Вы прислали мне 6 файлов примерно по 500 строк каждый, притом все эти файлы не в читабильном виде. Я только переформатировал их в более понятный вид, сейчас буду решать проблему с куками.
-------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
|||
|
||||
| korob2001 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: 13 Всего: 61 |
Сейчас разбираюсь с куками и заметил одну замечательную дыру в этом чате.
Попробуй в поле логин, при входе в чат ввести такую строку _admin_. Затем ты увидешь запрос на ввод логина и пароля админа, введи любой логин и любой пароль и ты попадёшь в раздел администрирования. По идее после первого ввода логина и пароля админа прога должна была сохранить их в файл, для последующих проверок. ОК, пробую зайти ещё раз, ввожу абсолютно другой логин и пароль и что ты думаешь? Я успешно попадаю в админовку. ;) Короче суть этой басни такова, к администрированию может получить практически любой юзверь. Код написан ужасно, стиль программирования ужасный. Поясню, что-бы не быть голословным: 1. use strict - отсутствует напрочь. 2. Практически все переменные - глобальные. 3. Практически весь чат построен на условиях if ( ... ) { ... } else { ... }, что сильно затрудняет чтение программы. Два файла переводил в читабельный вид целую ночь. Да и когда в программе используется такое кол-во условий, это считается плохим стилем. 4. За пол часа просмотра кода обнаружил 1 дыру. Интересно сколько их ещё? 5. Модули такие как CGI.pm отсутсвуют, а он был бы очень полезен, Но автор программы решил всё писать руками. Только не понятно зачем. Вобщем, здесь не куки нужно настраивать а как минимум пол программы переписывать. Но если хочешь я конечно настрою куки, но на всю прогу времени к сожелению не имею. Напиши стоит их вообще настраивать, как по мне так это лишняя трата времени. Чат - дырявый. -------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
|||
|
||||
| Гость_Константин |
|
|||
|
Unregistered |
Спасибо, что так анализируешь мою проблему. Куки настраивать стоит. А глюк с админкой - это отдельная песня. Там в скриптине supervisor.pl нужно назначить персонажей-админов. Когда это не на локали (или когда админы назначены) всё пашет отлично. Проверено (чат уже бывал в сети.) То есть можно обращаться по адресу www.домен.ру/cgi-bin/chat/supervisor.pl и там далее уже по ходу пьесы. Пример рабочего чата на основе этих скриптов - www.streetlife.ru/chat
А так - огромное спасибо, серьёзно. с меня пивко ) |
|||
|
||||
| Гость_Константин |
|
|||
|
Unregistered |
Кстати , этому чату уже лет 8 =))))))) Это одна из первых работ автора. А так, то ,к чему он пришёл сейчас, можно глянуть на www.rhhz.ru
|
|||
|
||||
| korob2001 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: 13 Всего: 61 |
Вообщем, что касается Perl'a вроде всё сделал. Кстати куки в этом чате используются только для того, что бы просто при следующем заходе в поле логин уже стояло значение _admin_, по умолчанию. Заметь что в чате предусмотрена возможность записи кук только при входе администратора, юзеру они не вписываются.
Что касается кук для сохранения настроек, то это наверное легче будет сделать с помошью JavaScript в файле color_set.htm Что скажешь? -------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
|||
|
||||
| Гость_Константин |
|
|||
|
Unregistered |
Скажу честно - не умею
|
|||
|
||||
| korob2001 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: 13 Всего: 61 |
Напиши конкретно, что ты хочешь сохранять в куках и для чего?
Это сообщение отредактировал(а) korob2001 - 25.8.2004, 14:21 -------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
|||
|
||||
| Гость_Константин |
|
|||
|
Unregistered |
В куках хочу сохранять ник юзера, чтобы он не писал его каждый раз в поле, пароль (по возможности) и его настройки чата, т.е. цвет и время обновления страницы. Записывать в куки выбранный шрифт и размер не нужно, эта функция сё равно буит недоступна для юзверя.
|
|||
|
||||
| Гость_Константин |
|
|||
|
Unregistered |
Привет! Как процесс ? )
|
|||
|
||||
| korob2001 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: 13 Всего: 61 |
Константин, я извиняюсь за такую задержку.
Просто мне нужно было отъехать не надолго. Доступа к инету не было, точнее был но только 5-10 минут. Я не забыл. Сегодня всю ночь посвящу вашей проблеме. Еще раз извиняюсь. Денис -------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
|||
|
||||
| Guest |
|
|||
|
Unregistered |
Привет! Да ничего страшного!
Спасибо огромное! Это первый форум програмеров, где мне помогают. Обычно говорят " ну вот ещё мы будем скрипты переписывать..." Ещё раз спасибо! |
|||
|
||||
| korob2001 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: 13 Всего: 61 |
Отправил на мыло.
-------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
|||
|
||||
| Гость_Константин |
|
|||
|
Unregistered |
привет. Всё получил, но на локалке выдаёт ошибку 500. То есть вообще никак не работает. Ну я думаю это из-за моего апача. У меня стоит денвер базовый пакет без доп. модулей, голый. Сейчас жду,когда хост мой откроют,сразу в сети тест проведу.
|
|||
|
||||
| korob2001 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: 13 Всего: 61 |
У тебя модуль CGI.pm установлен? Проверить это можно через командную строку, введя такую комманду:
C:\>perl -e "use CGI" Или запусти такую тестовою программку:
Если не получится, дай знать. -------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
|||
|
||||
| Гость_Константин |
|
|||
|
Unregistered |
Привет! На локалке не тестировал, но вот в сети тоже выдаёт 500-ю ошибку
|
|||
|
||||
| Папа Кастет |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 8.9.2004 Где: Москва Репутация: нет Всего: нет |
Привет. Я зарегился (гость Константин). По старому, на серваке ошибка 500...
|
|||
|
||||
| korob2001 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: 13 Всего: 61 |
Ты пробывал запустить тестовую программу?
На пиши какая у тебя структура каталогов? Там расчитано на такую: CGI скрипты - /cgi-bin/free/ Если у тебя скипты CGI лежат непосредственно в каталоге /cgi-bin/, то тебе нужно будет изменить пути к Perl файлам, в файле index.htm -------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
|||
|
||||
| Папа Кастет |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 8.9.2004 Где: Москва Репутация: нет Всего: нет |
тестовую прогу не пытался. Я сразу залил на сервак. Структура на скрваке и есть /cgi-bin/free , но тоже выдаёт ошибку
|
|||
|
||||
| korob2001 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: 13 Всего: 61 |
Попробуй залить на сервер, тестовую программу. Нам сейчас нужно узнать установлен ли модуль CGI.pm на сервере. Положи файл в каталог cgi-bin/. Другими словами, если файл называется test.pl, то путь к нему должен быть примерно таким:
http://имя_сайта.ru/cgi-bin/test.pl Если прога нормально запустится, дай знать. Тогда перейдём к установке чата. -------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
|||
|
||||
| Папа Кастет |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 8.9.2004 Где: Москва Репутация: нет Всего: нет |
окэ. сегодня к ночи залью
|
|||
|
||||
| Папа Кастет |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 8.9.2004 Где: Москва Репутация: нет Всего: нет |
Залил тестовый файл. Выдаёт ошибку 500
|
|||
|
||||
| GoodBoy |
|
|||
![]() Главный джедай ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 3886 Регистрация: 8.1.2003 Где: КМВ Репутация: 4 Всего: 83 |
Проверь следующее:
1. Права должны стоять 755; 2. Файл должен быть сохранен в Юниксовой кодировке; 3. На сервере должно быть разрешено использовать в качестве CGI-скриптов файлы с расширением .pl. Если не поможет, то покажи фрагмент файла error.log с сообщением об ошибке!! |
|||
|
||||
| Папа Кастет |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 8.9.2004 Где: Москва Репутация: нет Всего: нет |
Заработало. (забыл чимод выставить 755
|
|||
|
||||
| korob2001 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: 13 Всего: 61 |
Если все html файлы у тебя хранятся в каталоге /www/, то все файлы html, htm, shtml должны быть в каталоге /www/free/. Что качается Perl файлов, то они должны быть в каталоге /cgi-bin/free/, на них тоже выстави соответствуюшие права.
Для входа на гланую страницу путь должен быть примерно таким: http://адрес_сайта/free.index.htm Кстати, проверь пути в фале index.htm к файлам bazar.pl и login.pl . Добавлено @ 12:39 Вот ещё что заметил. В твоих файлах был указан путь к perl так: #!/usr/local/bin/perl Если у тебя заработал тестовый пример, то там путь был таким: #!/usr/bin/perl В каждом файле с расширением .pl замени первую строку, на следующую: #!/usr/bin/perl И попробуй запустить снова. -------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
|||
|
||||
| Папа Кастет |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 8.9.2004 Где: Москва Репутация: нет Всего: нет |
Ё-моё! Конечно! Без локал...
|
|||
|
||||
| Папа Кастет |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 8.9.2004 Где: Москва Репутация: нет Всего: нет |
Не получается. И с параметром , который ты говорил (use CGI) и без него ошибка 500... Может проблема в том,что я заливаю 1 файл, к нему и обращаюсь... Хотя нет, там и к одному можно обратиться...
|
|||
|
||||
| korob2001 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: 13 Всего: 61 |
Заливай все файлы в такой структуре:
HTML файлы - /каталог_с_html/free/ CGI файлы - /cgi-bin/free/ Они взаимосвязаны, для открытия чата обратись к файлу index.htm Путь должен быть примерно таким: http://имя_сайта/free/index.htm -------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
|||
|
||||
| Папа Кастет |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 8.9.2004 Где: Москва Репутация: нет Всего: нет |
Забавная ситуация выходит. Скрипт базар.пл выдаёт 500 ошибку, скрипт логин.пл выдаёт тоже ошибу. Скрипт регистрацион.пл работает, скрипт супервизор.пл тоже работает... Не понятно...
|
|||
|
||||
| korob2001 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: 13 Всего: 61 |
А ты ничего не удалял из тех файлов которые не работают? -------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
|||
|
||||
| Папа Кастет |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 8.9.2004 Где: Москва Репутация: нет Всего: нет |
Неа... Всё специально из архива взял... Из всех файлов удалил только локал из путей.
|
|||
|
||||
| korob2001 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: 13 Всего: 61 |
На каком хостинге ты хостишся? Дай адрес, я почитаю правила пользования хотингом.
-------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
|||
|
||||
| Папа Кастет |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 8.9.2004 Где: Москва Репутация: нет Всего: нет |
www.arbatek.ru
|
|||
|
||||
| korob2001 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: 13 Всего: 61 |
У тебя хост на базе Windows или Unix?
-------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
|||
|
||||
| Папа Кастет |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 8.9.2004 Где: Москва Репутация: нет Всего: нет |
Юникс-хостинг
|
|||
|
||||
| korob2001 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: 13 Всего: 61 |
Уже написал в службу поддержки, но ответа пока не получил.
-------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
|||
|
||||
| Папа Кастет |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 8.9.2004 Где: Москва Репутация: нет Всего: нет |
у них это долго =))) Лучше стукнись в асю к ним 312326498. Это типа как круглосуточный саппорт =)))
|
|||
|
||||
| korob2001 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: 13 Всего: 61 |
Туда и написал, ответа нет. Сегодня напишу ещё раз.
-------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
|||
|
||||
| Папа Кастет |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 8.9.2004 Где: Москва Репутация: нет Всего: нет |
А что написать ? Я у них в контакте есть, может напишешь мне мессагу,а я им перекину
|
|||
|
||||
| Папа Кастет |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 8.9.2004 Где: Москва Репутация: нет Всего: нет |
молчит арбатек ?
|
|||
|
||||
| korob2001 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: 13 Всего: 61 |
Молчит. Придётся немного подождать.
-------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
|||
|
||||
![]()
|
| Правила форума "Perl: CGI программирование" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Perl: разработка для Web | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |