ホームページ >バックエンド開発 >PHPチュートリアル >SESSION と検証コードに関する奇妙な問題

SESSION と検証コードに関する奇妙な問題

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBオリジナル
2016-06-23 14:11:33964ブラウズ

サーバーは Apache でインストールされています

ウェブサイトは ThinkPHP フレームワークを使用して開発されており、検証コード画像が付属しています

会員登録ページは検証コードを使用しており、HTML ページ:



登録時に、プログラムは検証コード イメージのコードを決定します。

if($ _SESSION['verify'] != md5($_POST['verify']))
exit('検証コードエラー!');

テストしたのでプログラムには問題はないはずですローカルでもサーバーでも正常です

しかし、今日誰かが、登録時に確認コードが正しく入力されたのに、結果は「確認コードが間違っています」と表示されたと言いました。

彼は、IE と FF ブラウザでは動作しないと言いました...

私もテストして新しいメンバーを登録し、他の人もメンバーとして登録しましたが、同じように成功しました。

私のような状況では何が問題だったのか分かりません。

Web環境(apache+php)に何か問題があるのでしょうか?


ディスカッションへの返信(解決策)

一部の人には許可されていません

問題がクライアントに関連しているか、すべてクライアントにあることを示します

一部の人には許可されていません

という意味です問題はクライアントに関連しているか、すべてクライアント端末にあります

さて、この友人は登録するためにコンピューターを変更しましたが、それでも確認コードが間違っていると言っていました。

奇妙なことに、クライアント側のネットワークの問題でしょうか?そのため、表示される認証コードの画像は実際のものと異なります

一文追加
if(isset($_SESSION['verify']) && $_SESSION['verify']!=NULL && $_SESSION['verify ']!= ''){
//検証値が等しいかどうかの判断を続ける
}else{
echo 'session[verify] 値が存在しないか空である場合、サーバーのセッション機能が正常であるかどうかを確認します。 ';
}

文を追加します
if( isset($_SESSION['verify']) && $_SESSION['verify']!=NULL && $_SESSION['verify']!=' '){
//検証値が等しいかどうかを判断し続けます ;
}else{
echo 'session[verify] 値が存在しないか空であるため、サーバーのセッション関数が正常であるかどうかを確認します
}

なるほど、この方法は良いですね、試してみます。

SESSION['verify'] 値が存在しないか空の場合は、サーバーの問題であると判断できるはずです

それはブラウザの設定に問題があると判断できます。

文を追加します
if(isset($_SESSION['verify']) && $_SESSION['verify']!=NULL && $_SESSION['verify']!=''){
/ /検証値が等しいかどうかを判断し続けます
}else{
echo 'session[verify] 値が存在しないか空です。サーバーのセッション機能が正常かどうかを確認してください';友人がログインすると、「session[verify] ]値が存在しないか空です。サーバーのセッション機能が正常か確認してください。」というメッセージが表示されました。

本当にサーバー側に問題があるのでしょうか?

サーバーは Apache でインストールされています

ウェブサイトは ThinkPHP フレームワークを使用して開発されており、検証コード画像が付属しています


会員登録ページは検証コードを使用しており、HTML ページ:



登録時に、プログラムが検証コード画像のコードを決定します。 ...

元の投稿者 ユーザーのブラウザが正しく動作できないかどうか、COOKIE が無効になっているかどうかを知ることができます

ホストは、ユーザーのブラウザが正しく動作できないかどうか、COOKIE が無効になっているかどうかを知ることができます

誰かを見ました。 「PHP では Cookie とセッションの間に保証はありません。」


では、私の現在の状況は Web 環境に問題があるのでしょうか?このような場合は、環境を変更する予定です

Firefox では正常に動作しますが、他のブラウザではセッションが未定義と表示されます

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