下面提到的是3个不同的文件 第一个文件Package.php 代码:
<body>
<form action='Add_Package.php' method='POST'>
<input type='submit' id='btnAdd' value='Add Package Details'>
<select id="pack_type" name="pack_type" onChange="package_changed()" >
<option value="1">Valid</option>
<option value="0">In-Valid</option>
</select>
<center><h1>Package Details</h1></center>
<div id="package_info" name="package_info"> </div>
<script type="text/javascript" src="js/service.js" ></script>
</body>
第二个文件service.js 代码:
function package_changed()
{
var xmlhttp;
var type;
type=document.getElementById("pack_type").value;
if(type=="label")
return;
if(window.XMLHttpRequest)
{
xmlhttp=new XMLHttpRequest();
}
else
{
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("package_info").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","Package_description.php?type="+type,true);
xmlhttp.send();
}
第3个文件Package_description.php 码: $ perpage = 10;
$row_count = mysql_query("select count(package_id) from package where is_valid=".$_GET['type']);
$pages = ceil(mysql_result($row_count,0) / $perpage);
$page=(isset($_GET['page'])) ? (int)$_GET['page'] : 1;
$start=($page - 1) * $perpage;
$result = mysql_query("SELECT * FROM package where is_valid='".$_GET['type']."'ORDER BY package_id DESC LIMIT $start , $perpage ");
echo '<div class="pagination pagination-middle pagination-right"><ul>';
if($pages >= 1 && $page <=$pages)
{
for($x=1; $x<=$pages; $x++)
{
if($x==$page)
{
echo '<li class="disabled"><a href="?page='.$x.'">'.$x.'</a></li>';
}
else
{
echo '<li class="active"><a href="?page='.$x.'">'.$x.'</a></li>';
}
}
}
echo '</ul></div>';
echo " <center>
<table class='table table-hover' border=5>
<th>Package Name</th>
<th>Package Credits</th>
<th></th>";
while($row=mysql_fetch_array($result))
{
echo " <tr>
<td>" .$row['package_name'] ."</td>
<td>" .$row['package_credits'] ."</td>
<td><center><a href='Edit_Package.php?id=".$row['package_id'] . "'>Edit</a></center </td>
</tr>";
}
echo " </table><br>
</center>
</form>";
?>
Que:当我点击第一个文件中的有效或无效选项时,它将正确显示数据。 当记录超过10时,当我点击第2页时它没有显示第2页的记录。 问题是使用javascript函数,因为相同的分页脚本在同一页面上运行时运行良好这里涉及3个不同的页面,包括javascript函数我不知道问题究竟在哪里,任何机构都有任何解决方案请让我知道。 提前谢谢。
答案 0 :(得分:0)
我实际上找到了解决问题的方法 以下是我对service.js文件所做的更改 代码:
function package_changed()
{
var xmlhttp;
var type;
type=document.getElementById("pack_type").value;
var url=document.URL;
var thenum = url.replace( /^\D+/g, '');
if(type=="label")
return;
if(window.XMLHttpRequest)
{
xmlhttp=new XMLHttpRequest();
}
else
{
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("package_info").innerHTML=xmlhttp.responseText;
}
}
if(thenum=="")
{
xmlhttp.open("GET","Package_description.php?type="+type+"&page=1",true);
xmlhttp.send();
}
else
{
xmlhttp.open("GET","Package_description.php?type="+type+"&page="+thenum,true);
xmlhttp.send();
}
}
实际上我无法捕获页面变量并将其传递到package_description.php文件,因此我捕获了package.php文件url并存储到url变量中然后我只使用.replace()函数提取了它的数字部分根据需要做了一些改变。 希望这件事可能在将来出现类似问题时帮助某人。 然后任何查询都做评论。 感谢