$sql = "select * from kami where kami='$tqmval'"; $res = mysqli_query($conn, $sql); $row = mysqli_fetch_array($res); 请优化这段代码防止SQL注入
时间: 2023-05-12 08:04:40 浏览: 70
可以使用参数化查询来防止SQL注入,修改代码如下:
$stmt = $conn->prepare("SELECT * FROM kami WHERE kami = ?");
$stmt->bind_param("s", $tqmval);
$stmt->execute();
$result = $stmt->get_result();
$row = $result->fetch_assoc();
相关问题
检查优化这段php代码 $sql = "select * from faka where kami='qq11'"; $res = mysqli_query($conn, $sql); $row = mysqli_fetch_array($res); if (!is_null($row)) { print_r($row); }
这段 PHP 代码的问题在于它没有使用预处理语句,这会导致 SQL 注入攻击的风险。正确的做法是使用预处理语句来绑定参数,例如:
$stmt = $conn->prepare("SELECT * FROM faka WHERE kami = ?");
$stmt->bind_param("s", $kami);
$kami = "qq11";
$stmt->execute();
$result = $stmt->get_result();
$row = $result->fetch_assoc();
if (!is_null($row)) {
print_r($row);
}
$conn->query("update kami set state='1' where id='$id'"); 请优化这段代码防止SQL注入
可以使用参数化查询来防止SQL注入,将$id作为参数传入SQL语句中,而不是直接拼接到SQL语句中。例如:
$stmt = $conn->prepare("UPDATE kami SET state='1' WHERE id=?");
$stmt->bind_param("s", $id);
$stmt->execute();
这样可以有效地防止SQL注入攻击。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![crx](https://img-home.csdnimg.cn/images/20210720083646.png)
![crx](https://img-home.csdnimg.cn/images/20210720083646.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![apk](https://img-home.csdnimg.cn/images/20210720083646.png)