0

私はプログラミングの初心者です。私は次のように動作するPHPのWebサイトを持っています

インデックスページ-検索結果-製品を表示

サイトユーザーがインデックスページに検索基準を入力すると、ページが検索結果ページにPOSTされます。そこから、サイトユーザーはProduct hrefをクリックして、ProductDetailsに移動します。これはここまで正常に機能しています。

この問題は、ユーザーがブラウザの[戻る]ボタンをクリックすると発生します。検索結果ページが完全にクラッシュし、ユーザーはF5/ブラウザの更新を押して再送信する必要があります。このクラッシュを回避するために使用できるアイデア/技術はありますか?

4

2 に答える 2

1

アイデアは、POST の代わりに検索フォームのメソッドに GET を使用することです (使用しているようです)。そうすれば、ブラウザーの履歴をさかのぼっても、サーバーは検索結果を再提供できます。

次のものが必要です。

  • 検索フォームで に変更method="post"しますmethod="get"
  • $_POST検索フォーム データに関連するすべてを$_GET、検索フォーム処理 php ファイルに変更します。

もちろん、特定のユースケースでは機能しません。それは単なるアイデアです。

于 2012-07-19T04:49:14.997 に答える
1

ブラウザがデータを POST したページに戻ると、ブラウザは同じページに戻るためにデータを再 POST する必要があることがよくあります。これは場合によっては良くないことがあるため (注文フォームの再投稿など)、多くのブラウザーでは、ユーザーが警告を表示して強制的に更新する必要があります。

通常、これを回避するには、POST フォームの代わりに GET を使用できます。

于 2012-07-19T04:50:32.680 に答える