0

$_SERVER['']で始まるような PHP 関数があるかどうかはわかりません。これは 、現在のページで、ユーザーがどのページから来たかをユーザーに伝えます。

元。foo.com?id=abc をブラウジングしてから foo.com?id=efg に移動した場合、foo.com?id=abc から直接アクセスしたことを示す現在のページが必要です。

このコードがどうしても必要なので、助けていただければ幸いです。

4

4 に答える 4

5

です$_SERVER['HTTP_REFERER']。ただし、ブラウザがそうした場合にのみ入力されます。それ以外の場合は、ユーザー自身を追跡する必要があります (つまり、セッションの最後のページを保存することにより)。

于 2012-09-23T10:12:03.653 に答える
3

$_SERVER 変数は、正確な回答を提供するために依存すべきではありません。PHP セッションを使用して、それらがどのページから来たのかを追跡し、新しいページに移動するたびに単純に更新する必要があります。次のようなもの:

session_start();
if(!empty($_SESSION['visited_pages'])) {
  $_SESSION['visited_pages']['prev'] = $_SESSION['visited_pages']['current'];
}else {
  $_SESSION['visited_pages']['prev'] = 'No previous page';
}
$_SESSION['visited_pages']['current'] = $_SERVER['REQUEST_URI'];

次に、前のページにアクセスするには、次のようにアクセスします: $_SESSION['visited_pa​​ges']['prev']

于 2012-09-23T10:22:05.433 に答える
2

はい、これは PHP だけでなく、HTTP プロトコル仕様の一部です。次を使用します。

$_SERVER['HTTP_REFERRER']
于 2012-09-23T10:12:46.203 に答える
2

HTTP_REFERRERは、ファイルを要求したページのアドレスを示します。たとえば、ページ上の画像は個別のリクエストであり、このリクエストには $_SERVER['HTTP_REFERRER'] がページに設定されています。

ブラウザがサーバーに履歴へのアクセスを許可しているとは思いません。JavaScriptでできますが、戻るボタンしかありませんが、URLには簡単にアクセスできません。計算された色にリンクにアクセスすることにより、単純なcssとjavascriptのトリックを使用して実現できますが。

于 2012-09-23T11:13:18.133 に答える