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

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: как из $_FILES получить целое имя файла с кавычкой?

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


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

> Без описания
Brajt
Отправлено: 04 Июля, 2011 - 22:46:07
Post Id


Новичок


Покинул форум
Сообщений всего: 60
Дата рег-ции: Нояб. 2010  


Помог: 0 раз(а)




если в названии файла при его аплоаде на сайт есть кавычка, $_FILES['userfile']['name'] возвращает имя файла только с начала кавычки. название до кавычки теряется. как с этим бороться?
 
 Top
DlTA
Отправлено: 04 Июля, 2011 - 23:20:57
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2952
Дата рег-ции: Окт. 2010  


Помог: 53 раз(а)




как простой вариант
создать в форме скрытое поле
и перед отправкой формы копировать туда имя файла
а на сервере уже смотреть что пришло и разбирать
 
 Top
Brajt
Отправлено: 04 Июля, 2011 - 23:51:11
Post Id


Новичок


Покинул форум
Сообщений всего: 60
Дата рег-ции: Нояб. 2010  


Помог: 0 раз(а)




DlTA пишет:
как простой вариант
создать в форме скрытое поле
и перед отправкой формы копировать туда имя файла
а на сервере уже смотреть что пришло и разбирать


а разве из скрытого поля можно будет вытащить то же название с кавычкой? ведь по идее не важно скрытое оно или открытое...
 
 Top
OrmaJever Модератор
Отправлено: 04 Июля, 2011 - 23:58:32
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




можно экранизировать кавычку через js


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
LIME
Отправлено: 05 Июля, 2011 - 00:02:00
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




Brajt http://php.su/functions/?addslashes
может оно?
(Добавление)
OrmaJever пишет:
можно экранизировать кавычку через js

через js конечно надежнее, но ведь не может же отправится часть имени файла скорее гдето на сервере баг....
или может?
(Добавление)
magic_quotes проверьте сначала конечно
 
 Top
DlTA
Отправлено: 05 Июля, 2011 - 00:53:49
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2952
Дата рег-ции: Окт. 2010  


Помог: 53 раз(а)




Brajt пишет:
а разве из скрытого поля можно будет вытащить то же название с кавычкой?
попробывал, у меня пришло все корректно. хотя слеши придется почистить

OrmaJever пишет:
можно экранизировать кавычку через js
она и так приходит на сервер экранорованной, (покрайней мере в текстовом поле)

LIME пишет:
скорее гдето на сервере баг....
ага, прям на всех и сразу))
 
 Top
Brajt
Отправлено: 05 Июля, 2011 - 00:58:27
Post Id


Новичок


Покинул форум
Сообщений всего: 60
Дата рег-ции: Нояб. 2010  


Помог: 0 раз(а)




LIME пишет:
Brajt http://php.su/functions/?addslashes
может оно?
(Добавление)
OrmaJever пишет:
можно экранизировать кавычку через js

через js конечно надежнее, но ведь не может же отправится часть имени файла скорее гдето на сервере баг....
или может?
(Добавление)
magic_quotes проверьте сначала конечно



addslashes не поможет, т.к. нечего слешировать, в $_FILES['userfile']['name'] уже нету части названия файла. js не знаю совсем. может магические кавычки действительно не правильно настроены?

; Magic quotes for incoming GET/POST/Cookie data.
magic_quotes_gpc = On

; Magic quotes for runtime-generated data, e.g. data from SQL, from exec(), etc.
magic_quotes_runtime = Off

; Use Sybase-style magic quotes (escape ' with '' instead of \').
magic_quotes_sybase = Off

хотя если и не правильно, то как решить эту проблему на хостинге...
 
 Top
LIME
Отправлено: 05 Июля, 2011 - 00:59:33
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




DlTA пишет:
она и так приходит на сервер экранорованной, (покрайней мере в текстовом поле)

она так приходит если magic quotes включены
DlTA пишет:
ага, прям на всех и сразу))

имелось ввиду код на сервере
(Добавление)
Brajt пишет:
хотя если и не правильно, то как решить эту проблему на хостинге...

а и не надо решать попробуйте addslashes ...она для того и нужна
Brajt пишет:
addslashes не поможет, т.к. нечего слешировать, в $_FILES['userfile']['name'] уже нету части названия файла

может потому и нету что неправильно входящие данные по массивам раскидываются
(Добавление)
Brajt хотя настроено вроде верно...хз
 
 Top
Brajt
Отправлено: 05 Июля, 2011 - 01:12:12
Post Id


Новичок


Покинул форум
Сообщений всего: 60
Дата рег-ции: Нояб. 2010  


Помог: 0 раз(а)




LIME, с addslashes название осталось обрезанным
 
 Top
LIME
Отправлено: 05 Июля, 2011 - 01:14:55
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




Brajt ну конечно ...чет я тупанул...скрипт же экранирует уже после всего...
да ...на стороне клиента на экранировать
 
 Top
Brajt
Отправлено: 05 Июля, 2011 - 12:01:51
Post Id


Новичок


Покинул форум
Сообщений всего: 60
Дата рег-ции: Нояб. 2010  


Помог: 0 раз(а)




всем спасибо, все получилось)
 
 Top
LIME
Отправлено: 05 Июля, 2011 - 12:19:11
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




Brajt как ты решил?
 
 Top
Brajt
Отправлено: 05 Июля, 2011 - 12:24:14
Post Id


Новичок


Покинул форум
Сообщений всего: 60
Дата рег-ции: Нояб. 2010  


Помог: 0 раз(а)




LIME, отключил магические кавычки
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Хранение данных, их вывод и обработка »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB