Tạo trang tìm kiếm và phân trang trong php

Friday, September 19, 2014
Lần trước chúng ta đã tìm hiểu cách phân trang trong PHP hôm nay sẽ làm bài tìm kiếm và phân trang qua phương thức GET



Code trang tìm kiếm HTML
Tạo một trang timkiem.php và viết code HTML như sau:
<form action="" method="get">
<input type="text" name="tukhoa" />
<input type="submit" name="thuchien" value="Tìm kiếm" />
</form>
Chú ý : phương thức method="GET" nhé.
Tiếp theo sử dụng lại code phân trang trong PHP blog đã post cho các bạn.
http://donbadao.blogspot.com/2014/09/tao-phan-trang-trong-php-su-dung-mysql.html
Code tìm kiếm và phân trang PHP
<?php
$conn=mysql_connect("localhost","root","123") or die("Khong the ke noi");
mysql_select_db("email",$conn) or die ("Khong ket noi dc CSDL");
$tin=mysql_query("select id from dangky");
?>
<?php
$row_per_page=2 ; //Số dòng trên 1 trang
//tính số dòng cần hiển thị
$rows=mysql_num_rows($tin);
//tính số trang cần để hiển thị
if ($rows>$row_per_page) $page=ceil($rows/$row_per_page);
else $page=1; //nếu số dòng trong CSDL nhỏ hơn hoặc bằng số dòng trên 1 trang thì chỉ có 1 trang để hiển thị
if(isset($_GET['start']) && (int)$_GET['start'])
     $start=$_GET['start']; //dòng bắt đầu từ nơi ta muốn lấy
else $start=0;
$tim=$_GET['_timkiem'];
echo $tim;
$sql=mysql_query("select * from dangky where name='".$_GET['tukhoa']."' order by name asc limit $start,$row_per_page"); //bắt đầu lấy dữ liệu (^)_(^)
?>
<table border="1" cellspacing="0" cellpadding="0">
<tr>
 <td bgcolor="#FFFFCC">Name</td>
 <td bgcolor="#FFFFCC">Email</td>
</tr>
<?php while($row=mysql_fetch_array($sql))
{?>
  <tr>
    <td><?php echo $row[name] ?></td>
 <td><?php echo $row[_email] ?></td>
  </tr>
<?php
}  ?>
</table>
<?php
if($page!=0)
{
echo "<a href='index.php?start=".($start+$row_per_page)."&tukhoa=".$_GET['tukhoa']."'>Tới</a>";
} $tong=mysql_num_rows($sql);
if($tong>=$row_per_page)
{
$page_cr=($start/$row_per_page)+1;
for($i=1;$i<=$page;$i++)
{
 if ($page_cr!=$i) echo "<div class='phantrang'>"."<a href='index.php?start=".$row_per_page*($i-1)."&tukhoa=".$_GET['tukhoa']."'>$i&nbsp;</a>"."</div>";
 else echo "<div class='phantrang'>".$i." "."</div>";
}
}
?>

Chú ý: các từ GET trong đoạn code nhé.

No comments:

Post a Comment