达到限制后如何在php中使用页码

时间:2018-09-05 10:51:16

标签: php sql

我正在尝试使用php限制每页的记录数(mysql结果)

我当前的代码可以显示结果。但是所有的80个结果都没有页码显示。

let background = DispatchQueue.global(qos: .background)
background.async { [unowned self] in
    self.saveData(of: self.user, to: "user details")
}

我是编码新手

1 个答案:

答案 0 :(得分:0)

由于要链接评论中的链接,我使用以下代码解决了我的问题:

<?php
define("ROW_PER_PAGE",2);
require_once('db.php');
?>
<html>
<head>
<style>
body{width:615px;font-family:arial;letter-spacing:1px;line-height:20px;}
.tbl-qa{width: 100%;font-size:0.9em;background-color: #f5f5f5;}
.tbl-qa th.table-header {padding: 5px;text-align: left;padding:10px;}
.tbl-qa .table-row td {padding:10px;background-color: #FDFDFD;vertical-align:top;}
.button_link {color:#FFF;text-decoration:none; background-    color:#428a8e;padding:10px;}
#keyword{border: #CCC 1px solid; border-radius: 4px; padding:  7px;background:url("demo-search-icon.png") no-repeat center right 7px;}
.btn-page{margin-right:10px;padding:5px 10px; border: #CCC 1px solid; background:#FFF; border-radius:4px;cursor:pointer;}
.btn-page:hover{background:#F0F0F0;}
.btn-page.current{background:#F0F0F0;}
</style>
</head>
<body>
<?php   
$search_keyword = '';
if(!empty($_POST['search']['keyword'])) {
    $search_keyword = $_POST['search']['keyword'];
}
$sql = 'SELECT * FROM posts WHERE post_title LIKE :keyword OR description LIKE :keyword OR post_at LIKE :keyword ORDER BY id DESC ';

/* Pagination Code starts */
$per_page_html = '';
$page = 1;
$start=0;
if(!empty($_POST["page"])) {
    $page = $_POST["page"];
    $start=($page-1) * ROW_PER_PAGE;
}
$limit=" limit " . $start . "," . ROW_PER_PAGE;
$pagination_statement = $pdo_conn->prepare($sql);
$pagination_statement->bindValue(':keyword', '%' . $search_keyword . '%', PDO::PARAM_STR);
$pagination_statement->execute();

$row_count = $pagination_statement->rowCount();
if(!empty($row_count)){
    $per_page_html .= "<div style='text-align:center;margin:20px 0px;'>";
    $page_count=ceil($row_count/ROW_PER_PAGE);
    if($page_count>1) {
        for($i=1;$i<=$page_count;$i++){
            if($i==$page){
                $per_page_html .= '<input type="submit" name="page" value="' . $i . '" class="btn-page current" />';
            } else {
                $per_page_html .= '<input type="submit" name="page" value="' . $i . '" class="btn-page" />';
            }
        }
    }
    $per_page_html .= "</div>";
}

$query = $sql.$limit;
$pdo_statement = $pdo_conn->prepare($query);
$pdo_statement->bindValue(':keyword', '%' . $search_keyword . '%', PDO::PARAM_STR);
$pdo_statement->execute();
$result = $pdo_statement->fetchAll();
?>
<form name='frmSearch' action='' method='post'>
<div style='text-align:right;margin:20px 0px;'><input type='text'    name='search[keyword]' value="<?php echo $search_keyword; ?>" id='keyword'   maxlength='25'></div>
 <table class='tbl-qa'>
 <thead>
  <tr>
  <th class='table-header' width='20%'>Title</th>
  <th class='table-header' width='40%'>Description</th>
  <th class='table-header' width='20%'>Date</th>
   </tr>
  </thead>
  <tbody id='table-body'>
  <?php
 if(!empty($result)) { 
    foreach($result as $row) {
?>
  <tr class='table-row'>
    <td><?php echo $row['post_title']; ?></td>
    <td><?php echo $row['description']; ?></td>
    <td><?php echo $row['post_at']; ?></td>
  </tr>
<?php
    }
}
?>
</tbody>
</table>
<?php echo $per_page_html; ?>
</form>
</body>
</html>