我正在尝试使用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变量是未定义的变量
答案 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";
。另外,请确保使用后退标记来转移字段和表格。