Не удается вставить $ _POST ARRAY в MySQL - флажки JQuery DataTables от Gyrocode

Я знаю, что было много вопросов по $ _POST ARRAY и MySQL, и я уже много из них прошел. Однако ни один из тех, на которые я смотрел, не помог мне.

Я пытаюсь передать идентификатор строки из JQuery DataTable (используя плагин Gyrocode ckeckboes), отправить форму.

Если я использую: -

$i = 0;
    foreach($_POST['id'] as $value){

        echo "value : ".$value. '<br/>';

        $i++;
    }

Я получаю результат

значение: 1 значение: 25 значение: 32 значение: 5 значение: 17

Этого я и ожидал (количество строк и числовые значения зависят от того, сколько флажков я проверяю).

Но когда я введу запрос, он не сохранится в базе данных: -

$i = 0;
    foreach($_POST['id'] as $value){

        $sql = "INSERT INTO attendance (rider_id, at_date) VALUES ('$value', NOW())";

        $i++;
    }

Я пробовал всевозможные варианты этого, но ничего из того, что я делаю, похоже, не работает, и это похоже на глупую ошибку, которую я делаю :)

Спасибо

Вы не выполняете свой SQL, не имея представления о том, как происходит ваше соединение с базой данных, и трудно понять, как предложить вам исправить это.

Nigel Ren 26.10.2018 21:44

Я не понимаю, где вы выполняете запрос. HTML / JS, вероятно, также следует опубликовать. В любом случае проверьте наличие ошибок.

Funk Forty Niner 26.10.2018 21:45

Если не уверены - прочтите stackoverflow.com/questions/18655706/…

Nigel Ren 26.10.2018 21:45

Обратите внимание, что выполнение этого оператора sql сделает вас уязвимым для внедрения SQL.

AbcAeffchen 27.10.2018 10:37
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
2
4
49
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Спасибо за комментарии. Js и HTML - это образцы, взятые из Гирокод. Я знаю, что он открыт для атак с использованием SQL-инъекций, но это не для открытой сети, это просто то, с чем я играю.

Мне удалось заставить его работать со следующим PHP

session_start();
include_once('connection.php');

$rider_id = isset($_POST['id']) ? $_POST['id'] : [];

foreach($rider_id as $k=>$id) {

  $query = "INSERT INTO attendance (rider_id, at_date) VALUES ('{$id}', NOW())";

  $conn->query($query); 
}

header('location: index.php');

Просто нужно добавить обработку ошибок.

Другие вопросы по теме