Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » IkonBoard и другие форумы » Ikonboard v.2 » Хак Personal avatar (пользователь может закачивать аватар)

Модерирует : Antuan

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4

Открыть новую тему     Написать ответ в эту тему

Aleks2002



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Хак Personal avatar

 
Описание хака:
 

Цитата:
 
В register.cgi и profile.cgi появятся пункты:
- закачать аватар с вашего диска,  
- указать ссылку на аватар с другого сайта,
- выбрать аватар из списка аватаров форума.  
 
При установке хака можно установить максимальный размер закачиваемых аватаров в kb и px. По умолчанию в хаке прописаны размеры max=30 kb и 64x64 px.
 
В директории картинок ikonboard/avatars создаётся поддиректория personal.
И если юзер выберет персональный аватар (закачает с диска или укажет ссылку), то его аватар автоматически загрузится в папку avatars/personal и автоматически переименовывается в имяюзера.gif .  
В будущем, если он захочет сменить аватар, то старый аватар автоматически заменяется на новый.  
 

 
 
Хак можно скачать с сайта производителя или  
из местного файлового архива

Всего записей: 299 | Зарегистр. 12-03-2002 | Отправлено: 06:29 29-05-2002 | Исправлено: lynx, 04:59 28-12-2003
Novator



Newbie
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Ну, в общем, ситуация такая с аватарами...
 
lynx оказалась права - дело в файле icon.lib, а именно, в том, что я, в своё время, вносил в него дополнительно строку для отображения всех страниц в правильной кодировке "Кириллица windows"...
как только я заменил изменённый файл на родной - всё заработало...  
 
второй косяк - мой русский ник администратора - файл в папку пересылается, но отображаться не хочет... под другие зарегиные ники на английском, картинки переименовываются, независимо от исходного названия на диске, под ник пользователя и отображаются... причём, даже если картинка больше дефолтных 64x64 - всё равно она отображается, но уже с этим размером...
 
короче говоря, буду пытаться рашить проблему с кодировкой страниц каким-либо другим образом, а не простым добавлением строки после копирайтов:  
 
charset( 'windows-1251' );
 
ну и, параллельно, хочу закинуть просьбу в форум хостера о том, чтобы они задали кодировку вин у себя по умолчанию... тогда было бы совсем просто...
 
в самом крайнем случае придётся пожертвовать аватарами, поскольку, каждый раз менять кодировку каждому пользователю - весьма проблематично...
 
p.s. отдельное спасибо lynx!!

Всего записей: 15 | Зарегистр. 20-08-2003 | Отправлено: 21:09 07-09-2003
lynx



Advanced lynx
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Novator
 

Цитата:
короче говоря, буду пытаться рашить проблему с кодировкой страниц каким-либо другим образом, а не простым добавлением строки после копирайтов:  
 
charset( 'windows-1251' );  

 
Вот смотри:
 
FAQ по IkonBoard v.2  » Проблема с кодировкой: все решения в этой теме
 
Тебе нужен способ 2:
 

Цитата:
 
Способ 2.  
В каждом скрипте находим строку:  
 
 
Код:
print header();  
 
 
и меняем её на:  
 
 
Код:
print header('text/html; charset=windows-1251');  

 
 

Цитата:
 хочу закинуть просьбу в форум хостера о том, чтобы они задали кодировку вин у себя по умолчанию.

 
Я сама себе хостер, на серваке прописано, что надо,  и тем ни менее, прописала себе в каждом скрипте ^^

Всего записей: 11712 | Зарегистр. 08-05-2001 | Отправлено: 20:45 08-09-2003
Novator



Newbie
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Ну что... в целом - получилось... однако, как и всегда со мной бывает - не без проблем...
 
не во всех файлах пришлось заменить строки и после того, как я это сделал в тех, где это было нужно - сталкнулся со следующей проблемой - не могу выйти из форума, чтобы войти потом в него с гостя как любой другой пользователь(хоть тот же самый)...
 
файл, отвечающий за это - loginout.cgi
там пришлось перетирать в двух местах строки:
 
print header(-cookie=>[$namecookie, $passcookie]);       (line 117)
 
и
 
print header(-cookie=>[$namecookie, $passcookie, $trashcookie]); (line 171)
 
 
я просто земенял их на:
print header('text/html; charset=windows-1251');  
 
потом пробовал дополнить:
print header('text/html; charset=windows-1251'); (-cookie=>[$namecookie, $passcookie]);        
 
 
результат один и тот же - при внесении изменений не могу выйти из форума...
словом, пока пришлось оставить исходный вариант и на промежуточных страницах(например, Вы сейчас не находитесь в форуме) выскакивает неверная кодировка, но за-то получается выйти из форума до гостя...
 
Так вот, практически во всех скриптах, в которых пришлось вносить изменения - я именно заменял строки, а не дополнял...  не повлияет ли это в дальнейшем на корректность работы? если я делал не правильно, то как тогда правильно и как быть с этим loginout.cgi?
 
Аватары - работают...  
 
 

Всего записей: 15 | Зарегистр. 20-08-2003 | Отправлено: 22:57 08-09-2003
Shurik



Главком. флейма
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Novator
если у тебя косяки с русским на всём форуме, так это надо трясти хостера, чтобы в CGI.pm меняли строку:
$self->charset('ISO-8859-1');  
 
на  
 
$self->charset('win-1251');
 
и всё будет супер.

----------
Metal Bands...

Всего записей: 3171 | Зарегистр. 11-06-2001 | Отправлено: 12:41 12-09-2003
lynx



Advanced lynx
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Shurik

Цитата:
косяки с русским на всём форуме, так это надо трясти хостера, чтобы в CGI.pm меняли строку:  
$self->charset('ISO-8859-1');  
 
на  
 
$self->charset('win-1251');  
 

 
Кодировка в этом модуле только на Винде (убогой) задается, в никсах нет ее и не надо.

Всего записей: 11712 | Зарегистр. 08-05-2001 | Отправлено: 19:30 12-09-2003
trew

Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
lynx Так все таки достаточно хака, который лежит в архиве или его надо доработать?

Всего записей: 716 | Зарегистр. 15-11-2003 | Отправлено: 00:57 27-12-2003
lynx



Advanced lynx
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
trew
 
Вполне достаточно. Никто особо на него не жаловался.

Всего записей: 11712 | Зарегистр. 08-05-2001 | Отправлено: 07:39 27-12-2003
trew

Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
lynx Тут в постах разные дороботки, и не очень ясно...

Всего записей: 716 | Зарегистр. 15-11-2003 | Отправлено: 15:40 27-12-2003
lynx



Advanced lynx
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
trew
 

Цитата:
Тут в постах разные дороботки, и не очень ясно...  

 
Ну, а попробуй сначала сам хоть что-то сделать, а? Хак прекрасно пригоден без доработок.
 

Всего записей: 11712 | Зарегистр. 08-05-2001 | Отправлено: 01:59 28-12-2003
trew

Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
lynx  Попробывал. Хак я поставил , но добавление аватаров не происходит( правда я повторно еще проверяю)...external  работает, а personal  ругается , что не видет файла , который я выбираю , т.е. ему как-бы нечего добавить.
К сожалению , что искать знаю,...но найти не могу

Всего записей: 716 | Зарегистр. 15-11-2003 | Отправлено: 02:42 28-12-2003
lynx



Advanced lynx
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
trew
 
Основные ошибки при установке этого хака:
-  не создана папка personal в директории с аватарами.  
- не убрана строка  
$CGI::DISABLE_UPLOADS = 1;                # Disable uploads
или ее можно поменять на  
$CGI::DISABLE_UPLOADS = 0;                # Disable uploads
 

Всего записей: 11712 | Зарегистр. 08-05-2001 | Отправлено: 04:37 28-12-2003
trew

Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
lynx Да вот и я на нее смотрю ...в глаза бьет, а рука не поднимается...
 
 
Добавлено
lynx Да, спасибо, это оно и есть , но есть еще одна ложка дегтя, я думаю...  не знаю что и думать : когда аватары загружаются на сервер, они загружаются скриптом в текстовом режиме и  выводятся соответственно...Но строку, которая это делает я так и не нашел?!(пермишены правильные и картинки лежат по адресу).  
Спасибо.

Всего записей: 716 | Зарегистр. 15-11-2003 | Отправлено: 04:52 28-12-2003 | Исправлено: trew, 05:43 28-12-2003
lynx



Advanced lynx
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
trew
 
 

Цитата:
 когда аватары загружаются на сервер, они загружаются скриптом в текстовом режиме и  выводятся соответственно...Но строку, которая это делает я так и не нашел?!

 

Код:
 
   # Check if the file is in GIF format and have the right extention
 
        unless (($personal =~ /\.gif$/) && ($query->uploadInfo($personal)->{'Content-Type'} eq "image/gif")) {
            print header(); &error("Registering&The personal avatar you specified for upload must be in GIF format.");
 
 

 

Всего записей: 11712 | Зарегистр. 08-05-2001 | Отправлено: 07:27 28-12-2003
trew

Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Проверка на соответствие формату работает, тут все правильно. Но есть другая строка , которая мне не нравится:
 
## Set output file location
 
        $filetomake = $imagesdir . "avatars/personal/" . $memberfiletitle . ".gif";
Вот так она написана в инструкции и так я ее записал, но почему путь через точки( или я ошибаюсь)?
 
 
Добавлено
Беру картинку и загружаю ее сам в папку в бинарном режиме-все работает, то же делает скрипт, картинка присутствует но не выводится, т.е. скрипт ее в бинарном режиме не грузит.
Если провайдер не поменял Unix  на NT , то другие варианты я перебрал...

Цитата:
# Check if the file is in GIF format and have the right extention  
тут и ниже правильно, сверялся не однократно и даже методом "научного тыка"...
Может есть , что я упустил?

Всего записей: 716 | Зарегистр. 15-11-2003 | Отправлено: 15:22 28-12-2003
branditc

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
У меня такая же проблема, поставил хак, аватары при регистрации и изменении можно задавать из инета или сети, а с жесткого диска выдает ошибку.
Строка в 2-х файлах register и prifile стера
$CGI::DISABLE_UPLOADS = 1;
 
Что подскажите?

Всего записей: 8 | Зарегистр. 06-02-2004 | Отправлено: 21:36 06-02-2004
trew

Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
branditc  Я решил проблему таким образом, создал файл .htaccess ( с точкой)и внем прописал такие строчки:
 
Код:
CharsetSourceEnc windows-1251  
        CharsetRecodeMultipartForms Off

Это решило проблему с кирилицей и с правильной загрузкой gif. А файл надо залить в директорию со скриптами.

Всего записей: 716 | Зарегистр. 15-11-2003 | Отправлено: 02:58 07-02-2004
branditc

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Создал файл .htaccess скопировал в директорию /cgi/ikonboard/.htaccess
осле этого форум вообще не ахотел грузиться.
выдается окошко.  
 
<i>Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator, webmaster@localhost and inform them of the time the error occurred, and anything you might have done that may have caused the error.
 
More information about this error may be available in the server error log.</i>
 
в логах сказано:
 
[Sat Feb 07 09:22:13 2004] [alert] [client 192.168.100.64] /home/192.168.100.64/
cgi/ikonboard/.htaccess: Invalid command 'CharsetSourceEnc', perhaps mis-spelled
 or defined by a module not included in the server configuration
 
у меня все хостится на Апаче (денвер-2) +activeperl под виндой, я гоняю пока на локах лосте. и гонять ещё месяца 2 буду, пока сервак не приедет, так что надо что-то решать с форумом.
 
подскажите ещё что-нить.
 

Всего записей: 8 | Зарегистр. 06-02-2004 | Отправлено: 11:43 07-02-2004
trew

Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
branditc А форум стоит локале ?

Цитата:
/home/192.168.100.64/  
cgi/ikonboard/.htaccess
это разве локальный путь? По моему  надо проверить пути...
 
 
 
Добавлено
Вот топик. как установить на локале:  http://forum.ru-board.com/topic.cgi?forum=21&topic=0487#1

Всего записей: 716 | Зарегистр. 15-11-2003 | Отправлено: 18:29 07-02-2004
lynx



Advanced lynx
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
branditc

Цитата:
в логах сказано:  
 
[Sat Feb 07 09:22:13 2004] [alert] [client 192.168.100.64] /home/192.168.100.64/  
cgi/ikonboard/.htaccess: Invalid command 'CharsetSourceEnc', perhaps mis-spelled  
 or defined by a module not included in the server configuration  

 
Неправильная директива CharsetSourceEnc или необходимый для нее модуль не включен в серверную конфигурацию. Короче ошибка в .htaccess.
 
Добавлено
branditc
 
Только почему ты спрашиваешь это в теме про персональный аватар? Потому что она самая верхняя была? Если хочешь, чтобы тебе на форуме помогали, уважай правила форума и не лепи мессаги, где попало.

Всего записей: 11712 | Зарегистр. 08-05-2001 | Отправлено: 22:22 07-02-2004
branditc

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
спрашиваю потому, что у меня не закачиваются аватары с жеского диска.(см. выше)
 
 
$CGI::DISABLE_UPLOADS = 0; # Disable uploads  
не страбатывает
 
 
вот сказали что надо что-то править в .htaccess
 
так что делать???
 
 
 

Всего записей: 8 | Зарегистр. 06-02-2004 | Отправлено: 03:02 12-02-2004
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4

Компьютерный форум Ru.Board » IkonBoard и другие форумы » Ikonboard v.2 » Хак Personal avatar (пользователь может закачивать аватар)


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru