質問

私はPHPでの私のプロジェクトのために、ポケットベルを備えたシンプルなテーブルクラスを作りました。ページアドレスに渡されたパラメーションが含まれていない場合、それは正常に動作します GET 方法。これがポケットベルでテーブルを作成する方法です

$tbl = new table();
$tbl->headers(array ("Header1", "Header2"));
$query = "SELECT COUNT(*) FROM table";
$tbl->pager(15, $query);           
$tbl->page = $_SERVER['PHP_SELF'];
$query = "SELECT id, name, FROM table";
$tbl->createTable($query);

で使いたいです switch 働き

switch ($_GET['a']) {
        case b:
            $tbl = new table();
            $tbl->headers(array ("Header1", "Header2"));
            $query = "SELECT COUNT(*) FROM table";
            $tbl->pager(15, $query);

            $tbl->page = $_SERVER['REQUEST_URI'];
            $query = "SELECT id, name, FROM table";
            $tbl->createTable($query);
            break;
        case c:
            ...
            break;
    }

$_SERVER['REQUEST_URI'] 通過します page.php?a=b ポケットベルに、本来あるべきページャーを作成します。問題は、ページを切り替えると発生します REQUEST_URI 毎回パス page.php?a=b +実際のページ番号私はポケットベルに向かっているので、アドレスは次のようになります pager.php?a=b&page1&page=2.... 。そして、私の質問は、ポケットベルにのみ合格する方法があるということです page.php?a=b そして、それを変更できない、またはそのようなsthにしますか?私の質問が明確であることを願っています。

役に立ちましたか?

解決

SD

function getQE(){
     if($_GET){ 
       // exlude some variables from $_GET (pass names of variables in function call)
       $ex = func_get_args();
       $qstr  = "?";
       foreach($_GET as $key=>$value) {
          if (!in_array($key, $ex)){
              $qstr .= $key."=".$value;
              $qstr .= '&';
          }
       }
     }
return $qstr;
}

「ページ」なしでクエリ文字列を取得する場合は、次のようにこの関数を呼び出す必要があります。

$get = getQE('page');

複数を除外する必要がある場合:

$get = getQE('page', 'section','folder');
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top