0

私は cTools ウィザード (主に php) を使用して Drupal 6 用のフォームを作成しており、オプションの選択ボックスがいくつかあります。オプションを次のように設定しました。

0|選択

1|オプション 1

2|オプション 2

3|オプション 3

4|オプション 4

または、年や州の選択のように、array_unshift を使用して、動的に構築された、または他の場所から参照されたリストの前に「選択」を追加しています。

ユーザー入力がない場合、これらの選択ボックスは、何も返さない場合に「選択」、0、または -1 の値を返します。

私は PHP にかなり慣れていないので、おそらく正しい方法でこれを尋ねているわけではありません。なぜなら、それがかなり一般的な問題であると思われることについて何も見つけていないからです。これをどのように行うか、または答えを見つけるために私の問題をより適切に表現する方法を知っている人はいますか? ありがとう!

4

1 に答える 1

1

フィールドがポストされるため、常に何らかの文字列値を受け取ります$_POST。通常、空白の値 ( <option value="">Select</option>) を指定すると、PHP 側で空白の文字列が得られます。次に、(「0」をキャストしてもかまわない場合-> false)次のようなことができます

<?php if(!$_POST['field']) $_POST['field'] = null; ?>

その値を無効にします。

于 2011-11-29T01:26:48.190 に答える