- ベストアンサー
JavaScriptで存在しないユーザーを判定する方法
- JavaScriptで存在しないユーザー名の判定方法をご教授願います。
- 現在、PHPで作られた動的サイトの一部をJavaScript化していますが、ユーザー名の存在判定につまずいています。
- PHPではis_null関数を使用してユーザーが存在しない場合を判定していましたが、JavaScriptではどのように表現すればよいでしょうか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
ダメだった・・・ ってのは、エラーが出たってことなのか、判定されずnullではないと言われたのか・・・ PHP側では、空要素をechoすると空文字列で返されるはずですが・・・ 一旦alertでecho $row_user['id'];の中身を見たほうがいいかもしれません。 # var e33=<?php echo $row_user['id']; ?>; # ですが、 # var e33="<?php echo $row_user['id']; ?>"; # じゃないとエラーなると思いますが・・・
その他の回答 (2)
- Gotthold
- ベストアンサー率47% (396/832)
<script type="text/javascript"> var e33=<?php echo $row_user['id']; ?>; if (e33===NULL) { document.write("そのユーザーは存在しません"); } </script> の出力結果は <script type="text/javascript"> var e33=; if (e33===NULL) { document.write("そのユーザーは存在しません"); } </script> になると思うので、JavaScriptの方で文法エラーが出ていませんか? というか、最低限、phpの出力結果と、JavaScriptのエラーくらいは見ておきましょう。 あと、JavaScriptにNULLなんて定義済み識別子は無いと思いますが、 どこか別の所で定義しているのですか? 対策は、ユーザーが存在しないときには 「e33に特別な値(nullとか)を代入するJavaScript記述」を出力するphpを作るとかすれば良いと思います。
お礼
>JavaScriptの方で文法エラーが出ていませんか? おっしゃる通り、単純な文法ミスでした。 ご指摘頂いたら一瞬で分かるようなミスで。""が無いなんてお恥ずかしいミスで。 お騒がせして大変申し訳ありませんでした。 ご指導頂きましたこと深く御礼申し上げます。 本当に有難うござました。
- neko-ten
- ベストアンサー率55% (1287/2335)
nullを代入してないからnullじゃないです。 (echoでnullな変数を返しても、返ってくるのはnullって文字列じゃないですよね。) 簡単には e33=="" で十分
補足
ご回答有難うございます。ご指摘の方法で試したのですが、うまくいきませんでした。 「=== と ==」 「 "" と ''」 などの組み合わせもトライしてみましたが、ダメでした。 他の方法がございましたらご教示願います。
お礼
有難うございます!! var e33="<?php echo $row_user['id']; ?>"; でうまくいきました!! 当方の単純な文法ミスでお騒がせしてしまい大変申し訳ございませんでした。 2度にわたるご指導、本当に有難うございました。 深く御礼申し上げます。 本当に有難うございました。助かりました。