PHP+mysql中实现模糊查询,只是把‘=’改成了‘like’,但是没有变成模糊查询。 怎么修改啊? 20
$name=$_POST['农产品'];$conn=newmysqli($db_host,$db_username,$db_password,$db_database);...
$name=$_POST['农产品'];
$conn= new mysqli($db_host,$db_username,$db_password,$db_database);
$sql=sprintf("SELECT * FROM vegetable NATURAL JOIN book WHERE
农产品 like 's' ",$name);
是like ‘%s’,上传时出错了。 展开
$conn= new mysqli($db_host,$db_username,$db_password,$db_database);
$sql=sprintf("SELECT * FROM vegetable NATURAL JOIN book WHERE
农产品 like 's' ",$name);
是like ‘%s’,上传时出错了。 展开
1个回答
2017-04-29
展开全部
可以改成这样,$sql = "SELECT * FROM vegetable NATURAL JOIN book WHERE 农产品 like '" . $name . "%'";
模糊匹配中需要有%之类的通配符来表示$name以外部分的名字, 我写的列子中%的位置根据你的实际情况来定,放在$name前面,后面,或者前后都有
追问
很感谢,语句没有问题,只是sprintf()的问题,修改后就好了。
$sqll="SELECT * FROM vegetable NATURAL JOIN book WHERE 农产品 like '%{$name}%'";
$sql=sprintf("%s",$sqll);
$query = mysqli_query($conn,$sql) or die(mysqli_error($conn));
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |