Форум сетевых администраторов
Показаны 47 сообщений на этой странице

Форум сетевых администраторов (http://netadmin.ws/forum/index.php)
- VBulletin 2.x.x (http://netadmin.ws/forum/forumdisplay.php?forumid=45)
-- 2polo (http://netadmin.ws/forum/showthread.php?threadid=2820)


Помещено Vanish 24-08-2002 в 21:37:

Exclamation 2polo

Есть баг в форме быстрого ответа.
Глюк жава скрипта. Попробуй имя H(,)(')1ig4n запихнуть в форму. Очевидно надо апостроф обходить.

__________________
No pity, no mercy, no regret.


Помещено Total 24-08-2002 в 22:17:

H(,)(')1ig4n

__________________
Интернет форум для всех Ты тут еще не был? ...
рейтинг форумов Админы форумов - сюда!!!


Помещено Zoomer 24-08-2002 в 23:04:

H(,)(')1ig4n
А что?

__________________
SITE


Помещено Denveroid 24-08-2002 в 23:20:

Vanish
Да, ты прав... Ща будем править. Обратные слеши не нравятся тоже соответственно...

__________________
`
SiteMaker.Ru - Академия сайтостроительства


Помещено Zoomer 24-08-2002 в 23:33:

Ща как направят
Как вам мой финальный аватарчик?

__________________
SITE


Помещено Vanish 25-08-2002 в 08:19:

Denveroid
надо ник средствами пхп обработать, экранировать для начала quotemeta.

__________________
No pity, no mercy, no regret.


Помещено Zoomer 25-08-2002 в 09:20:

Блин, зачем дурью маяться, запретить ввод определённых символов при создании логина и всё!

__________________
SITE


Помещено Vanish 25-08-2002 в 09:56:

Zoomer определенно метод исключений не самый лучший выход.
А если пользователю нужен ник именно с этим символом?

__________________
No pity, no mercy, no regret.


Помещено MCTarakan 25-08-2002 в 13:26:

вот именно! надо делать форум наиболее удобным для юзверя!

__________________
yMC.ru - хомяк музыканта


Помещено Denveroid 25-08-2002 в 14:18:

Vanish
quotemeta тебе не поможет.
Надо addslashes юзать:
$post['username'] = addslashes($post['username']);
Вставляться в форму будет оригинальное имя, а вот имя в сообщениях будет отображаться со слешами перед спец. символами.
На яваскрипте надо это делать... Ща сделаю. Как у нас там... string = stringObj.replace(rgExp, replaceText)

Ща посмотрел... Не получится это так просто сделать. Придется добавить переменную:

В темплейте posbit:
=============
строку:
<a href="java script: ins('$post[username]')">$post[username]</a>
заменить на:
<a href="java script: ins('$post[username2]')">$post[username]</a>

В файле showthread.php:
=================
после строки:
$postbits .= getpostbit($post);
добавить строку:
$post['username2'] = addslashes($post['username']);

Все. В сторону яваскрипт лениво думать

PS. Убрать пробел между java и script.
PS2. polo, не смог я добавить сообщение сразу после своего. Постоянно выдает ошибку базы. Склейка глючит, я так понимаю. Пришлось только пост редактировать

__________________
`
SiteMaker.Ru - Академия сайтостроительства


Помещено MCTarakan 25-08-2002 в 16:34:

а я давно говорил, что склейка парит мозги!

__________________
yMC.ru - хомяк музыканта


Помещено polo 25-08-2002 в 17:01:

'test'

__________________
Всегда есть решение.


Помещено Vanish 25-08-2002 в 19:03:

Denveroid
>> Вставляться в форму будет оригинальное имя, а вот имя в сообщениях будет отображаться со слешами перед спец. символами.

В этом вся и проблема, я вот тоже над этим думаю. Чувствую надо какой-то флажок выставлять, и если он будет вскинут каким-то образом чистить ник перед добавлением сообщения.
Да еще $post['username2'] = addslashes($post['username']);
думаю стоит делать только тогда, когда найдены символы которые нужно экранировать (хотя х3 какой вариант лучше).

polo
Ты попробуй кликом по нику добавить его в форму быстрого ответа, там весь глюк.

__________________
No pity, no mercy, no regret.


Помещено H(,)(')1ig4n 25-08-2002 в 19:22:

Вот вам типа мой ник, можете кликать..... мне не жалко собственно....

__________________
** Save the planet - KILL YOURSELF! ** (народная мудрость)


Помещено Denveroid 25-08-2002 в 19:40:

quote:
Да еще $post['username2'] = addslashes($post['username']);
думаю стоит делать только тогда, когда найдены символы которые нужно экранировать (хотя х3 какой вариант лучше).

Нее... ты что, это вообще будет глупостью. Ты предлагаешь пробегаться по стрингу каждого имени и искать спец. символы... это тормоза полные Лучше уж оставить так, как я сделал. Ð_то на скорости работы не сказывается практически, но правда переменная добавилась.

__________________
`
SiteMaker.Ru - Академия сайтостроительства


Помещено Vanish 25-08-2002 в 19:57:

Не я тут преследовал другую проблему.
Сам же писал
>> Вставляться в форму будет оригинальное имя, а вот имя в сообщениях будет отображаться со слешами перед спец. символами
а при выполнении условия можно экранировать символы и флажок вскинуть...

__________________
No pity, no mercy, no regret.


Помещено Denveroid 25-08-2002 в 21:14:

Vanish
ну дык тебе придется парсить каждое имя для того, чтобы знать врубать флажок или нет! Ты это понимаешь?

__________________
`
SiteMaker.Ru - Академия сайтостроительства


Помещено Vanish 25-08-2002 в 21:18:

Denveroid
Ладно, давай с другой стороны. Что ты предлагаешь для решения проблемы с обратными слэшами в посте?
З.Ы. Функции пхп'е написаны на Си, я думаю потеря производительности будет мала, тем более уж я явно не 2000 юзверей одномоментно проверять буду. Я же не регулярными выражениями искать буду.

__________________
No pity, no mercy, no regret.


Помещено Denveroid 25-08-2002 в 21:25:

Vanish
Я уже предложил решение, читай выше. Единственный минус моего решения - добавление переменной

quote:
Я же не регулярными выражениями искать буду
Как ты собираешься искать?

__________________
`
SiteMaker.Ru - Академия сайтостроительства


Помещено Vanish 25-08-2002 в 21:29:

хотя бы strpos мне же не надо искать все вхождения достаточно найти хотя-бы один "запретный" символ.
А в твоем решении в имени юзверя не будет /' или // ?

__________________
No pity, no mercy, no regret.


Помещено Denveroid 25-08-2002 в 21:40:

Vanish
эээээ брат... ты не прав! Ты знаешь, что делает фунцкия addslashes? Правильно - она добавляет слеш перед спец. символами! Теперь попробуй мой метод и скажи, что он глючит! Все работает как надо. Имя юзера будет отображаться как надо и вставляться в форму как надо. Просто я сначала хотел сделать это средствами javascript, но лениво...

__________________
`
SiteMaker.Ru - Академия сайтостроительства


Помещено polo 25-08-2002 в 23:43:

quote:
Ты попробуй кликом по нику добавить его в форму быстрого ответа, там весь глюк.

Ð_то я видел, но я другой глюк хочу исправить.

polo добавил 25-08-2002 в 23:43:15:
"test"

polo добавил 25-08-2002 в 23:43:29:
"test" 'test'

__________________
Всегда есть решение.


Помещено MCTarakan 26-08-2002 в 02:42:

H(,)(')1ig4n - дык с твоего ника этот разговор и завели!

MCTarakan добавил 26-08-2002 в 02:44:14:
polo и что за глюк и как исправления?

__________________
yMC.ru - хомяк музыканта


Помещено Vanish 26-08-2002 в 08:06:

Denveroid
Я знаю как работает addslashes, только все равно ты пытаешься добавить слеши и в тех именах где этого делать не надо. Теперь вопрос это тоже хорошо?
З.Ы. А на счет добавления в форму, я ошибся, там действительно будет все нормально.

Vanish добавил 26-08-2002 в 08:10:44:
MCTarakan
А у него сообщения не клеятся если апостроф есть, там ошибка с ДБ какая то, а точнее для MySQL символ апострофа так же является служебным/специальным.

__________________
No pity, no mercy, no regret.


Помещено Denveroid 26-08-2002 в 09:46:

Vanish

quote:
Теперь вопрос это тоже хорошо?
Ð_то нормально. У себя я уже сделал.
quote:
А у него сообщения не клеятся если апостроф есть, там ошибка с ДБ какая то, а точнее для MySQL символ апострофа так же является служебным/специальным

Дык экранировать надобно, с помощью той же addslashes

__________________
`
SiteMaker.Ru - Академия сайтостроительства


Помещено Vanish 26-08-2002 в 09:59:

Denveroid
Я про затраты времени.

__________________
No pity, no mercy, no regret.


Помещено Denveroid 26-08-2002 в 10:03:

Vanish
Ð_то быстрая функция, и тем более ты используешь ее для очень коротких стрингов и для небольшого кол-ва этих самых стрингов (имен юзеров). Так что использовать здесь что-то более умное я посчитал бессмысленным.

__________________
`
SiteMaker.Ru - Академия сайтостроительства


Помещено Vanish 26-08-2002 в 10:07:

Тогда вопрос решен.
Спасибо Denveroid'у за найденное оптимальное решение.
З.Ы. Истина рождается в спорах.

__________________
No pity, no mercy, no regret.


Помещено polo 26-08-2002 в 14:35:

да глюк я склеивания сообщений исправлял, а вот со всвкаой в форму ника вообще прикол:
Создал я новую переменную где надо, назвал $jsusername, заменил ее в шаблоне, точнее написал <a href="javascript:ins('$jsusername')">, и нихера не поменялось, я уже добавил там чуши всякой типа <a href="javascript:ins('Мать его заногу')">, нихера, всеравно вставляются имена пользователей, где это и как, и вообще этот js я иной раз не понимаю.

__________________
Всегда есть решение.


Помещено Denveroid 26-08-2002 в 15:59:

polo
$jsusername = addslashes($post['username']);
Так сделал? И куда конкретно ты это вставил?

__________________
`
SiteMaker.Ru - Академия сайтостроительства


Помещено polo 26-08-2002 в 18:33:

Не ну ради прикола, посмотрите код страницы и увидете что там стоит в <a href="javascript:ins('')">, а теперь нажмите на имя, все путем работает, не врубаюсь я чето

__________________
Всегда есть решение.


Помещено Denveroid 26-08-2002 в 19:38:

polo
Не могу понять в чем баг у тебя? По-русски объяснить можешь?
В showthread.php сделал изменения? В темплейте postbit сделал изменения? Какие проблемы тогда?? А лучше напиши конкретно, что делал, поэтапно, а то врубиться никак не могу.

__________________
`
SiteMaker.Ru - Академия сайтостроительства


Помещено polo 26-08-2002 в 20:04:

да это все я делал и это пустяки. Ты посмотри код страницы, и там где ссылка на js чтобы вставлять имя в форму что написано, а потом все поймешь.

polo добавил 26-08-2002 в 20:09:43:
для ясности в темплэйте postbit у меня стоит <a href="java script:ins('Какого хера')" class="topmenu">$bbuserinfo[username]</a>, так и глянь что там выдает в сурсе, одна так другая по другому, имя всталяется даже если его в сылке нет, каламбур какой-то.

__________________
Всегда есть решение.


Помещено Denveroid 26-08-2002 в 20:19:

Дык ты нажми на минусик рядом с именем и кликни теперь на имя! Вставится Какого хера Ты изменил только в одном месте. У тебя этот conraposts установлен... Измени в обоих местах.

__________________
`
SiteMaker.Ru - Академия сайтостроительства


Помещено Vanish 26-08-2002 в 20:24:

Все глючим потихоньку Ж)

__________________
No pity, no mercy, no regret.


Помещено polo 26-08-2002 в 20:33:

да уж, вот что значит лето без отддыха

__________________
Всегда есть решение.


Помещено Vanish 26-08-2002 в 20:36:

polonot good
Vanishnot good
поехало

__________________
No pity, no mercy, no regret.


Помещено polo 26-08-2002 в 20:37:

Да погоди ты, все под контролем

polo добавил 26-08-2002 в 20:38:51:
вот и H(,)(')1ig4n вставляется.

polo добавил 26-08-2002 в 20:42:42:

quote:
В файле showthread.php:
=================
после строки:
$postbits .= getpostbit($post);
добавить строку:
$post['username2'] = addslashes($post['username']);

Не знаю как showthread.php, я лично это делал в functions .php, в функции getpostbit.

__________________
Всегда есть решение.


Помещено Denveroid 26-08-2002 в 20:51:

polo
Ð_то не принципиально.
Наконец-то дошло

__________________
`
SiteMaker.Ru - Академия сайтостроительства


Помещено polo 26-08-2002 в 20:56:

да, не принципиально если использовать массив $post, но если другую переменную то обязательно, и я больше люблю извращятся в этой функции, так как она и так вся вверх ногами у меня .

__________________
Всегда есть решение.


Помещено MCTarakan 27-08-2002 в 01:30:

ну так гиде фиксы то? выкладывайте фиксы уважаемый polo!!! и для юзернема и для склейки, а еще я писал про глюк в хаке модераторов (что на главной странице, которые в выпадающем меню - у тебя тут все ок, а у меня в том хаке, что я отсюда скачал - обшибка в яве)...

__________________
yMC.ru - хомяк музыканта


Помещено MCTarakan 16-09-2002 в 21:55:

вот подымаю....

MCTarakan добавил 16-09-2002 в 21:56:50:
это про stuk_messages - а про модераторов что-то не нашел...

__________________
yMC.ru - хомяк музыканта


Помещено Total 20-09-2002 в 16:55:

Блин прочитал все это и нифига не понял... У меня стоит хак от поло склейки сообщений... Если идет второе и более добавлений

Total добавил 20-09-2002 в 16:55:40:
Блин прочитал все это и нифига не понял... У меня стоит хак от поло склейки сообщений... Если идет второе и более добавлений то кавычки идут \" \"

Как это исправить ?

__________________
Интернет форум для всех Ты тут еще не был? ...
рейтинг форумов Админы форумов - сюда!!!


Помещено Vanish 20-09-2002 в 17:45:

Вопрос решен

__________________
No pity, no mercy, no regret.


Помещено Total 20-09-2002 в 19:05:

Ага

__________________
Интернет форум для всех Ты тут еще не был? ...
рейтинг форумов Админы форумов - сюда!!!


Помещено MCTarakan 21-09-2002 в 13:57:

чего ага? а решение в студию?

__________________
yMC.ru - хомяк музыканта


Помещено Vanish 21-09-2002 в 14:17:

Все решения в постах ветки. Читай внимательнее!

__________________
No pity, no mercy, no regret.


Формат времени GMT. Текущее время 23:44.
Показаны 47 сообщений на этой странице

Powered by: vBulletin Version 2.2.4
Copyright © Jelsoft Enterprises Limited 2000, 2001.