php动态分页逻辑错误

php动态分页逻辑错误,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

我正在开发一个页面,用户可以在其中输入分页表的限制。在执行此操作时,将获取输入的数据,并根据该数据执行查询。但当我点击该表的另一页时,该值被重置为默认值,我在这里设置为5

<?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;?>&nbsp;</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;?>&nbsp;</a>  
<?php    
}
mysqli_close($link)
?>


身份证件 名称 资格 地址

我在这里再次提到,我在这里包含的文件只是我填写连接详细信息的连接,另一个是我的记录输入文件,用户在其中输入数据。

在没有丢失的文件和数据库结构等的情况下,我们应该如何运行您的代码?我尝试过,但我用get a替换了post循环到无限开始。文件中有两个链接,一个在数据库中输入数据的起始位置,另一个在存储数据库连接数据的连接位置。而recordfetch.php就是文件本身。我使用的演示SQL结构是用户名、资格和地址。希望这些信息能帮助解决这个问题。我不明白你想要什么。自动取款机。我认为您只需要一个用户定义的限制。因此,我会将GET添加到linkok,因为我缺少一个GET。但同样的事情,无论我在哪一页上,当我进入限制系统时,它会接受并处理,然后当我再次更改页面时,它开始显示默认值,即5,以便正确理解:您有一个表单,可以在其中设置页面上的元素数。如果使用它,页面将重新加载此页面上的元素。另外,您希望有一个分页,您可以在与变量相关的页数之间切换,对吗?是的,我在第1页输入的值不会移动到其他页面。请参见两页的URL dlimit是存储文本字段值的变量。