利用PHP访问数据库实现分页功能与多条件查询功能
1.实现分页功能
<body>
<table width="100%" border="1">
<thead>
<tr>
<th>代号</th>
<th>名称</th>
<th>价格</th>
</tr>
</thead>
<tbody>
<?php
require_once ".;; //加载数据库访问类的封装文件
require_once ";; //加载分页类的封装文件
$db = new DBDA();
$sql = "select count(*) from car";
$arr = $db->query($szts);
$page = new Page($arr[0][0],5); //查看总数据,并每页显示的行数据
$sql = "select * from car".$page->limit; //拼接每页显示的数据
$arr = $db->query($sql);
foreach($arr as $v){
echo "<tr>
<td>{$v[0]}</td>
<td>{$v[1]}</td>
<td>{$v[2]}</td>
</tr>";
}
?>
</tbody>
</table>
<div style="margin-top:20px">
<?php
echo $page->fpage(); //调用分页类的方法
?>
</div>
</body>
2.实现多条件查询功能
<body>
<?php
require_once ".;;
require_once ";;
$db = new DBDA();
//做一个恒成立的条件
$tj = " 1=1 ";
$tj2 = " 1=1 ";
$name = " ";
$brand = " ";
//当提交的数据不为空,需要改条件
if(!empty($_GET["name"])){
$name = $_GET["name"];
$tj = " name like '%{$name}%' "; //使用模糊查询查询关键信息
}
if(!empty($_GET["brand"])){
$brand = $_GET["brand"];
$tj2 = " brand = '{$brand}' ";
}
?>
<table width="100%" border="1">
<form action="; method="get">
<input type="text" name="name" placeholder="请输入名称" value="<?php echo $name ?>" style="max-width:200px; float:left">
<input type="text" name="brand" placeholder="请输入系列" value="<?php echo $brand ?>" style="max-width:200px; float:left">
<button type="submit" style="float:left; margin-left:10px">查询</button>
</form>
<thead>
<tr>
<th>代号</th>
<th>名称</th>
<th>系列</th>
<th>时间</th>
<th>价格</th>
</tr>
</thead>
<tbody>
<?php
$zts = "select count(*) from car where {$tj} and {$tj2}"; //多条件查询数据总数
$ats = $db->query($arr);
$page = new Page($ats[0][0],2);
$sql = "select * from car where {$tj} and {$tj2} ".$page->limit;
$arr = $db->query($sql);
foreach($arr as $v){
//给查询的关键字加字体颜色
$n = str_replace($name,"<span style='color:red'>{$name}</span>",$v[1]);
echo "<tr>
<td>{$v[0]}</td>
<td>{$n}</td>
<td>{$v[2]}</td>
<td>{$v[3]}</td>
<td>{$v[7]}</td>
</tr>";
}
?>
</tbody>
</table>
<div>
<?php
echo $page->fpage();
?>
</div>
</body>