Проверка isset($_FILES[filename]) не работает

275
10 января 2018, 19:29

Здравствуйте.
В форме есть поле <input type="file" name="filename" />
При отправке формы идёт проверка

if (isset($_FILES['filename'])) { //что-то делаем... }

На тестовом сайте, где я всё это кодил, проверка на isset работала нормально, однако, после переноса на хостинг клиента, работать перестала.
То есть, даже если я не загружаю через форму никакого файла, скрипт всё равно считает, что какой-то файл загружен.
В чём может быть проблема? В настройках хостинга? Как её решить, не меняя настройки хостинга? Или обязательно что-то менять? Спасибо.

Answer 1

Я бы использовал вместо

if (isset($_FILES['filename']))
  {
   ...
  }

другую конструкцию:

if ($_FILES['filename']['name'] != "") 
  {
   ...
  }

или даже так:

if (isset($_FILES['filename']['name']) && ($_FILES['filename']['name'] != ''))
   {
    ...
   }

По крайней мере, у меня вторая и третья конструкция работают, а ваша - нет.

READ ALSO
JS отдача файла клиенту

JS отдача файла клиенту

Есть вопросСуть - на сервере Symfony, контроллер генерирует

221
Подключение к сайту по сокетам

Подключение к сайту по сокетам

Пытаюсь разобраться с websocket'ами на phpЕсть веб хостинг (сайт), нужно подключиться к нему по сокетам

239
Не работает сайт на modx Access denied [требует правки]

Не работает сайт на modx Access denied [требует правки]

Перестал работать сайт на modxНе переходит ни в админку ни сам сайт не работает

258
Вычитания из массива php

Вычитания из массива php

Есть массив такого вида

206