2012-02-10 2 views
0

私がしたいことは簡単です:システムがサインインプロセス中に、同じ資格でサインした他の人がいることを検出した場合、現在サインインしているIPアドレスとブラウザについてユーザに通知するため、PHPやJavascriptを使用してブラウザ名サインイン中にデータベースに追加します。あなたはこの目的のために良いスクリプトを知っていますか?ブラウザの検出に最適なのは、PHPまたはJavascriptですか?

リンクまたは郵便番号をお知らせください。

+2

PHPは、HTTPヘッダのUser-Agentのとして送信されているもののを除いて、ブラウザについては何も '知りません'。 UAヘッダーにはhttp://www.php.net/get_browserを使用できますが、UAを変更するブラウザに多くのアドオンが存在するため、その情報に100%頼ることはできません。 – Cheery

+0

サーバーで実行する必要がある場合は、サーバー上で実行しているものであれば何でも書き込む必要があります。 –

+1

PHPはブラウザの検出用ではありません..! – Ved

答えて

0

Javaスクリプトはブラウザの検出に最も適しています。これは、ブラウザで利用できる情報がhttpのユーザーエージェントヘッダーから取得されているためです。カスタマイズできるため、ブラウザについては確認できません。しかし、javascriptを使用すると正しい結果が得られます。 Uはjquery組み込み関数を使用してブラウザとそのバージョンを確認できます。

例:ブラウザ情報を表示します。

<!DOCTYPE html> 
<html> 
<head> 
    <style> 
    p { color:green; font-weight:bolder; margin:3px 0 0 10px; } 
    div { color:blue; margin-left:20px; font-size:14px; } 
    span { color:red; } 
    </style> 
    <script src="http://code.jquery.com/jquery-latest.js"></script> 
</head> 
<body> 

<p>Browser info:</p> 

<script> 
    jQuery.each(jQuery.browser, function(i, val) { 
     $("<div>" + i + " : <span>" + val + "</span>") 
       .appendTo(document.body); 
    });</script> 

</body> 
</html> 


Browser info: 
mozilla : true 
version : 10.0 

チェックドキュメント http://api.jquery.com/jQuery.browser/

+0

その名前を返しますか? – heron

+0

使用可能なフラグは次のとおりです。あなたがリンクするjQueryのドキュメントは、それがあることを説明しますが、これらのフラグをチェックする必要があり サファリ(非推奨) オペラ MSIE モジラ (jQueryの1.4のよう)、詳細に文書を通過 –

+0

のWebKit PHPの実装以上のことはしていません。報告されたUser-Agentを解析します。このコードは、UAパーサーと同じスプーフィング問題の影響を受けやすいです。 – cspray

関連する問題