我想写一个PHP
脚本,我必须使用预准备语句在INSERT
数据库中执行MySQL
查询。
由于我是PHP
的初学者,我不知道该怎么做。所以我在Stackoverflow
上查找了How to create a secure mysql prepared statement in php?
。
所以我开始以与答案中接受的答案但相同的方式开始这样做,有一些方法,比如
prepare
准备SELECT
查询
bind_param
将参数绑定到查询
close
接近$stmt
Visual Studio Code
并未向我建议。此外,当我使用这些方法并将指针悬停在它们上面时,Visual Studio Code
没有显示文档,这让我想到这些方法是否可用。
而不是prepare
方法,Visual Studio Code
建议odbc_prepare
,而不是bind_param
,而是建议mysqli_bind_param
而不是close
, odbc_close
。
我正在使用PHP 7.2
问题:prepare
中的close
,bind_param
,PHP 7
等方法不可用,我是否可以使用向我建议的方法Visual Studio Code
取代这些方法?
答案 0 :(得分:1)
这些功能不是独立的功能。它们是PDO对象的方法。要了解有关PDO的更多信息,请查看本教程:PDO Tutorial
$pdo = new PDO();
$stmt = $pdo->prepare('SELECT * FROM users WHERE email = :email AND status=:status');
$stmt->execute(['email' => $email, 'status' => $status]);
$user = $stmt->fetch();
答案 1 :(得分:0)
在mysqli
前缀的过程样式中,您只能在没有mysqli_
对象的情况下使用这些函数。
然而,通常首选对象样式。