Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> URL с французскими буквами 
:(
    Опции темы
keen_
Дата 17.12.2010, 14:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 148
Регистрация: 14.9.2006
Где: Москва

Репутация: -3
Всего: -1



Есть некий движок у меня. Добавил в файл functions.php специфические французские буквы типа àâä. Чтобы в URL прописывался адрес на французском, например http://domain.com/àâä.html

И почти всё нормально - адрес прописывается. Но! Сама страничка по этому адресу не отображается. Показывается просто 404.

Как я понимаю, нужно ещё в каком-то файле дописать какой-то код, чтобы странички отображались. Не подскажите что именно и где? Приблизительно хотя бы.

Вот кодировка:

Код

    // Функция для ЧПУ - транслит русского заголовка в английские буквыГ ГўГ¤
    function translit($inrus, $special = false) {
        $rus =   array('а', 'б', 'в', 'г', 'д', 'е', 'ё', 'ж', 'з', 'и', 'й', 'к', 'л', 'м', 'н', 'о', 'п', 'р', 'с', 'т', 'у', 'ф', 'х', 'ц', 'ч', 'ш', 'щ', 'ъ', 'ы', 'ь', 'э', 'ю', 'я', ' ');
        $rusUp = array('А', 'Б', 'В', 'Г', 'Д', 'Е', 'Ё', 'Ж', 'З', 'И', 'Й', 'К', 'Л', 'М', 'Н', 'О', 'П', 'Р', 'С', 'Т', 'У', 'Ф', 'Х', 'Ц', 'Ч', 'Ш', 'Щ', 'Ъ', 'Ы', 'Ь', 'Э', 'Ю', 'Я', ' ');
        $lat = array('a', 'b', 'v','g','d','e','e','zh','z','i','j','k','l','m','n','o','p','r','s','t','u','f','h','c','ch','sh','sh','','i','','e','u','ya','_');
        $characters = 'àâäabcdefghijklmnopqrstuvwxyz1234567890-_+()';
        if ($special) $characters .= ':/.';
        $latUp = array();
        for ($i = 0; $i < count($rus); $i++) $latUp[] = strtoupper($lat[$i]);
        $rewrite = str_replace($rus, $lat, strtolower(trim($inrus)));
        $rewrite = str_replace($rusUp, $latUp, $rewrite);
        $rewrite = strtolower($rewrite);
        $_rewrite = '';
        for ($i = 0; $i < strlen($rewrite); $i++){
            $c = strtolower(substr($rewrite, $i, 1));
            if (strpos($characters, $c) === false) $c = '';
            $_rewrite .= $c;
        }
        return $_rewrite;
    }


Спасибо
PM MAIL WWW   Вверх
patap
Дата 17.12.2010, 16:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 893
Регистрация: 7.5.2005
Где: Украина, Зп

Репутация: 26
Всего: 40



попробуй
Код

....
return urlencode($_rewrite);



--------------------
На боку кобура болталась, сзади шашка отцовская звякала. 
Впереди меня все хохотало, а позади все плакало (с)
PM MAIL ICQ   Вверх
keen_
Дата 17.12.2010, 17:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 148
Регистрация: 14.9.2006
Где: Москва

Репутация: -3
Всего: -1



  Patap, извини, куда этот код вставить? Я просто не фамильярен с PHP ... Весьма извиняюсь ...  smile 

Удалить эту строку: function translit($inrus, $special = false) {
и вставить return urlencode($_rewrite);
?

Это сообщение отредактировал(а) keen_ - 17.12.2010, 17:02
PM MAIL WWW   Вверх
patap
Дата 17.12.2010, 17:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 893
Регистрация: 7.5.2005
Где: Украина, Зп

Репутация: 26
Всего: 40



ну в смысле если я привильно понял, то функция генерит строку, которая учавствует потом в урле, так вот туда и влепи

Код

function translit($inrus, $special = false) {
        $rus =   array('а', 'б', 'в', 'г', 'д', 'е', 'ё', 'ж', 'з', 'и', 'й', 'к', 'л', 'м', 'н', 'о', 'п', 'р', 'с', 'т', 'у', 'ф', 'х', 'ц', 'ч', 'ш', 'щ', 'ъ', 'ы', 'ь', 'э', 'ю', 'я', ' ');
        $rusUp = array('А', 'Б', 'В', 'Г', 'Д', 'Е', 'Ё', 'Ж', 'З', 'И', 'Й', 'К', 'Л', 'М', 'Н', 'О', 'П', 'Р', 'С', 'Т', 'У', 'Ф', 'Х', 'Ц', 'Ч', 'Ш', 'Щ', 'Ъ', 'Ы', 'Ь', 'Э', 'Ю', 'Я', ' ');
        $lat = array('a', 'b', 'v','g','d','e','e','zh','z','i','j','k','l','m','n','o','p','r','s','t','u','f','h','c','ch','sh','sh','','i','','e','u','ya','_');
        $characters = 'àâäabcdefghijklmnopqrstuvwxyz1234567890-_+()';
        if ($special) $characters .= ':/.';
        $latUp = array();
        for ($i = 0; $i < count($rus); $i++) $latUp[] = strtoupper($lat[$i]);
        $rewrite = str_replace($rus, $lat, strtolower(trim($inrus)));
        $rewrite = str_replace($rusUp, $latUp, $rewrite);
        $rewrite = strtolower($rewrite);
        $_rewrite = '';
        for ($i = 0; $i < strlen($rewrite); $i++){
            $c = strtolower(substr($rewrite, $i, 1));
            if (strpos($characters, $c) === false) $c = '';
            $_rewrite .= $c;
        }
        return urlencode($_rewrite);
    }



--------------------
На боку кобура болталась, сзади шашка отцовская звякала. 
Впереди меня все хохотало, а позади все плакало (с)
PM MAIL ICQ   Вверх
keen_
Дата 17.12.2010, 17:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 148
Регистрация: 14.9.2006
Где: Москва

Репутация: -3
Всего: -1



Влепил. Не пашет. Хочешь дам тебе доступ к внутренности?
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0917 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.