Косяк с BBcode

Проблемы с установкой или работой phpBB 2.0.x? Ищите ответы здесь!
mauSdeTank
phpBB 1.0.0
Сообщения: 4
Стаж: 17 лет 8 месяцев

Косяк с BBcode

Сообщение mauSdeTank »

В общем, когда в url= засовываю ссылку, в которой содержаться пробелы, или русские символы - не воспринимает BBcode, а пишет в топ просто как текст, то есть ссылка не воркает. Чего делать?
C_Mag
phpBB 1.2.0
Сообщения: 14
Стаж: 19 лет 3 месяца

Сообщение C_Mag »

mauSdeTank писал(а):В общем, когда в url= засовываю ссылку, в которой содержаться пробелы, или русские символы - не воспринимает BBcode, а пишет в топ просто как текст, то есть ссылка не воркает.
Все логично, никаких косяков. Стоит проверка на вводимый адрес, если он соответствует структуре адреса сайта, то работает, если нет - то не работает. Сайтов с пробелами и русскими символами нет, поэтому и не работает.
Чего делать?
Вводить нормальные адреса.
Я знаю PHP, Perl, JavaScript и много других страшных слов!
mauSdeTank
phpBB 1.0.0
Сообщения: 4
Стаж: 17 лет 8 месяцев

Сообщение mauSdeTank »

Ладно, вот вам пример из игрушки одной:

http://avalon.darkagesworld.com/vr/comm ... в%20Темный

Ладно, вместо проблема - "%20", а вместо русских букаф что?

Добавлено спустя 1 минуту 52 секунды:

Кстати, тупо убрать проверку - монжо?
Аватара пользователя
Archie
phpBB 1.2.1
Сообщения: 22
Стаж: 17 лет 8 месяцев

Сообщение Archie »

C_Mag

По моему через RewriteMod в .htaccess можно сделать, url с кириллицей

Добавлено спустя 16 минут 30 секунд:

mauSdeTank: urlencode() вообще-то принято использовать в таких делах, поэтому пользуйся этой утилитой: http://www.exadium.com/tools/urlencode-urldecode (в низу вбиваешь ссылку и жмёшь на Encode )
The ninja admin will jump trough the window and format your c:\ while you sleep like a baby...
mauSdeTank
phpBB 1.0.0
Сообщения: 4
Стаж: 17 лет 8 месяцев

Сообщение mauSdeTank »

Archie
Спасибо .а другие варианты решения проблемы есть? Вот на счет .htaccess подробнее можно?
Аватара пользователя
Alek$
Former team member
Сообщения: 2616
Стаж: 19 лет 8 месяцев
Откуда: Новосибирск
Поблагодарили: 3 раза

Сообщение Alek$ »

mauSdeTank
еще как вариант можно попробовать подправить регулярку в bbcode.php, но для этого надо иметь доступ к файлам :)
Самая страшная ошибка, это ошибка без видимых причин и конкретных последствий.
phpBB3 [db_update.php generator]
Первая помощь по всем phpBB-вопросам: phpBB2 и phpBB3 FAQ; Правила общения;
Все консультации в icq или личке - на платной основе.
Аватара пользователя
Archie
phpBB 1.2.1
Сообщения: 22
Стаж: 17 лет 8 месяцев

Сообщение Archie »

mauSdeTank:
.htaccess я привёл в пример, через него кодировать сцылки не получится :) Единственный метод это то что предложил Alek$, покопаться в шаблоне Регулярных Выражений. Я сейчас посмотрю что там... ;)

Добавлено спустя 13 минут 21 секунду:

Окей, открой /includes/bbcodes.php

Найди строчку:

Код: Выделить всё

 $patterns[] = "#\[url=([\w]+?://[\w\#$%&~/.\-;:=,?@\[\]+]*?)\]([^?\n\r\t].*?)\[/url\]#is"; 
Поменяй её на:

Код: Выделить всё

 $patterns[] = "#\[url=([\w]+?://[\w\#$%&~/.А-Яа-я \-;:=,?@\[\]+]*?)\]([^?\n\r\t].*?)\[/url\]#is"; 

Это разрешит тебе вставлять кирилицу только через yyyy ;)

p.s. Просто незаменимая тулза: http://www.solmetra.com/scripts/regex/index.php
Последний раз редактировалось Archie 04.08.2007 9:16, всего редактировалось 1 раз.
The ninja admin will jump trough the window and format your c:\ while you sleep like a baby...
C_Mag
phpBB 1.2.0
Сообщения: 14
Стаж: 19 лет 3 месяца

Сообщение C_Mag »

Archie писал(а):C_Mag

По моему через RewriteMod в .htaccess можно сделать, url с кириллицей
Можно. Даже некоторые сайты используют русские маски адресов. Но пока это только как альтернатива.
Вообще я говорил не об этом, а о том, какая структура проверяется в BB кодах :)
И Вы также правы на счет использования UrlDecode. ИМХО,это лучше чем добавлять русские символы в регуляры, это может глюки вызвать.
Я знаю PHP, Perl, JavaScript и много других страшных слов!
Аватара пользователя
Archie
phpBB 1.2.1
Сообщения: 22
Стаж: 17 лет 8 месяцев

Сообщение Archie »

C_Mag
Ну с БД глюков быть не должно так как интерпретация ссылок происходит в функции SecondPass(), это значит что до того как попасть в БД, весь текст (включая ссылки) кодируется UrlEncode (а значит безразлично на каком языке ссылка), и только когда ты просматриваешь сообщение, ббкод переводится в HTML. А вот будет ли работать сама ссылка, мы сейчас проверим ;)

Добавлено спустя 27 минут 24 секунды:

Блин, маленькие дети дома + удлинитель + программирование, плохо уживаются вместе :))) Окей, значит так, потестил - работает как надо, кроме одного момента (с пробелом). Пофиксил пробел, всё работает ;)
The ninja admin will jump trough the window and format your c:\ while you sleep like a baby...
C_Mag
phpBB 1.2.0
Сообщения: 14
Стаж: 19 лет 3 месяца

Сообщение C_Mag »

С БД никаких глюков не будет, даже если не кодировать. Глюки могут быть при обработке строки.
Но даже русские символы еще можно допустить, а пробелы там точно лишние. ИМХО.
Я знаю PHP, Perl, JavaScript и много других страшных слов!
Аватара пользователя
Archie
phpBB 1.2.1
Сообщения: 22
Стаж: 17 лет 8 месяцев

Сообщение Archie »

C_Mag
Человек попросил с пробелом, а значит лишним быть не может. Хотя если честно, админов использующих кириллицу в адресах надо по рукам линейкой
The ninja admin will jump trough the window and format your c:\ while you sleep like a baby...
Аватара пользователя
Alek$
Former team member
Сообщения: 2616
Стаж: 19 лет 8 месяцев
Откуда: Новосибирск
Поблагодарили: 3 раза

Сообщение Alek$ »

Archie писал(а):p.s. Просто незаменимая тулза: http://www.solmetra.com/scripts/regex/index.php
Точно, жаль, что я не знал про нее раньше :( Сенкс за ссылку.
Archie писал(а):Хотя если честно, админов использующих кириллицу в адресах надо по рукам линейкой
Иногда этого трудно избежать :( Например, в поиске по ресурсу.
Самая страшная ошибка, это ошибка без видимых причин и конкретных последствий.
phpBB3 [db_update.php generator]
Первая помощь по всем phpBB-вопросам: phpBB2 и phpBB3 FAQ; Правила общения;
Все консультации в icq или личке - на платной основе.
mauSdeTank
phpBB 1.0.0
Сообщения: 4
Стаж: 17 лет 8 месяцев

Сообщение mauSdeTank »

Спасибо всем большое 8)
Shurik_rjab
phpBB 1.2.1
Сообщения: 20
Стаж: 17 лет 2 месяца
Откуда: Мариуполь

Сообщение Shurik_rjab »

Посоветуйте, плиз, - как такое-же сделать в phpBB3 ?
Аватара пользователя
/DiOs
Former team member
Сообщения: 1139
Стаж: 19 лет 2 месяца
Откуда: Ленинград

Сообщение /DiOs »

Ну, во-первых, про тройку и спрашивать надо в троечном форуме, дав, при желании и необходимости, ссылку на этот топик.

Во-вторых, как я наслышан, у тройки в регекспах и без того проблем с русским хватает...
И если я неправ, пусть старшие товарищи поправят меня

Вернуться в «Поддержка phpBB 2.0.x»