首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我没有发现任何error.this代码正在执行well.update我的数据perfectly.but 1错误正在显示

问我没有发现任何error.this代码正在执行well.update我的数据perfectly.but 1错误正在显示
EN

Stack Overflow用户
提问于 2017-04-26 00:08:50
回答 1查看 73关注 0票数 3
代码语言:javascript
复制
if ($_SERVER["REQUEST_METHOD"]=="POST") {
            $updatedate=$_POST['date'];
            $updateday=$_POST['day'];
            $updateplace=$_POST['place'];
            $updatehighlight=$_POST['highlight'];
            $updatediscription=$_POST['discription'];
            $sqlupdate="UPDATE $tableselect SET entrydate='$updatedate',day='$updateday',place='$updateplace',highlight='$updatehighlight',discription='$updatediscription' WHERE id ='$getid'";
            $sqlquery=mysqli_query($db,$sqlupdate);
            if (!mysqli_query($db,$sqlquery)) {
                    echo "error " .$sqlquery. "<br>" . mysqli_error($db);
                }
        }

它显示了此错误:

您的SQL语法出现错误;请检查与MariaDB服务器版本对应的手册,以便在第1行使用接近“1”的正确语法。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-04-26 00:22:54

非常简单,您要运行查询函数两次,这就是获得1的原因。

所以

代码语言:javascript
复制
$sqlquery=mysqli_query($db,$sqlupdate);
            if (!mysqli_query($db,$sqlquery)) {...}

需要更改为

代码语言:javascript
复制
$sqlquery=mysqli_query($db,$sqlupdate);
            if(!$sqlquery){...}

第一个被执行,并且(if)!运算符也将触发查询函数,因为它是真的,如“(If)没有失败”。

“对于其他成功的查询,mysqli_query()将返回TRUE__。”

也可以将查询参数化,您可以使用SQL注入。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43622891

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档