• Как записать запрос на добавление массива из input в базу данных?

    Добрый день, в первую очередь хочется сказать, что в базу данных на подобии MySQL записать массивы нельзя, только строки или json.

    Если говорить, о том, что вы хотите вообще данные занести, а потом их вывести, как массив, то такое сделать можно.
    Что хочется сказать, вам стоит понять, как надо работать с базой данных, советую использовать PDO и подготовленные запросы.

    Сам пример кода

    В вашем файле подключения рекомендую сделать так:
    try {
    
       $connect = new PDO('mysql:host=localhost;dbname=a0634339_base;charset=utf8', 'root', 'a0634339_base');
    
    } catch (\Exception $error) {
    
       echo "Error connect to DataBase:" . $error->getMessage();
       die();
    
    }


    В основном файле выглядеть должно примерно так:

    require_once '../vendor/connect.php';
    
    $name = $_POST['name'];
    $price = $_POST['price'];
    $quantity = $_POST['quantity'];
    
    
    $sql = "INSERT INTO `zakaz` (`name`,`price`, `quantity`) VALUES (:name, :price, :quantity)"; // тут вы допустили ошибку, писали слово INSERT нижним регистром, одна из причин почему у вас запрос не работал.
    
    $params = [
      "name" => $name,
    
      "price" => $price,
    
      "quantity" => $quantity
    ];
    
    $connect->prepare($sql)->execute($params);
    
    // дальше идем, что бы взять информацию из бд и вывести ее как массив.
    
    $sth = $connect->prepare("SELECT * FROM `zakaz` WHERE `name` = :name");
    
    $params = [
      "name" => $name
    ];
    
    $sth->execute($params);
    
    $array = $sth->fetchAll(PDO::FETCH_ASSOC);
    
    var_dump($array[0]); // полагаю вы хотели получить это
    Ответ написан
    Комментировать
  • Как передать массив из input в БД?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    1) Зачем там цикл, если после первой итерации скрипт завершает работу по редиректу?
    2)
    $q = "INSERT INTO `zakaz` (`id`, `name`, `price`, `quantity`) VALUES (NULL, '$names', '$prices, '$quantities')";
    echo $q; // вставляем руками в пхпмайадмин или из консоли, смотрим все ли на месте или есть ошибки
    mysqli_query($connect, $q);
    Ответ написан
    Комментировать