php – MySQLi中的参数
发布时间:2020-12-13 16:33:08 所属栏目:PHP教程 来源:网络整理
导读:我正在使用 PHP与MySQLi,我在一个我有这样的问题的情况 SELECT $fields FROM $table WHERE $this=$that AND $this2=$that2 到目前为止,我已经编写了一些代码来拼接一个我给它的数组,例如: $search = array(name=michael,age=20) //turns intoSELECT $fields
我正在使用
PHP与MySQLi,我在一个我有这样的问题的情况
SELECT $fields FROM $table WHERE $this=$that AND $this2=$that2 到目前为止,我已经编写了一些代码来拼接一个我给它的数组,例如: $search = array(name=michael,age=20) //turns into SELECT $fields FROM $table WHERE name=michael AND age=20 有没有更有效的方式来做到这一点? 我很担心MySQL注入 – 这似乎很脆弱.
奇怪的是,你的问题的标题基本上是它的答案.你想做这样的事情,使用mysqli参数化查询:
$db = new mysqli(<database connection info here>); $name = "michael"; $age = 20; $stmt = $db->prepare("SELECT $fields FROm $table WHERE name = ? AND age = ?"); $stmt->bind_param("si",$name,$age); $stmt->execute(); $stmt->close(); mysqli section of the manual更多信息,具体涉及MySQLi_STMT相关功能. 请注意,我个人更喜欢在mysqli上使用PDO,我不喜欢mysqli所做的所有bind_param / bind_result内容.如果我必须使用它,我会在其周围编写一个包装器,使其工作更像PDO. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |