0

私はどこかにページ付けを実装しようとしていますが、この問題があります:

リンクを変更するためにこの部分があります:

echo " <a href='$_SERVER[SCRIPT_NAME]?Page=$Prev_Page'><< Back</a> ";  

これにより、この部分でこのエラーが発生します。

$Page = $_GET["Page"];  
if(!$_GET["Page"])  
{  

未定義のインデックスと表示されます。なぜこのエラーが発生するのですか?ありがとう

4

3 に答える 3

3

配列インデックスを引用する必要があります。html エンティティも使用します。このような

echo " <a href='{$_SERVER['SCRIPT_NAME']}?Page=$Prev_Page'>&lt;&lt; Back</a> "; 

$_GET["Page"]存在するかどうかを確認しても安全です。

$Page = isset($_GET["Page"]) ? $_GET["Page"]: false;
于 2012-12-17T15:37:35.557 に答える
1

これは、配列にインデックスがないために発生します。$_GET は単なる配列なので、最初にキーが存在するかどうかを確認する必要があります。

$Page = (array_key_exists('page', $_GET)) ? $_GET["page"] : false;  
if($Page===false)  
{  
   //no page
   return;
}
于 2012-12-17T15:37:50.777 に答える
0
// empty() works even if the variable doesn't exist, kind of like isset()
if(!empty($_GET['Page']) !== false) {
    // Do stuff
    $page = $_GET['Page'];
}
于 2012-12-17T15:41:26.053 に答える