2011-12-02 12 views
0

に挿入するためのチェックボックスと入力フィールドを使用する:私は下記のような形を持っているDB

<input type="checkbox" name="type" value="wash"><label>Wash</label><br> 
<input type="checkbox" name="type" value="no wash"><label>No Wash</label><br> 
     <label>Other (Specify)</label><br> 
     <input name="type"><br> 

あなたはすべての3のために気付いた場合、私は、入力名として「タイプ」を使用しています。重要なのは、ユーザーに2つのオプションが与えられることです.2つのオプションのいずれにも該当しない場合は、otherに値を入力する必要があります。今データベースで私はフィールドの型を持っているので、最初の2つを選択してフィールドに値を入力した場合、またはフィールドに値を書き込んだだけの場合でも、それはまだタイプフィールドの一部になります。では、どうすれば入力フィールドを選択すれば "タイプ"にも挿入するようにすることができます。

答えて

1

まず、チェックボックスの代わりにラジオボタンを使用してください。 は、その後、あなたが行うことができ、次の

<input type="radio" name="type" value="wash"/><label>Wash</label> 
<input type="radio" name="type" value="no_wash"/><label>No wash</label> 
<input type="radio" name="type" value="other"/><label>Other</label> 
<input type="text" name="other_type"/> 

あなたのPHPは次のよ​​うになります。あなたはJSを使用

if ($_REQUEST["type"] == "wash"){ 
    echo "Wash me please"; 
}else if ($_REQUEST["type"] == "no_wash"){ 
    echo "no wash"; 
}else if ($_REQUEST["type"] == "other"){ 
    echo "you want to ".$_REQUEST["other_type"]; 
} 

場合、ユーザは番目のオプションを選択しない限り、あなたも、テキストボックスを無効にすることができます。


編集:私はあなたのコメントを得た場合は右のそれはこのような最も簡単になります:

<input type="checkbox" name="wash_me"/><label>Wash your car?</label> 
<input type="text" name="other"/><label>What else can we do for you?</label> 

PHP

if (isset($_REQUEST["wash_me"]){ 
    echo "wash my car please"; 
} 
if (strlen($_REQUEST["other"]) != 0){ 
    echo "and do the following: ".$_REQUEST["other"]; 
} 
+0

それを私にビート:)だけが 'other'ラジオの値に基づいて入力を有効/無効にする可能性があることを追加します。 – mseancole

+0

複数のフィールドを選択できるようにするにはチェックボックスが必要です。 – AAA

+0

それをチェックボックスに戻してください。何も変わるべきではありません。 – mseancole

1

あなたはこのような何かを意味していますか?

HTML:

<input type="checkbox" name="type[]" value="wash"/><label>Wash</label> 
<input type="checkbox" name="type[]" value="no_wash"/><label>No wash</label> 
Other type: 
<input type="text" name="other_type"/> 

PHP:

if (!empty($_REQUEST['other_type'])) 
    $_REQUEST['type'][] = $_REQUEST['other_type']; 
var_dump($_REQUEST['type']);