Показать сообщение отдельно

  #10  
Старый 27.05.2010, 00:06
roxblnfk
Познающий
Регистрация: 07.02.2010
Сообщений: 70
Провел на форуме:
217996

Репутация: 56
Arrow

%d0%e5%ec%e5%ed%fc%20.jpg - 'Ремень .jpg'
Убрал бы пробел перед .jpg и хватило бы urlencode (т.к. urlencode вместо пробела ставит +)
Есть вариант менять через str_replace плюсы на пробелы
str_replace('+','%20',urlencode($url))
Либо по циклу берёшь ord() от каждого символа, переводишь в HEX, ставишь перед каждым хексом % (перед однобайтовым хексом 0 не забудь).. можно, конечно, ещё наложить фильтр на латину (точки и т.д.) и всё в strtolower() и тогда будет полное соответствие

upd: насчёт rawurlencode('картинка.jpg') -- проверь правильность ввода имени файла в строке, мало ли там где пробел или похожая буква из другого языка (т.е. имя файла копи-паст)

Последний раз редактировалось roxblnfk; 27.05.2010 в 00:14..
 
Ответить с цитированием