• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:fuelphpのpagination)

fuelphpのpaginationクラスでGETパラメータを付加する方法

このQ&Aのポイント
  • fuelphp初心者のため、paginationクラスのpagination_url属性にGETパラメータを付加する方法を知りたい。
  • 現在、'pagination_url' => 'search/type/'と設定しているが、'pagination_url'の後ろに「?param1=hoge」を付加させたい。
  • ただし、付加したGETパラメータの後ろにセグメント情報が付加されないようにしたい。

質問者が選んだベストアンサー

  • ベストアンサー
  • cs_sonar
  • ベストアンサー率100% (1/1)
回答No.1

fuelPHP初心者というかPHP自体不慣れな者なので参考程度に。 COREを見てる感じですとページ番号がURLの最後につくのが固定なようなので 理想となるようなURLを生成する機能は恐らくないと思います。 fuel/core/classes/pagination.php これを元に新たなコアクラスを作り代替するか コアクラスを拡張するしかないような感じがします。 (強引に上記ファイル自体を触ってしまってもいいと思いますが)

参考URL:
http://press.nekoget.com/fuelphp_doc/general/extending_core.html
imonikai
質問者

お礼

ご回答ありがとうございます。 ”新たなコアクラスを作り代替”というヒントを基に色々調べた結果、 新しいクラスをオーバーライドすればできるようですので、 挑戦してみます ご回答ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • codeigniterのページネーションについて

    <?php class Test extends CI_Controller { public function __construct(){ parent::__construct(); // これ以降にコードを書いていく $this->load->model('rmodel'); $this->load->helper(array('form', 'url')); } public function index(){ $data["mlist"] = $this->my_list($this->uri->segment(2)); $data["page_link"] = $this->set_page_link(); //View $this->load->view('mypage',$data); } //ページめくり function set_page_link(){ $this->load->library('pagination'); $config['base_url'] = base_url().'mypage/'; $config['total_rows'] = $this->rmodel->Get_Count(); $config['per_page'] = 10; $config['cur_tag_open'] = '<strong>'; $config['cur_tag_close'] = '</strong>'; $this->pagination->initialize($config); return $this->pagination->create_links(); } function my_list($prm){ if($prm==""){ $prm=0; } $conv = $this->rmodel->Get_list(); $list = ""; for($i=$prm;$i<=$prm+9;$i++){ $list .= '<div class="nr">'."\n"; $list .= $conv[$i]["hoge"];              ・              ・              ・      $list .= '</div>'; } return $list; } } ?> として10件づつの一覧をページめくりする形で表示しようとしています。 ところが、11件目から20件目を表示するときに2ページ目のページめくりの数字が黒のリンクなしに切り替わらず、「1」がリンクなしになっています。 同様に21件目から30件目を表示するときに3ページ目のページめくりの数字が黒のリンクなしに切り替わらず、「1」がリンクなしのままです。 上記のソースでどこが悪いんでしょうか? URLはhttp://hogehoge.com/mypage/(offセット値) よろしくお願いします。

    • ベストアンサー
    • PHP
  • 静的URL変換について

    現在,phpでウェブサイトを作成しているのですが、 サイト内検索をしたときのURLを静的化できないか、考えております 例)getで送った際のURL hoge.com/search.php?keyword=hoge 修正後 hoge.com/kewyword_hoge.php そして、その際にやりたいことは、hoge.com/kewyword_hoge.phpをインデックスさせ このURLのページにアクセスしてきたときにhoge.com/search.php?keyword=hogeを 実行するようにしたいのですが、これって可能でしょうか? 静的URL変換自体は問題ないのですが、 hoge.com/kewyword_hoge.phpにアクセスしてもhoge.com/search.php?keyword=hoge を実行してくれず困っております。 恐れ入りますが、解決策をご教授いただけませんでしょうか? 何卒宜しくお願いします。 また、私のやりたいことは以下のサイトで参考になります。 ■インデックスされているURL(google) http://j-sen.jp/kanto/keyword_%E3%81%86%E3%81%A9%E3%82%93.htm ■サイト内検索のURL http://j-sen.jp/search/?area=kanto&nmin%5Bname%5D=&nmin%5Btime%5D=&nmin%5Bn%5D=&wage=&freeword=%E3%81%86%E3%81%A9%E3%82%93&day=&hour=&feature%5B%5D=&feature%5B%5D=&medical=1&except_medical=0&x=82&y=22 どちらも検索結果は同じですが、サイト内検索のURLを静的化し、 google先生にインデックスさせています。 お手数ですが、改めて解決策のご教授お願い申し上げます。

    • 締切済み
    • PHP
  • array_searchを使って外部ファイルから目的のキーを取得したい

    array_searchを使って外部ファイルから目的のキーを取得したいのですが どうしてもFALSEを返されてしまいます。 以下が構文です。 <?php $file = file_get_contents("arr.php"); $arr =explode("\n",$file); $delstr="DEF"; $hoge = in_array($delstr,$arr,1); if($hoge !== false){ array_splice($arr,$hoge,1); } var_dump($hoge); print_r($arr); ?> 3日くらい悩んでいます。 どうかご教授よろしくお願い致します。

    • 締切済み
    • PHP
  • arrayの中で、ループを使った採番など。

    前回の続きになるのですが、下記の様に、arrayを複数にすると動かなくなります。 何が間違っているのでしょうか? $url = array(); for($i = 1; $i <= 42; $i++) { $seminar = "http://www.hoge.com/seminar/".sprintf("%04d", $i).".html"; $url[] = $seminar; } $test = array( "http://www.hoge.com/seminar/0043_01.html" "http://www.hoge.com/seminar/0043_02.html" ); $array = array($url, $test); $myUrl = "http://www.hoge.com/seminar/0045.html"; if(in_array($myUrl, $array)){ echo "配列に".$myUrl."は存在します。"; } else { echo "配列に".$myUrl."は存在しません。"; }

    • ベストアンサー
    • PHP
  • cakephpで$paginatorにつけたいセッションID

    先人たちへ、どうかお助け下さい。 会員制の携帯サイトを製作中です。 URLの後ろにセッションIDを持たせたまま $paginatorでページ送りをしたいんですが そのページリンクにはセッションIDが付加されていないため クリックすると当然ログアウトになります。 単純に$paginatorのリンクの後ろにIDを付加させて 表示させたいんですが、うまくいきませんでした。 マニュアルに書いてあることは $paginator->options(array('url' => $this->passedArgs)); これでは、http://hoge.com/aaa/ここに入る/:2 こうでなくて、 http://hoge.com/aaa//:2?ここに入れたい。 独自のヘルパー作るしかないのでしょうか? なんか、簡単にいける方法があったらお知恵を 分けて下さい。 宜しくお願いします。

    • 締切済み
    • PHP
  • javascriptの呼び出し方

    「下記を組み込んで使って」知り合いより依頼を受けました。 そこで、下記処理を呼び出す場合、 var API = new GETAPI(); とすると、search.login/search.get/search/logout 全部callされる事になります。 それをここに呼び出す方法としてはどうしたらいいかご教授下さい。 例えば、search.loginだけを呼び出したい。 ======================================== (function(){ window.GETAPI = function(){ var search = this; search.login = function(param){ console.log("login"); }; search.get = function(param){ console.log("get"); } search.logout = function(param){ console.log("get"); } return search; } }()); ======================================== 自分のイメージとしては上記処理ではなく、 下記処理で知り合いから頂くものと思ってたので、 ここに呼び出す事は可能だと思っていました。 ========== GETAPI.prototype{ 'login' : function(param){ }, 'get' : function(param){ }, 'logout' : function(param){ } } ========== 基本的なjavascriptの質問になってしまいますが、 宜しくお願い致します。

  • HTTPSのとき":"が"%3A"ではなく"%253A"とエンコードされるのは?

    URLエンコードについて教えていただきたいことがあります。 <a href=http://hoge.com/hoge?http%3A%2F%2Fhuga.com>hoge</a> というリンクは、当然 http://hoge.com/hoge?http%3A%2F%2Fhuga.com というURLに対して張られますよね? しかし、プロトコルがHTTPSの場合、 https://hoge.com/hoge?http%253A%252F%252Fhuga.com というように、":"や"/"のエンコードされた値に"25"が付加されたURLにリンクが張られてしまうようなのです。 これはなぜなのでしょうか? ご存じの方、教えていただけると幸いです。

    • ベストアンサー
    • HTML
  • [CakePHP] Paginatorのリンクが変

    CakePHPのPaginatorを使ったページリンクが正しく出力されません。 1ページ目は正しく出力できていますが、2ページ目などに移動した際にURLがおかしくなります。 現状 1ページ目 http://www.example.com/hoge/2 ↓ 2ページ目 http://www.example.com/hoge/2/page:3 理想 1ページ目 http://www.example.com/hoge/2 ↓ 2ページ目 http://www.example.com/hoge/3 また、パラメータがついた場合も 1ページ目 http://www.example.com/hoge/2?hoge=hoge ↓ 2ページ目 http://www.example.com/hoge/3?hoge=hoge となるようにしたいのですが、何を間違えているのでしょうか。 ちなみにソースは以下のようになってます。 View/Hoge.php echo $this->Paginator->prev('< 前へ', array(), null, array('class' => 'prev disabled')); echo $this->Paginator->numbers(array('separator' => '')); echo $this->Paginator->next('次へ >', array(), null, array('class' => 'next disabled')); Config/routes.php Router::connect(     '/hoge/:page',     array(         'action' => 'hoge',     ),     array(         'pass' => array(             'page',         )     ) );

    • 締切済み
    • PHP
  • Ruby net/httpについて

    Rubyで#!/ruby/bin/ruby require 'net/http' require 'uri' print "content-type: text/html\r\n\r\n"; begin url = "http://~~~.com/" Net::HTTP.get_print URI.parse(url) rescue => ex print ex.class; print "<hr />"; print ex.message; print "<hr />"; print ex.backtrace; end というようなコードで指定のURLの内容をgetしたいと思っています。 が、とりあえずは上記内容でURL先の内容は取得できるのですが url = "http://www.~~~.com"; という風にwwwをつけるとスクリプトがうごかずURL先の内容が取得できないのです。 原因はなんなのでしょうか? 識者のかたご教授ください。

    • ベストアンサー
    • Ruby
  • CRON でPHPスクリプトをGET変数付きで実行したい

    CRONで下記のようにPHPスクリプトをGET値(hoge=1)を付加して実行したいのですがうまくできません。 */1 * * * * php path/myscript.php?hoge=1 CRONでPHPスクリプトを実行する場合、GET変数は使えないのでしょうか? ご教授お願いいたします。

    • ベストアンサー
    • PHP