スレッド表示 | フラット表示〕 全トピック 920 件中 262 番目 次≫ ≪前

nulll or ブランクチェックについて

created: 2006-03-23 00:39 | modified: 2006-03-24 00:44 | reply: 5

[2990] nulll or ブランクチェックについて

user: shigeru | created: 2006-03-23 00:39
ユーザー入力値がnull or ブランクであるか否かを判定するのに

// $hogeをユーザー入力値とする

if ($hoge) {
print("値が入っている");
} else {
print("値が入っていない");
}

としています。
この場合、ユーザーが"0"を入力した場合、「値がはいってない」と判定されてしまいます。
上記のようなチェックを行なう場合、どのように行なうのが一般的なのでしょうか。
アドバイス頂ければ幸いです。

OS:Windows2000
PHP:Version 4.3.11-dev
reply: 2991 返信 編集 削除

[2991] Re: nulll or ブランクチェックについて

user: ぱぴよん | created: 2006-03-23 09:19
shigeruさん、こんにちは。


私の場合は

if ($hoge != "") {
print("値が入っている");
} else {
print("値が入っていない");
}

としています。

<input type="text"・・・>などで入力されていなければ
「""」が送信されるためです。
Parent: 2990  reply: 2992 返信 編集 削除

[2992] Re.Re: nulll or ブランクチェックについて

user: shigeru | created: 2006-03-23 18:03
ぱぴよんさん、ありがとう御座います。

>if ($hoge != "") {
>print("値が入っている");
>} else {
>print("値が入っていない");
>}
の場合、
$hoge = 0;
とすると
「値がはいっていない」と判定されてしまいます・・・
Parent: 2991  reply: 2993 返信 編集 削除

[2993] Re: Re.Re: nulll or ブランクチェックについて

user: ぱぴよん | created: 2006-03-23 19:26
> if ($hoge != "") {
if($hoge != = "") {

としてみてください。
どうでしょうか^^;

「!=」と「!= =」の違いは型も含めて判断するかどうかです。

見易くするために「=」と「=」の間に半角スペースを入れていますが、
実際には半角スペースをいれないでつづけて記述してください。
Parent: 2992  reply: 2994 2996 返信 編集 削除

[2994] nulll or ブランクチェックについて

user: ach | created: 2006-03-23 20:17
if (strlen($hoge)) {
print("値が入っていない");
} else {
print("値が入っている");
}
Webからの入力ならこれでもOK

><input type="text"・・・>などで入力されていなければ
>「""」が送信されるためです。
配列にキーがセットされない(何も送信されない)場合もあります。
Parent: 2993  返信 編集 削除

[2996] Re.Re: Re.Re: nulll or ブランクチェックについて

user: shigeru | created: 2006-03-24 00:44
返信ありがとう御座います。

if (strlen($hoge)) {
で対応することにしました。
Parent: 2993  返信 編集 削除
スレッド表示 | フラット表示〕 全トピック 920 件中 262 番目 次≫ ≪前
ページの一番上へ
Googleグックマークに登録 Yahooグックマークに登録 livedoorクリップに登録 @niftyクリップに登録 はてなブックマークに登録 deliciousに登録 Buzzurlに登録 FC2ブックマークに登録
最近更新された掲示板トピックス
管理人Blog
Yahoo Search

最近更新したNote
PHPマニュアル
今日のブックマーク
PHPマニュアル関数検索
関数名を入力し検索ボタンをクリック↑