Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用分页类限制我的sql查询的问题_Php_Pagination - Fatal编程技术网

Php 使用分页类限制我的sql查询的问题

Php 使用分页类限制我的sql查询的问题,php,pagination,Php,Pagination,我有一个php分页类,无法找到限制SQL查询的方法。这会生成分页按钮,但不知道如何限制查询输出。另外,我将如何将这个类与url中的其他变量一起使用呢。因为这个不支持它,我不认为。喜欢 php?状态=pending&page=4 这是我的“工作”页面中的内容 您提供的链接显示了以下用法: $pages=新分页器 $pages->items_total=$num_行[0] $pages->mid_range=9 $pages->paginate() echo$pages->display_page

我有一个php分页类,无法找到限制SQL查询的方法。这会生成分页按钮,但不知道如何限制查询输出。另外,我将如何将这个类与url中的其他变量一起使用呢。因为这个不支持它,我不认为。喜欢

php?状态=pending&page=4

这是我的“工作”页面中的内容

  • 您提供的链接显示了以下用法:

    $pages=新分页器
    $pages->items_total=$num_行[0]
    $pages->mid_range=9
    $pages->paginate()
    echo$pages->display_pages()

在本例中,
9
是您选择的结果总数,在使用分页器之前,请使用
select count(1)from…
查找此数字(结果总数)

  • 对于POST/GET参数:在调用参数上的paginator循环并将其保存为字符串之前:
foreach($\u获取为$key=>$val){
$str.=“$key=$val&”;}

然后在每次创建
HREF
时重写该类,例如,更改:

<?php 

require_once('classes/class.paging.php');

// PAGINATION STUFF
$ordercount1 = mysql_query("SELECT * from orders WHERE technumber='$myuserid'");
$ordercount2 = mysql_num_rows($ordercount1);

// echo $ordercount2;

    $pagingClass = new paging();

    $limit = 10;        //Number of rows that we show on page
    $allRows = $ordercount2;    //Number of all rows that we have

    if(isset($_POST['page'])) {
        $_GET['page'] = $_POST['page'];
    }

    if(!isset($_GET['page']) || !is_numeric($_GET['page'])) {
        $_GET['page'] = 1;
    }

    //We off the page number
    $pagingClass->showPagesNumber = false;
    $pagingClass->showPagesForm = false;
    $pagingClass->numberOfPages = 10;
    echo $pagingClass->generate('?page=', '', $_GET['page'], $limit, $allRows);

// END PAGINATION STUFF

?>
“href=\”{$\u服务器[PHP\u SELF]}?页面=$i&ipp=$this->items\u per\u页面\“>$i”;
致:

“href=\”{$\u服务器[PHP\u SELF]}.$str.$page=$i&ipp=$this->items\u per\u page\“>$i”;

是否限制您的查询?你这是什么意思?url变量有什么问题?最重要的是不要使用
mysql.*
——不仅如此,它还会邀请sql\u注入。限制我的查询,以便我只能显示记录的数量,并使其在每个分页页面上相应地移动$getmyorders=mysql_查询(“从订单中选择
orderid
status
date
,其中technumber='$myuserid'订单按日期描述限额$LIMITER(此处“);这里的$limitor_就是我所需要的,因为我猜想这个类的编码者没有实现它(例如:在这个脚本中,SQL查询的限制器是$pages->limitany by URL变量,比如我转到mypage.php?status=pending,但是如果我点击实例第4页,它会转到mypage.php?page=4,而不是mypage.php?status=pending&page=4。我提供的链接就是一个例子。粘贴在我主要帖子中的代码是ac。)我将使用实际类。我找到了SQL限制器。这是我的解决方案。我仍然很好奇如何用我的主要帖子中列出的分页类修复我的url问题。我想你说的是我需要的,但我如何将其实现到上面的分页类中(我主要帖子中的第一个代码框)这样它就可以工作了吗?不是您所指的示例链接。在上面的代码中有一条注释:您可以在index.php脚本(使用此包)中找到示例-最好检查这些示例的使用情况。我检查了,index.php没有SQL查询的示例输出。
<?php 

require_once('classes/class.paging.php');

// PAGINATION STUFF
$ordercount1 = mysql_query("SELECT * from orders WHERE technumber='$myuserid'");
$ordercount2 = mysql_num_rows($ordercount1);

// echo $ordercount2;

    $pagingClass = new paging();

    $limit = 10;        //Number of rows that we show on page
    $allRows = $ordercount2;    //Number of all rows that we have

    if(isset($_POST['page'])) {
        $_GET['page'] = $_POST['page'];
    }

    if(!isset($_GET['page']) || !is_numeric($_GET['page'])) {
        $_GET['page'] = 1;
    }

    //We off the page number
    $pagingClass->showPagesNumber = false;
    $pagingClass->showPagesForm = false;
    $pagingClass->numberOfPages = 10;
    echo $pagingClass->generate('?page=', '', $_GET['page'], $limit, $allRows);

// END PAGINATION STUFF

?>
"href=\"{$_SERVER[PHP_SELF]}?page=$i&ipp=$this->items_per_page\">$i</a> "; 
"href=\"{$_SERVER[PHP_SELF]}?" . $str . "page=$i&ipp=$this->items_per_page\">$i</a> ";