Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Url файла русскими буквами
Форумы портала PHP.SU » PHP » SQL и Архитектура БД » Url файла русскими буквами

Страниц (1): [1]
 

1. gurazor - 13 Апреля, 2016 - 15:15:50 - перейти к сообщению
Добрый день господа!
У меня следующая проблема.
Сайт на php имеет связку с базой mysql, хостинг nic.ru
Есть администраторская панель, с возможностью добавления документов на сайт.
Файлы из панели грузятся и просматриваются, все хорошо.
Но мои клиенты хотят загружать файлы с русскоязычным названием.
В загрузчике переменная URL получает значение
CODE (htmlphp):
скопировать код в буфер обмена
  1. $url = '/files/uploads/' . basename($_FILES['uploadfile']['name']);    

В нее попадает русский текст, например '/files/uploads/Файл Декларации.docx'
Но в браузере он естественно не открывается.
В адресной строке имя файла имеет вид /files/uploads/Файл%Декларации.docx.
В базе /files/uploads/Файл Декларации.docx.
Подскажите как быть? Как преобразовать такое имя файла в понятную для браузера форму? Хоть на стадии сохранения в базу.
Хоть на стадии извлечения из базы.

CODE (htmlphp):
скопировать код в буфер обмена
  1. printf ("<table align='center' class='news'>
  2.                 <tr>
  3.                 <td class='news_title'><p class='news_name'><a href='%s'>%s</a></p>
  4.                         <p class ='news_adds'>Дата:%s</p>
  5.                         </td>
  6.                 </tr>
  7.                 <tr>
  8.                
  9.                 </tr>
  10.                 </table><br><br>",$myrow["url"],$myrow["name"],$myrow["date"],$myrow["description"]);


Кодировка сайта и базы cp-1251 Недовольство, огорчение
Про urlencode читал, но не понимаю как его прикрутить.

Помогите пожалуйста.
Спасибо.
(Добавление)
Всем спасибо, извините.
Проблема решилась добавлением rawurlencode() перед внесением в базу.

 

Powered by ExBB FM 1.0 RC1