Показать сообщение отдельно
  #41 (permalink)  
Старый 15.02.2018, 20:47
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Сообщение от kupidon
Вообще проверку убрать?
isset($_POST) - это просто глупо, ибо всегда будет true, даже если этот массив пуст. А вот если ссылки на сетевые файлы передаются под именем file, то isset($_POST['file']) определит есть ли такое, но не определяется пусты ли они.

Вы же добавленному товару добавляете фото, а значит обязательным должна быть проверка наличия поля с ID товара, и не просто наличие, а возвращает число и запрос по этому id в базу возвращает истину, то есть:

if($id = (int)$_POST['id'] AND query('SELECT 1 FROM table WHERE id='.$id)) {
     //это товар - загрузка
}


При отключенных нотайсах достаточно, и isset(...) не обязателен. А с $_SERVER["REQUEST_METHOD"] == "POST", то при запросе к скрипту выполняющему исключительно задачу загрузки, лучше в самом его начале прописать:

if($_SERVER["REQUEST_METHOD"] == "GET") exit;


О $_FILES['file']['name'] забыть, оно вам не нужно, это товары а не галерея в Instagram.
Ответить с цитированием