Задать вопрос
SimBioT19
@SimBioT19
{{ user.about }}

Как правильно организовать запрос?

У меня есть 8 input`ов для фотографий, которые заполняет пользователь указывая ссылку на желаемое изображение.
Как будет правильно организовать вставку в БД ссылок на изображения, при условии, что пользователь не обязательно заполняет все поля, а также он может "пропустить" любые из них? Например ввести ссылки только 5 и 8 инпут.
Как с использованием PDO будет правильно составить запрос?
Получается, что в БД отправляется 8 (максимум) строк, но как вставить требуемое количество за один запрос?
  • Вопрос задан
  • 206 просмотров
Подписаться 1 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 4
alexey-m-ukolov
@alexey-m-ukolov Куратор тега PHP
Пустые инпуты на сервер не отправляются, вам придет два значения в $_POST['your-field']. В чем проблема?
Ответ написан
@SergeyZelensky-Rostov
делаете простые запросы через цикл по массиву картинок вот так например:
foreach ($imageUrl as $item) { 
      $sth = $db->prepare('INSERT INTO `imageCollection`(url,alt,title) VALUES(?,?,?)');
      $sth->execute(array(item['url'],item['alt'],item['title']));
   }
Ответ написан
Комментировать
@vilgeforce
Раздолбай и программист
Можно сделать через несколько запросов: в цикле проверить поля и если поле не пустое - добавить.
Второй вариант: INSERT INTO pictires (`ur`) VALUES ($url1), ($url2), ... и добавлять юрлы если они заданы.
Ответ написан
Комментировать
@nozzy
Symfony, Laravel, SQL, Python, Telegram
$sth = $db->prepare('INSERT INTO `imageCollection`(url,alt,title, .... и т.д.) VALUES(?,?,? ..... и т.д.)');
$sth->execute(array(
isset($_POST['url']) : $_POST['url'] ? null,
isset($_POST['alt']) : $_POST['alt'] ? null,
isset($_POST['title']) : $_POST['title'] ? null,
.... и т.д.
));
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы