中文,php查询及多条件查询"/>
php中查询条件是中文,php查询及多条件查询
单条件查询:
1.先要有一张表,显示出表中的数据:
无标题文档编号 | 姓名 | 电话 | 分组 |
$db = new mysqli("localhost","root","12345678","heiheihei");
$sql = "select * from contacts";
$r = $db->query($sql);
//传值
while ($attr = $r->fetch_row())
{
echo "
{$attr[0]}{$attr[1]}{$attr[2]}{$attr[3]}";}
?>
上图:
啥都没改的一张表
2.再来个from表单,让用户输入,点击查询:
输入名字:
如图:
3.建立关键字查询:
//实现两个逻辑
//1.如果没有post数据.查所有的
//2.如果有post数据.根据条件查
$db = new mysqli("localhost","root","12345678","heiheihei");
//连接数据库
$tj = " 1 = 1 ";
$name="";
//恒成立,如果没有写数据,那就让条件等于1=1,这个条件是查找所有的数据
//如果你写入数据,按照数据查
if(!empty($_POST))
{
$name = $_POST['name'];
$tj = " name like '%{$name}%'";
}
//将条件拼接到SQl语句
$sql = "select * from contacts WHERE {$tj}";
echo $sql;
//查出来
$r = $db->query($sql);
//传值
if($r)
//开始判断
{
//$attr已经接收到了值,现在只需要获取他的索引就行了
while ($attr = $r->fetch_row())
{
//关键字特殊查询
$str = str_replace($name,"{$name}",$attr[1]); //查找替换如ctrl+f
//substr_replace(); 在指定位置替换
//substr(); 截取字符串
$gname = "select gname from groups WHERE gid='{$attr[3]}'";
//分组表中的gid,和我点击的
$nresult = $db->query($gname);
$gname = $nresult->fetch_row();
$nation = $gname[0];
echo "
{$attr[0]}{$str}{$attr[2]}{$nation}?>
图:
多条件查询:
前面照旧;
出了php的语句:
//实现两个逻辑
//1.如果没有post数据.查所有的
//2.如果有post数据.根据条件查
$db = new mysqli("localhost","root","12345678","heiheihei");
//连接数据库
$tj1 = " 1 = 1 ";
$tj2 = " 1 = 1 ";//两个条件的恒等
$name="";
//恒成立,如果没有写数据,那就让条件等于1=1,这个条件是查找所有的数据
//如果你写入数据,按照数据查
if(!empty($_POST["name"])) //第一个条件的判断(用到了模糊查询)
{
$name = $_POST['name'];
$tj1 = " name like '%{$name}%'";
}
if(!empty($_POST["tel"]))
{
$tel = $_POST["tel"];
$tj2 = "tel = '$tel'";
}
//将条件拼接到SQl语句
$sql = "select * from contacts WHERE {$tj1} AND {$tj2}";
效果图:
这样:有几个条件就做几个条件变量,第一个条件不为空就执行的第一个条件,第二个条件不为空执行的第二个条件,两个都为空就是查寻所有的数据
更多php查询及多条件查询相关文章请关注PHP中文网!
本文原创发布php中文网,转载请注明出处,感谢您的尊重!
更多推荐
php中查询条件是中文,php查询及多条件查询
发布评论