所以我正在尝试创建一个页面,我可以在其中显示数据库表的结果。你应该能够搜索并且应该有一些分页,因为有数千个结果。
我设法创建一个只有搜索的页面,并且工作完美。所以现在我需要知道如何将一些分页整合到其中。
的index.php
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<div id="container">
<form action="" method="get">
<input type="text" name="search" id="search" placeholder="Search" />
<input type="submit" />
</form>
<?php include 'process.php'; ?>
</div> <!-- /container -->
<script src="js/jquery.js"></script>
<script src="js/script.js"></script>
</body>
</html>
process.php
<?php include 'dbconfig.php'; ?>
<?php include 'connect.php'; ?>
<?php
$search = $_GET['search'];
$result = mysql_query("SELECT * FROM oantkb WHERE Name LIKE '%$search%' ORDER BY `INDEX` DESC");
echo '<table class="table">';
echo '<thead>';
echo '<tr>';
echo '<th>#</th>';
echo '<th>Pic</th>';
echo '<th>Name</th>';
echo '</tr>';
echo '</thead>';
echo '<tbody>';
while($row = mysql_fetch_assoc($result)) {
$pic = $row['Pic'];
$name = $row['Name'];
echo '<tr>';
echo '<td>#</td>';
echo '<td><img src="'.$pic.'" height="50" width 50"></td>';
echo '<td>'.$name.'</td>';
echo '</tr>';
}
echo '</tbody>';
echo '</table>';
?>
现在它的工作方式应该如此。当我搜索它会说index.php?search = banana,但我需要添加一些分页,所以它会说例如index.php?search = banana&amp;?page = 2。或类似的规定。希望它有意义......我是一个php newb:)
答案 0 :(得分:1)
在SQL查询结尾处包含以下内容:
$resultsPerPage=10;
$page = ($_GET["page"]-1)*$resultsPerPage;
$query = $query." LIMIT $page,$resultsPerPage";
mysql_query($query);
顺便说一下,不推荐使用mysql_库来支持mysqli。
上述内容也容易受到sql注入攻击,因为$ _GET [“page”]并没有首先被清理过,但为了简单起见,我这样做了。
这假定从1开始的分页方案。
答案 1 :(得分:0)
我一直在使用Pear Pagination很长一段时间。你可以尝试一下。
这是一个很好的教程设置
Simple Pagination in PHP tutorial
添加的好处是在查询中使用它们之前清理变量。