我想要盲我的MySql查询我小白在这,我想阻止SQL注入我的查询。这是我的发言,但有一个错误错误与mysql语句
$sql = $conn ->prepare("SELECT * FROM Personas WHERE concat(nombre1,' ',apellido1) LIKE '% :name %'");
$sql-> bind_param('name', $q);
Warning: mysqli_stmt::bind_param(): Number of variables doesn't match number of parameters in prepared statement in
这项工作很好,但是这是一个不错的方法
$sql="SELECT * FROM Personas WHERE concat(nombre1,' ',apellido1) LIKE '%".$q."%';
请帮我这个,我可以用什么样的方式来保护我的查询在我的PHP代码
谢谢所有,这是我的解决方案
$sql = $conn ->prepare('SELECT * FROM Personas WHERE concat(nombre1," ",apellido1) LIKE ? ');
$key = "%".$q."%";
$sql-> bind_param('s', $key);
这条语句在phpmyadmin中工作正常SELECT * FROM Personas WHERE concat(nombre1,'',apellido1)LIKE'%jo%' – Heisenberg06