• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:「次の○件」の時、値がデフォルトにもどってしまいます。)

検索システムで次へをクリックしてもデフォルトが戻ってしまう問題の解決方法

このQ&Aのポイント
  • MySQLとPHP4で作成した検索システムで、20件ずつ表示させているが、「次へ」をクリックしてもうまく表示ができない問題が発生しています。
  • キーワードはurlencodeを使って解決しましたが、プルダウン(コンボボックス)を使ったOrderByの設定がデフォルトに戻ってしまう問題があります。
  • urlencodeでは解決できなかったため、他の方法で解決するためのアドバイスをいただけますか?

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

  • ベストアンサー
  • LancerVII
  • ベストアンサー率51% (1060/2054)
回答No.1

こんにちは。 $sort=$_POST[sort]; //または、GET で受け取った$sortの値をURLにそのまま 埋め込んで実行できないでしょうか? *.php?text=キーワード(エンコード後)&sort=$sort >プルダウン(コンボボックス?)を使ったOrderByの設定がデフォルトに戻ってしまいます。 もしかして、検索時に選択されたコンボボックスの値が 著者名のソート条件で検索を行ったのに、次のページへ 遷移すると、書名の選択状態になってしまうということでしょうか? <SELECT name="sort"> <OPTION value="title">書名</OPTION> <OPTION value="auth">著者名</OPTION> </SELECT> このソースが次のページに行っても表示されてしまうので 書名が選択状態になってしまうと思います。 <SELECT name="sort"> <OPTION value="title" <?php if($sort=="title"){print " selected";} ?>>書名</OPTION> <OPTION value="auth" <?php if ($sort=="auth"){print " selected";} ?>>著者名</OPTION> </SELECT> こうすることにより、$sortの中身を判別し、対応した値 が送信されてきたらselectedを出力することにより、 デフォルトの選択状態を任意に設定することが出来ます。 的を得ていなかったら申し訳ないです。

Library1399
質問者

お礼

丁寧なご回答、ありがとうございます。 言いたかったことはそれです。こちらこそ説明不足で申し訳ありません。 *.php?text=キーワード(エンコード後)&sort=$sort だけをやってもできなかったのですが、 <?php if ($sort=="auth"){print " selected";} ?> も使ってやってみます。 本当にありがとうございました。

Library1399
質問者

補足

すみません。補足というか、お礼の補足です。 できました!ありがとうございました。

関連するQ&A