From 755fec7f61a73c09a25958f7c3ca2c1784312dc4 Mon Sep 17 00:00:00 2001 From: Mzhelskiy Maxim Date: Mon, 22 Sep 2008 15:18:08 +0000 Subject: [PATCH] =?UTF-8?q?=D0=A2=D0=B5=D0=BF=D0=B5=D1=80=D1=8C=20=D0=B2?= =?UTF-8?q?=20=D0=B0=D0=B2=D1=82=D0=BE=D0=BF=D0=BE=D0=B4=D1=81=D1=82=D0=B0?= =?UTF-8?q?=D0=BD=D0=BE=D0=B2=D0=BA=D0=B5=20=D1=82=D0=B5=D0=B3=D0=BE=D0=B2?= =?UTF-8?q?=20=D0=BD=D0=B5=20=D1=83=D1=87=D0=B8=D1=82=D1=8B=D0=B2=D0=B0?= =?UTF-8?q?=D0=B5=D1=82=D1=81=D1=8F=20=D1=80=D0=B5=D0=B3=D0=B8=D1=81=D1=82?= =?UTF-8?q?=D1=80=20+=20=D0=B4=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5=D0=BD?= =?UTF-8?q?=D0=BE=20=D0=BF=D0=B5=D1=80=D0=B5=D0=BE=D0=BF=D1=80=D0=B5=D0=B4?= =?UTF-8?q?=D0=B5=D0=BB=D0=B5=D0=BD=D0=B8=D0=B5=20mb=5Fstrtolower()?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- classes/actions/ActionBlog.class.php | 2 +- .../modules/topic/mapper/Topic.mapper.class.php | 3 ++- .../modules/user/mapper/User.mapper.class.php | 3 ++- include/function.php | 16 ++++++++++++++-- 4 files changed, 19 insertions(+), 5 deletions(-) diff --git a/classes/actions/ActionBlog.class.php b/classes/actions/ActionBlog.class.php index 79731b81..dafe2a3c 100644 --- a/classes/actions/ActionBlog.class.php +++ b/classes/actions/ActionBlog.class.php @@ -854,7 +854,7 @@ class ActionBlog extends Action { * Проверяем текст комментария */ $sText=$this->Text_Parser(getRequest('comment_text')); - if (!func_check($sText,'text',2,3000)) { + if (!func_check($sText,'text',2,10000)) { $this->Message_AddError('Текст комментария должен быть от 2 до 3000 символов и не содержать разного рода каку','Ошибка'); return false; } diff --git a/classes/modules/topic/mapper/Topic.mapper.class.php b/classes/modules/topic/mapper/Topic.mapper.class.php index 448772bb..8d03e07d 100644 --- a/classes/modules/topic/mapper/Topic.mapper.class.php +++ b/classes/modules/topic/mapper/Topic.mapper.class.php @@ -547,12 +547,13 @@ class Mapper_Topic extends Mapper { } public function GetTopicTagsByLike($sTag,$iLimit) { + $sTag=mb_strtolower($sTag,"UTF-8"); $sql = "SELECT topic_tag_text FROM ".DB_TABLE_TOPIC_TAG." WHERE - topic_tag_text LIKE ? + LOWER(topic_tag_text) LIKE ? GROUP BY topic_tag_text LIMIT 0, ?d diff --git a/classes/modules/user/mapper/User.mapper.class.php b/classes/modules/user/mapper/User.mapper.class.php index 249ad43a..4006d77f 100644 --- a/classes/modules/user/mapper/User.mapper.class.php +++ b/classes/modules/user/mapper/User.mapper.class.php @@ -288,12 +288,13 @@ class Mapper_User extends Mapper { } public function GetUsersByLoginLike($sUserLogin,$iLimit) { + $sUserLogin=mb_strtolower($sUserLogin,"UTF-8"); $sql = "SELECT user_login FROM ".DB_TABLE_USER." WHERE - user_login LIKE ? + LOWER(user_login) LIKE ? and user_activate = 1 LIMIT 0, ?d diff --git a/include/function.php b/include/function.php index b0b3439a..77669fdf 100644 --- a/include/function.php +++ b/include/function.php @@ -22,11 +22,23 @@ * @return unknown */ if (!function_exists('mb_strlen')) { - function mb_strlen($s) { - return strlen($s); + function mb_strlen($s,$sEncode="UTF-8") { + $length = strlen(iconv($sEncode, 'Windows-1251', $s)); + return (int)$length; } } +/** + * Если не стоит расширения mb + */ +if (!function_exists('mb_strtolower')) { + function mb_strtolower($s,$sEncode="UTF-8") { + $s=iconv($sEncode,"Windows-1251",$s); + $s=strtolower($s); + $s=iconv("Windows-1251",$sEncode,$s); + return $s; + } +} /** * функция вывода отладочных сообщений через "хакерскую" консоль Дмитрия Котерова