gpt4 book ai didi

php - 使用 mysqli 正确清理多个用户输入

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:38:58 25 4
gpt4 key购买 nike

我目前正在使用 mysqli,我想要一种方法来正确清理每个用户输入。我正在寻找最简单的轻量级方法来执行此操作,据我所知,我不应该使用 mysql_real_escape....

我的查询是这样的

$stmt = $sql->prepare("INSERT INTO Persons (msg, ip, time, main, twit, city, lat, lon, lang)
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)");

据我所知,我应该使用函数 bindParam...如果我这样使用它,我是否完全保护了我的用户输入?

$stmt->bind_param('sssssssss', $_POST[msg], ('$ip'), ('$date'), '$_POST[main]', '$_POST[twit]',  ('$cit'), ('$lat'), ('$lon'), '$_POST[lang]');
$stmt->execute();
$stmt->close();

如果这不能保护我的用户输入,我该如何正确地做到这一点?

最佳答案

您需要准备声明以确保安全。像下面这样的东西(它可能不是 100% 但给你一个想法)

 $sql = new mysqli("localhost", "my_user", "my_password", "world");


$stmt = $sql->prepare("INSERT INTO Persons (msg, ip, time, main, twit, city, lat, lon, lang)
VALUES
(?, ?, ?, ?, ?, ?, ?, ?, ?)");
$stmt->bind_param("sssssssss",$_POST[msg], $ip, $date, $_POST[main], $_POST[twit], $cit, $lat, $lon, $_POST[lang]);
$stmt->execute();

关于php - 使用 mysqli 正确清理多个用户输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16208369/

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