Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript PHP mysql查询忽略POST变量_Javascript_Php_Mysql_Ajax - Fatal编程技术网

Javascript PHP mysql查询忽略POST变量

Javascript PHP mysql查询忽略POST变量,javascript,php,mysql,ajax,Javascript,Php,Mysql,Ajax,我正在尝试将变量从js代码移动到php,以便进行查询。我可以肯定的是,vars已经进入了PHP阶段 问题是,当我试图在SQL查询中组合变量时,它会忽略它们,并且不会得到任何结果 下面是代码中有问题的部分: $postdata = file_get_contents("php://input"); $request = json_decode($postdata); $gluten = $_POST['gluten']; $vegan = $_POST['vega

我正在尝试将变量从js代码移动到php,以便进行查询。我可以肯定的是,vars已经进入了PHP阶段

问题是,当我试图在SQL查询中组合变量时,它会忽略它们,并且不会得到任何结果

下面是代码中有问题的部分:

    $postdata = file_get_contents("php://input");
    $request = json_decode($postdata);

    $gluten = $_POST['gluten'];
    $vegan = $_POST['vegan'];
    $vegetarian = $_POST['vegetarian'];

     $result = $conn->query("SELECT * FROM dishes JOIN restaurants USING (res_id)
                   WHERE (gluten LIKE '$gluten' AND '$vegan' LIKE 0 AND vegetarian LIKE '$vegetarian')");

有什么想法吗?谢谢

如果您在php文件中正确获取了POST变量

不要这样问

$result = $conn->query("SELECT * FROM dishes JOIN restaurants using (res_id) WHERE (gluten LIKE '%".$gluten."%' AND '".$vegan."' LIKE 0 AND vegetarian LIKE '%".$vegetarian."%')");

POST变量来自何处?您是否可以打印($\u POST)并检查变量是否实际存在?您很容易受到SQL注入的攻击。您应该使用占位符。