- Автор темы
- #1
Скачал значит я скрипт "Сервис коротких ссылок" - установил, все прекрасно и без ненужных мне наворотов, но как всегда подвох в халяве. Проблема заключается в том, что кириллические домены в бд добавляются, но в итоге редирект с этой короткой ссылки идет не на этот самый домен кириллический, а в пустоту. Решил бороться с этим при помощи punycode. В связи не хватки опыта в php не могу выполнить, как мне кажется довольно таки легкую задачу. И очень надеюсь на вашу помощь.
Задача состоит в том, чтобы встроить в код моего сервиса - код скрипта пуникода. Я планирую, что ссылки которые будут добавляться в кириллице будут кодироваться в
punycode и уже в таком виде храниться в бд.
Есть следующая часть кода:
Данная часть отвечает за добавление ссылки в базу данных.
url - поле юрл, в котором хранятся полные ссылки
Далее представлен код, который нужно вставить в мой скрипт.
В него нужно вставить:
Данный код отвечает за конвертацию кириллических доменов в punycode.
Заранее благодарен за помощь.
Задача состоит в том, чтобы встроить в код моего сервиса - код скрипта пуникода. Я планирую, что ссылки которые будут добавляться в кириллице будут кодироваться в
punycode и уже в таком виде храниться в бд.
Есть следующая часть кода:
PHP:
if ( $protocol_ok && $lilurl->add_url($longurl) )
{
if ( REWRITE ) // mod_rewrite style link
{
$url = 'http://'.$_SERVER['SERVER_NAME'].dirname($_SERVER['PHP_SELF']).$lilurl->get_id($longurl);
}
else // regular GET style link
{
$url = 'http://'.$_SERVER['SERVER_NAME'].$_SERVER['PHP_SELF'].'?id='.$lilurl->get_id($longurl);
}
$msg = '<br><b><font size="5">Ваша короткая ссылка: <a href="'.$url.'" target="_blank">'.$url.'</a></font></br></b>';
}
elseif ( !$protocol_ok )
{
$msg = '<br><b><font color="red" size="5">Неправильно введены данные.<br>Попробуйте еще раз.</font></b><br>';
}
else
{
$msg = '<br><b><font color="red" size="5">Неправильно введены данные.<br>Попробуйте еще раз.</font></b><br>';
}
}
else ...
Данная часть отвечает за добавление ссылки в базу данных.
url - поле юрл, в котором хранятся полные ссылки
Далее представлен код, который нужно вставить в мой скрипт.
В него нужно вставить:
PHP:
require_once('idna_convert.class.php');
$IDN = new idna_convert();
$domain = 'пример.рф';
$input = $IDN->encode($domain);
echo $input;
Данный код отвечает за конвертацию кириллических доменов в punycode.
Для просмотра скрытого содержимого вы должны войти или зарегистрироваться.
Заранее благодарен за помощь.