var undefined get value $ _GET [' page']

时间:2015-11-28 08:16:11

标签: php pagination

我希望分页是新闻博客的内容。一切正常,页面内容成功。但我得到一个错误屏幕显示PHP:

注意:未定义索引:第146行C:\ wamp \ www \ index.php中的页面

带有错误行的代码:

$maxreg = 1;

    $pag = $_GET['page'];

if (!isset($pag) || empty($pag)){

      $min = 0;
      $pag = 1;  

}else{

      if($pag == 1){

            $min = 0;

      }else{

            $min = $maxreg * $pag;
            $min = $min - $maxreg;

      }
}

include("js/class.AutoPagination.php");
$obj = new AutoPagination(contar_contenido(), $pag);

mostrar_contenido($min,$maxreg);

echo $obj->_paginateDetails();

该行给出的错误是:

$ page = $ _GET ['page'];

默认情况下,第一页是index.php,并且url中没有包含var。 我不明白为什么如果在条件var下面失败我确定它是否有内容。

不应该显示任何错误php,有人可以给我一个解决方案吗?感谢

3 个答案:

答案 0 :(得分:2)

你不需要做

$pag = $_GET['page'];

检查是否先设置$ _GET ['page']:

if(!isset($_GET['page']) || empty($_GET['page'])) {

    $min = 0;
    $pag = 1;

}else{

    if($pag == 1){

        $min = 0;

    }else{

        $min = $maxreg * $pag;
        $min = $min - $maxreg;

    }
}

答案 1 :(得分:1)

我引用;

声明你的变量。或者使用isset()检查它们是否在引用它们之前声明;

PHP: "Notice: Undefined variable", "Notice: Undefined index", and "Notice: Undefined offset"

答案 2 :(得分:0)

我找到了解决方案,我已经构建了,如果它是无限期的,则为变量empty get in赋值。 也许这是一个非常优雅的解决方案,但它可以完美分页。

 if(!isset($_GET['page']) || empty($_GET['page'])) {

        $_GET['page']="";

        }


        $maxreg = 2;
        $min = 0;
        $pag = $_GET['page'];

我认为第二个条件遗留下来。

我留在这里以防万一有人遇到同样的问题。这样你就可以修复它。