PDO INSERT INTO SQLSTATE [21000]:基数违反:1241错误

时间:2018-07-01 01:15:55

标签: php

我正尝试在这个(太大)请求的bdd btw中插入数据,我已经对其进行了多次修改,现在,我在此错误上停留了一段时间……我的请求非常简单而且我神经病有这种类型的错误...

<?php

    require "functions.php";
    require_once "../conf.inc.php";


    if(count($_POST)==19){

           if (is_numeric($_POST['inputsteak'])
        && is_numeric($_POST['inputfilet'])
        && is_numeric($_POST['inputviandehachee'])
        && is_numeric($_POST['inputlangue'])
        && is_numeric($_POST['inputpoitrine'])
        && is_numeric($_POST['inputentrecote'])
        && is_numeric($_POST['inputaile'])
        && is_numeric($_POST['inputcuisse'])
        && is_numeric($_POST['inputblanc'])
        && is_numeric($_POST['inputpouletentier'])
        && is_numeric($_POST['inputcoteporc'])
        && is_numeric($_POST['inputsaucisson'])
        && is_numeric($_POST['inputjambonblanc'])
        && is_numeric($_POST['inputsaucisse'])
        && is_numeric($_POST['inputandouillette'])
        && is_numeric($_POST['inputboudinnoir'])
        && is_numeric($_POST['inputboudinblanc'])
        && is_numeric($_POST['inputtrippe'])
        && is_numeric($_POST['inputlardon']))
        {
            $connection = connectDB();
                $request = $connection->prepare("SELECT user_id FROM users WHERE users.email = :t");
                $request->execute(['t'=>'antoine.decrouez@yahoo.fr' ]);
                $result = $request->fetchALL(PDO::FETCH_ASSOC);

                $query = $connection->prepare("INSERT INTO fridge(user_id, ing_id, quantity) VALUES ((:t,:a1,:a),(:t,:a2,:b),(:t,:a3,:c),(:t,:a4,:d),(:t,:a5,:e),(:t,:a6,:f),(:t,:a7,:g),(:t,:a8,:h),(:t,:a9,:i),(:t,:a10,:j),(:t,:a11,:k),(:t,:a12,:l),(:t,:a13,:m),(:t,:a14,:n),(:t,:a15,:o),(:t,:a16,:p),(:t,:a17,:q),(:t,:a18,:r),(:t,:a19,:s))");
                $query->execute([
                              "a1"=>3,
                              "a"=>$_POST['inputsteak'],
                              "a2"=>4,
                              "b"=>$_POST['inputfilet'],
                              "a3"=>5,
                              "c"=>$_POST['inputviandehachee'],
                              "a4"=>6,
                              "d"=>$_POST['inputlangue'],
                              "a5"=>7,
                              "e"=>$_POST['inputpoitrine'],
                              "a6"=>8,
                              "f"=>$_POST['inputentrecote'],
                              "a7"=>9,
                              "g"=>$_POST['inputaile'],
                              "a8"=>10,
                              "h"=>$_POST['inputcuisse'],
                              "a9"=>11,
                              "i"=>$_POST['inputblanc'],
                              "a10"=>12,
                              "j"=>$_POST['inputpouletentier'],
                              "a11"=>13,
                              "k"=>$_POST['inputcoteporc'],
                              "a12"=>14,
                              "l"=>$_POST['inputsaucisson'],
                              "a13"=>15,
                              "m"=>$_POST['inputjambonblanc'],
                              "a14"=>16,
                              "n"=>$_POST['inputsaucisse'],
                              "a15"=>17,
                              "o"=>$_POST['inputandouillette'],
                              "a16"=>18,
                              "p"=>$_POST['inputboudinnoir'],
                              "a17"=>19,
                              "q"=>$_POST['inputboudinblanc'],
                              "a18"=>20,
                              "r"=>$_POST['inputtrippe'],
                              "a19"=>21,
                              "s"=>$_POST['inputlardon'],
                              "t" => '1'

                          ]);

        }else{
                echo "<p style='color=red;'>veuillez rentrer les quantité en valeurs nuériques</p>";
        }

}else{

    die("tentative de hack");

}

这是我的要求(是的,我的版本以法语对不起xD) 我的bdd桌子冰箱只是由user_id,ing_id和数量组成

有人知道这是什么吗? :(

1 个答案:

答案 0 :(得分:0)

对我来说,您的SQL查询错误。通过documentation插入多行,如下所示:<a href="cat/<?php echo $id?>>..</a>

从VALUES子句中删除外部()。多行VALUES子句没有用()括起来,但是每个逗号分隔的行组都用()括起来,如VALUES(1,2,3),(4,5,6),(7,8,9)所示。