- ベストアンサー
リンク先をユーザ関数(同じファイル)にしたい
いつも質問に答えてくれてありがとうございます。 リンク先をユーザ関数(同じファイル)をするため 以下のようにしました。 (一部抜粋)ee.php --------------------------- function memberlist(){ ・ ・ ・ //ここが問題 $previous = "memberlist().php?offset=" . ($offset - $page1) . "&page1=" . $page1; --------------------------- 同じファイルですので 「ee.php」の箇所を 「memberlist()」に変更してみましたが、 「ページが見つからない」というエラーになってしまいます。 リンク先をユーザ関数をするのには どのように書けば宜しいですか?
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
こういうことでよいですか? ・リンク先は、同じスクリプト(ee.php) ・アクセスした場合、そのファイル(ee.php)のmemberlist()関数を実行するようにしたい。 一度、ユーザ側の画面に表示された場合、プログラムの動作は一旦終了します。 リンクをクリックした場合は、改めてプログラムを1から動作させることになります。 ですので、プログラムの先頭で、memberlist関数に行くような仕掛けを入れてあげる必要があります。 また、リンクには、そのための目印を入れる必要があります。 例:ee.php <?php if ($_GET["mode"] = "list") { memberlist(); } ---(省略)--- function mmeberlist() { $previous = "ee.php?mode=list&offset=" . ($offset - $page1) . "&page1=" . $page1; }
その他の回答 (1)
- yambejp
- ベストアンサー率51% (3827/7415)
>memberlist().php なにをやりたいのかよくわかりません。 ee.phpが表示されればよいのでしょうか? そういう場合は$_SERVER['PHP_SELF']などをつかいます。
補足
説明不足で申し訳ありません。 postgresSQLでデータベースから抽出したデータを 10件ずつ表示させて”次へ”を押すと11~20件目が表示。 また”次へ”を押すと...といった感じに"次へ"と"前に"を表示するために 過去の質問を参考にして、以下のようにしました (一部抜粋)ee.php --------------------------- ・ ・ ・ //検索結果が0件なら if($maxrows_nolimit == 0){ echo '条件に一致したデータはありません<br>'; } //1件以上あれば else{ echo $maxrows_nolimit.' 件のデータ中 '.$startno.'件~'.$endno.'件 を表示しています<br>'; } if(($offset > 0) and ($maxrows_nolimit <= ($offset + $page1))){ //ここが問題 $previous = "ee.php?offset=" . ($offset - $page1) . "&page1=" . $page1; echo '<a href="'.$previous.'"> 前へ </a><br>'; } --------------------------- この上記の処理は正常に動きました。 この一連の処理をユーザ関数「」にしました。 (一部抜粋)ee.php --------------------------- function memberlist(){ ・ ・ ・ //ここが問題 $previous = "memberlist().php?offset=" . ($offset - $page1) . "&page1=" . $page1; echo '<a href="'.$previous.'"> 前へ </a><br>'; --------------------------- ここからは繰り返しになってしまいますが 同じファイルですので 「ee.php」の箇所を 「memberlist()」に変更してみましたが、 「ページが見つからない」というエラーになってしまいます。 リンク先をユーザ関数をするのには どのように書けば宜しいですか?
お礼
ご返事有り難うございました。 > ・リンク先は、同じスクリプト(ee.php) > ・アクセスした場合、そのファイル(ee.php)のmemberlist()関数を実行するようにしたい。 ハイ、ご推察の通りです。 お陰様で解決しました。 有り難うございました。