我是PDO的新手,对不起,如果你觉得我在问愚蠢的问题.
没有Bind_param的普通和简单的PDO Prepared语句:
$sql = $db->prepare('SELECT * FROM employees WHERE name = ?');
$sql->execute(array($name));
$rows = $sql->fetchAll();
与Bind_param:
$sql->bind_param("s",$name); //s means the database expects a string
我听人说:“保护来自于使用绑定参数,而不是使用预处理语句”.我可以知道什么是绑定参数? Bind_param是绑定参数?如果是,那么没有Bind_param的正常和简单的PDO Prepared语句不能完全阻止sql注入?
最佳答案
你说得对.绑定参数是使用?在“预准备语句”中声明的参数.然后使用execute()绑定它们,并将它们的值作为绑定到语句的参数.