ホームページ  >  記事  >  バックエンド開発  >  PHP_PHP チュートリアルで AJAX リクエストを決定する方法

PHP_PHP チュートリアルで AJAX リクエストを決定する方法

WBOY
WBOYオリジナル
2016-07-15 13:25:46815ブラウズ

Web ページリクエストが Ajax リクエストであるか、PHP の通常のリクエストであるかを判断するにはどうすればよいですか?これは、たとえば、次の URL リクエストを使用してパラメータを渡すことで実現できます。

/path/to/pkphp.com/script.php?ajax

PHP スクリプトで次のメソッドを使用して決定します。

_GET パラメータメソッドを渡すことで、Web ページリクエストの判定を実装するだけです。ただし、そのような機能が必要な場合、この方法には次のような欠点がある可能性があります。

1. ajax を通じてリクエストされた Web ページのコンテンツは、通常のリクエストを通じてリクエストされた Web ページのコンテンツとは異なります。 2. ajax 経由でリクエストされた Web ページは、ユーザーの操作の便宜を図るため、2 つのメソッドでリクエストされた Web ページの必要なコンテンツは同じですが、Ajax でリクエストされた Web ページのコンテンツは比較的簡略化されて使用されており、大きなフレームが使用されています。 Web ページのテンプレートが削除されます。 3. この目的は次のとおりです。ユーザーは、この操作を Ajax を通じて実装し、検索エンジンが Web ページにアクセスすると (通常の Web ページを開くのと同じです)、コンテンツを取得します。完全な Web ページです (Web ページの大きなフレーム テンプレートを含む)。 上記の関数を完了するには、先ほど紹介した GET パラメータの受け渡しを使用して判断することはできません。GET の受け渡しを使用して判断する場合、ユーザーの ajax リクエストと通常の Web ページのリクエストは同じ内容になります。 link は、ajax 判定パラメータを含む URL と含まない URL を設定します。では、この機能をどのように実装すればよいのでしょうか?この問題はサーバー側のPHP判断で解決する必要があります。つまり、今日は PHP が ajax リクエストをどのように判断するかについて話します。この問題を解決するには前提条件があります。それは、使用する ajax フレームワークが jquery である必要があるということです。 jquery フレームワークでは、$.ajax、$.get、または $.post メソッドを通じて Web コンテンツをリクエストするときに、HTTP_X_REQUESTED_WITH パラメータをサーバーに渡します。次のメソッドを使用して、リクエストが ajax リクエストであるかどうかを判断できます。または、通常のリクエスト:

if(isset($_GET['ajax'])) {<br>…这是一个ajax请求,然后…<br>}<br>else {<br>…这不是一个ajax请求,然后…<br>}

これを使用すると、Web ページの URL の一貫性を維持できますが、2 つの異なるコンテンツを持つ Web ページを取得できます。さまざまなリクエスト。検索エンジンの組み込みに影響を与えることなく、ユーザー操作の最適化を実現できる素晴らしいソリューションだと思います。

ここで注意すべきもう 1 つの問題は、jquery リクエストが iframe 経由で Web ページを開く場合、HTTP_X_REQUESTED_WITH パラメーターが渡されないことです。つまり、リクエストのタイプを判断する方法がありません。

http://www.bkjia.com/PHPjc/446659.html

www.bkjia.com

tru​​e
  1. http://www.bkjia.com/PHPjc/446659.html
技術記事
Web ページのリクエストが Ajax リクエストであるか、PHP の通常のリクエストであるかを判断するにはどうすればよいですか?これを行うには、たとえば次の URL リクエストを使用してパラメータを渡します: /path/to/pkphp.com/script...

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。