p-6ren">
gpt4 book ai didi

php - 编写 PDO 查询的安全方法

转载 作者:行者123 更新时间:2023-11-29 10:57:53 25 4
gpt4 key购买 nike

这两种方法中哪一种是编写查询的安全方法?

$stmt = $pdo->prepare("UPDATE tableName SET fieldName = 0");

或者

$stmt = $pdo->prepare("UPDATE tableName SET fieldName = :parameter");
$stmt-> bindValue(':parameter', 0);

我知道第二种方法是最好的,每当我在 bindValue 中使用 $variable 时,我都会使用它。但在这里,我需要使用一个已知的整数0。因此,第一个过程似乎更容易,因为我不必编写另一个 bindValue 语句。但是,这样安全吗?

最佳答案

看到您的问题,我想说您一定会从阅读 PDO tutorial 中受益。我写道:

There are two ways to run a query in PDO. If no variables are going to be used in the query, you can use the PDO::query() method.

if at least one variable is going to be used in the query, you have to substitute it with a placeholder, then prepare your query, and then execute it, passing variables separately.

现在您可以知道,对于这个特定的查询,您可以使用 query() 方法而不是准备/执行

$stmt = $pdo->query("UPDATE tableName SET fieldName = 0");

因为没有要使用的变量,所以完全没有危险

关于php - 编写 PDO 查询的安全方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42758608/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com