[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Как запретить преобразование символов адреса?
Strannik
добрый день.

Код:
$url='http://primer.ru/%CF%F2%E0%F5%E0_-_%CF%F0%E8%EE%F0%E8%F2%E5%F2%FB%20(feat.%20%D8%E0%F0%EF)[love-mp3].mp3';
если сделать так:
<a href="echo $url;">Тест</a>
то получаем ссылку <a href="http://primer.ru/Птаха_-_Приоритеты (feat. Шарп)[love-mp3].mp3">Тест</a>

Вопрос: как запретить преобразование адреса?



Спустя 24 минуты, 4 секунды (7.04.2012 - 16:37) nugle написал(а):
Strannik
пиши названия, используя латинские символы

Спустя 4 минуты, 15 секунд (7.04.2012 - 16:41) Strannik написал(а):
Если такое невозможно, то как преобразовать
http://primer.ru/Птаха_-_Приоритеты%20(feat. Шарп)[love-mp3].mp3

в
http://primer.ru/%CF%F2%E0%F5%E0_-_%CF%F0%E8%EE%F0%E8%F2%E5%F2%FB%20(feat.%20%D8%E0%F0%EF)[love-mp3].mp3


?

Спустя 50 секунд (7.04.2012 - 16:42) Strannik написал(а):
nugle
я в курсе, что так правильно делать, но нужно сделать код именно для такого случая...

Спустя 2 минуты, 18 секунд (7.04.2012 - 16:44) Strannik написал(а):
Цитата (Strannik @ 7.04.2012 - 16:41)
Если такое невозможно, то как преобразовать
http://primer.ru/Птаха_-_Приоритеты%20(feat. Шарп)[love-mp3].mp3

в
http://primer.ru/%CF%F2%E0%F5%E0_-_%CF%F0%E8%EE%F0%E8%F2%E5%F2%FB%20(feat.%20%D8%E0%F0%EF)[love-mp3].mp3


?

если не ошибаюсь нелатинские символы в URL'е кодируется юникодом следующим образом - знак процента и двухбайтовый код символа.

Так как преобразовать строку?

Спустя 1 минута, 52 секунды (7.04.2012 - 16:46) Nikitian написал(а):

Спустя 7 минут, 23 секунды (7.04.2012 - 16:53) Strannik написал(а):
Nikitian
преобразование

<?php
$url='http://primer.ru/Птаха_-_Приоритеты%20(feat. Шарп)[love-mp3].mp3';
echo urlencode($url);
?>

даст

http%3A%2F%2Fprimer.ru%2F%D0%9F%D1%82%D0%B0%D1%85%D0%B0_-_%D0%9F%D1%80%D0%B8%D0%BE%D1%80%D0%B8%D1%82%D0%B5%D1%82%D1%8B%2520%28feat.+%D0%A8%D0%B0%D1%80%D0%BF%29%5Blove-mp3%5D.mp3


это не то, что нужно получить...

нам нужно получить адрес
http://primer.ru/%CF%F2%E0%F5%E0_-_%CF%F0%E8%EE%F0%E8%F2%E5%F2%FB%20(feat.%20%D8%E0%F0%EF)[love-mp3].mp3

Спустя 2 минуты, 43 секунды (7.04.2012 - 16:56) Nikitian написал(а):

$url='http://primer.ru/Птаха_-_Приоритеты%20(feat. Шарп)[love-mp3].mp3';
$url = parse_url($url);
$url['path'] = urlencode($url['path']);
echo$url['scheme'].'://'.$url['host'].$url['path'];

Спустя 6 минут, 33 секунды (7.04.2012 - 17:03) Strannik написал(а):
Nikitian не получается

на выходе получаем

http://primer.ru%2F%D0%9F%D1%82%D0%B0%D1%85%D0%B0_-_%D0%9F%D1%80%D0%B8%D0%BE%D1%80%D0%B8%D1%82%D0%B5%D1%82%D1%8B%2520%28feat.+%D0%A8%D0%B0%D1%80%D0%BF%29%5Blove-mp3%5D.mp3


и там ссылка первоначальная имеет вид
$url='http://primer.ru/Птаха_-_Приоритеты (feat. Шарп)[love-mp3].mp3';
без %20
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.