php动态分页逻辑错误
我正在开发一个页面,用户可以在其中输入分页表的限制。在执行此操作时,将获取输入的数据,并根据该数据执行查询。但当我点击该表的另一页时,该值被重置为默认值,我在这里设置为5php动态分页逻辑错误,php,html,mysql,pagination,Php,Html,Mysql,Pagination,我正在开发一个页面,用户可以在其中输入分页表的限制。在执行此操作时,将获取输入的数据,并根据该数据执行查询。但当我点击该表的另一页时,该值被重置为默认值,我在这里设置为5 <?php session_start(); ?> <a href="recordentry.php">Submit New record</a><br><br> <form method="post"> <input type="text
<?php session_start(); ?>
<a href="recordentry.php">Submit New record</a><br><br>
<form method="post">
<input type="text" name="dlimit">
<input type="submit" name="submit">
</form>
<?php
$database = 'test';
require 'connection.php';
if(!isset($_POST['submit']))
{
$limit = 5;
}
else
{
$dlimit = $_POST['dlimit'];
$limit = $dlimit;
}
@$id = $_GET['id'];
if($id==""||$id==null)
{
$page=0;
}
else
{
$page = ($id*$limit)-$limit;
}
$qq ="select * from record limit $page,$limit";
$result = $link -> query($qq);
?>
<table border="1"><th>ID</th>
<th>Name</th>
<th>qualification</th>
<th>address</th>
</tr>
<?php
while ($row = mysqli_fetch_object($result))
{
?>
<tr>
<td><?php echo $row->id ?></td>
<td><?php echo $row->user_name ?></td>
<td><?php echo $row->qualification ?></td>
<td><?php echo $row->address ?></td>
</tr>
<?php
}
?>
</table>
<?php
$query = "SELECT * FROM record";
$result = $link -> query($query);
$rows = mysqli_num_rows($result);
$rr = $rows/$limit;
$rr = ceil($rr);
for ($i=1; $i<=$rr ; $i++) {
?>
<a href="recordfetch.php?id=<?php echo $i; ?>"><?php echo @$i;?> </a>
<?php
}
mysqli_close($link)
?>
身份证件
名称
资格
地址
运行上面的代码并检查。如果您不明白我的话。我想$u POST数据丢失了。你点击链接,新的页面将在没有发布信息的情况下打开 如果切换为“获取”而不是“发布”,则可以更改此设置。您可以将GET参数添加到
标记中
比如说
所以我得到了我问题的答案。我张贴在这里,如果有人需要它在以后的基础上
<a href="recordentry.php">Submit New record</a><br><br>
<form method="get">
<input type="text" name="dlimit">
<input type="submit" name="submit">
</form>
<?php
$database = 'test';
require 'connection.php';
if(empty($_GET['dlimit']) && !isset($_GET['submit']) && empty($_GET['n']))
{
$limit = 5;
global $limit;
}
else
{
if (isset($_GET['dlimit']))
{
$limit = $_GET['dlimit'];
}
else
{
@$limit = $_GET['n'];
}
global $limit;
}
if(!isset($_GET['submit'])&& empty($_GET['n']))
{
$n=5;
global $n;
}
else
{
if(empty($_GET['dlimit']))
{
$n=$_GET['n'];
}
else
{
$n=$_GET['dlimit'];
}
global $n;
}
@$id = $_GET['id'];
if($id==""||$id==null)
{
$page=0;
}
else
{
$page = ($id*$limit)-$limit;
}
$qq ="select * from record limit $page,$limit";
$result = $link -> query($qq);
?>
<table border="1"><th>ID</th>
<th>Name</th>
<th>qualification</th>
<th>address</th>
</tr>
<?php
while ($row = mysqli_fetch_object($result))
{
?>
<tr>
<td><?php echo $row->id ?></td>
<td><?php echo $row->user_name ?></td>
<td><?php echo $row->qualification ?></td>
<td><?php echo $row->address ?></td>
</tr>
<?php
}
?>
</table>
<?php
if (!isset($_GET['submit']) && empty($_GET['n'])) {
$n = 5;
global $n;
}
else
{
if (empty($_GET['dlimit'])) {
$n = $_GET['n'];
}
else
{
$n = $_GET['dlimit'];
}
global $n;
}
$query = "SELECT * FROM record";
$result = $link -> query($query);
$rows = mysqli_num_rows($result);
$rr = $rows/$limit;
$rr = ceil($rr);
for ($i=1; $i<=$rr ; $i++) {
?>
<a href="recordfetch.php?id=<?php echo $i; ?>&& n=<?php echo @$n; ?>"><?php echo @$i;?> </a>
<?php
}
mysqli_close($link)
?>
身份证件
名称
资格
地址
我在这里再次提到,我在这里包含的文件只是我填写连接详细信息的连接,另一个是我的记录输入文件,用户在其中输入数据。在没有丢失的文件和数据库结构等的情况下,我们应该如何运行您的代码?我尝试过,但我用get a替换了post循环到无限开始。文件中有两个链接,一个在数据库中输入数据的起始位置,另一个在存储数据库连接数据的连接位置。而recordfetch.php就是文件本身。我使用的演示SQL结构是用户名、资格和地址。希望这些信息能帮助解决这个问题。我不明白你想要什么。自动取款机。我认为您只需要一个用户定义的限制。因此,我会将GET添加到linkok,因为我缺少一个GET。但同样的事情,无论我在哪一页上,当我进入限制系统时,它会接受并处理,然后当我再次更改页面时,它开始显示默认值,即5,以便正确理解:您有一个表单,可以在其中设置页面上的元素数。如果使用它,页面将重新加载此页面上的元素。另外,您希望有一个分页,您可以在与变量相关的页数之间切换,对吗?是的,我在第1页输入的值不会移动到其他页面。请参见两页的URL dlimit是存储文本字段值的变量。