2011-12-20 3 views
0

Мой Url Изменить на Seo Friendly, используя эту функцию + .htaccess. Мой проект находится на арабском языке!Unicode/UTF Seo Friendly Url (slug) Использование Php Mysql

function clean($title) { 

$seo_st = str_replace(' ', '-', $title); 
$seo_alm = str_replace('--', '-', $seo_st); 
$title_seo = strtolower(str_replace(' ', '', $seo_alm)); 

return $title_seo;} 

сейчас в моем URL я вижу это:

LOCALHOST/Новости/4/----- /

В чем проблема?

Благодаря

ответ

0

Проверьте ваше поле базы данных collation правильно установлен в UTF-8, и что ваше соединение UTF-8 SET NAMES "utf8".

Если вы используете любые символы из значений в своих сценариях, убедитесь, что они тоже UTF-8.

+0

в моей конфигурации: mysql_query ("SET NAMES 'utf8'"); И Моя сортировка: utf8_persian_ci – user1086738

+0

Отлаживайте свою цепочку, узнайте, когда персонажи становятся коррумпированными. – Halcyon

1

Попробуйте это в вашем коде, прежде чем делать что-нибудь еще, и скажите мне, если это работает:

mb_internal_encoding("UTF-8"); 
mb_regex_encoding("UTF-8"); 
+0

Уже в файле конфигурации. Я поместил весь код UTF-8 в My Config File. Но я не знаю, в чем проблема. – user1086738

1

Попробуйте это ...

$dbconnect = @mysql_connect($server,$db_username,$db_password); 
$charset = @mysql_set_charset('utf8',$dbconnect); 


<head> 
    <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8" /> 
</head> 
0

Попробуйте ... это работает для меня

<?php 
 
    function clean_url($text) 
 
    { \t  
 
\t $code_entities_match = array(' ','&amp;','--','&quot;','!','@','#','$','%','^','&','*','(',')','_','+','{','}','|',':','"','<','>','?','[',']','\\',';',"'",',','.','/','*','+','~','`','=','"'); 
 
\t $code_entities_replace = array('-','-','','','','','','','','','','','','','','','','','','','','','','','',''); 
 
\t $text = str_replace($code_entities_match, $code_entities_replace, $text); 
 
\t return urlencode($text); \t 
 
    \t } 
 
?>