php分页页面没有刷新页面和丢失帖子数据

时间:2014-07-29 07:14:32

标签: php jquery pagination

我正在尝试使用jquery,php和mysql创建分页代码而不刷新页面。我发现要做,但我无法检索我的帖子数据,因为它们是从上一页发送的main.php页面,而分页代码是在另一个名为pagination.php的页面中。我相信如果我将这两个页面合并为一个,但是当我试图将它设置为不起作用时,后期数据不会丢失。

主页       

include('db.php');

$per_page = 1; 
$select_table = "select * from pagination";
$variable = mysql_query($select_table);
$count = mysql_num_rows($variable);
$pages = ceil($count/$per_page)

?>
<html> 
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Qjuery pagination with loading effect using PHP and MySql</title>
<script type="text/javascript" src="jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
function Display_Load()
{
    $("#load").fadeIn(1000,0);
    $("#load").html("<img src='load.gif' />");
}
function Hide_Load()
{
    $("#load").fadeOut('slow');
};
$("#paginate li:first").css({'color' : '#FF0084'}).css({'border' : 'none'});
Display_Load();
$("#content").load("pagination.php?page=1", Hide_Load());
$("#paginate li").click(function(){
    Display_Load();
    $("#paginate li")
    .css({'border' : 'solid #193d81 1px'})
    .css({'color' : '#0063DC'});
    $(this)
    .css({'color' : '#FF0084'})
    .css({'border' : 'none'});
    var pageNum = this.id;
    $("#content").load("pagination.php?page=" + pageNum, Hide_Load());
});});
</script>

</head>
<body>
<div id="content" ></div>

<div class="link" align="center">

        <ul id="paginate">
            <?php
            //Show page links
            for($i=1; $i<=$pages; $i++)
            {
                echo '<li id="'.$i.'">'.$i.'</li>';
            }
            ?>
</ul>   
</div>
  <div style="clear:both"> </div>
<div id="load" align="center" ></div>
</body>
</html>

分页页

     <?php
include('db.php');

$per_page = 1; 
if($_GET)
{
$page=$_GET['page'];
}
$start = ($page-1)*$per_page;
$select_table = "select * from pagination where date = ' =$date' and number ='$number' $start,$per_page";
$variable = mysql_query($select_table);
?>
<table width="800px">
    <?php
    $i=1;
    while($row = mysql_fetch_array($variable))
    {
        $name=$row['name'];
        $design=$row['designation'];
        $place=$row['place'];
    ?>
    <tr>
    <td style="color:#999;"><?php echo $i++; ?></td>
    <td><?php echo $name; ?></td>
    <td><?php echo $design; ?></td>
    <td><?php echo $place; ?></td></tr>
    <?php
    }
    ?>
</table>

我从此行的pagination.php页面收到错误:

$select_table = "select * from pagination where date = ' =$date' and number ='$number' $start,$per_page";

$ date和$ number变量是未定义的变量

2 个答案:

答案 0 :(得分:0)

我解决了问题,解决方法是删除分页page.php文件并在主页面中添加一个简单的jquery分页插件,这意味着不必再次定义post数据。

答案 1 :(得分:-1)

我强烈建议您从mysql_ *迁移到mysqli,因为您很容易受到攻击。

$select_table = "select * from `pagination` where `date` = '".$date."' and `number` ='".$number."' $start,$per_page";

我至少看到了一个额外的=,它也没有正确连接。我不确定你在这里要做什么$start,$per_page";。另外,请确保使用后退标记来转移字段和表格。