0

私のドロップダウンボックスでは、それは必須フィールドですが、何かが選択されていても検証メッセージが表示されます.

 if(empty($data['department']) || strlen($data['department']) )
    {
    $err[] = "ERROR - Please enter the department you are applying for.";
    }

から引っ張られる

$insert = "INSERT into users
`department`,  VALUES ( '$data[department] )";

HTML:

<td>Department<span class="required">*</span> </td>
        <td><select name="department"  id="department">

            <option value="" selected></option>

            <option <? if($department == '1') { ?> selected <? } ?>   
 value="1">1</option>

            <option <? if($department== '2') { ?> selected <? } ?> value="2">2   
  </option>

            <option <? if($department == '3') { ?> selected <? } ?> 
 value="3">3</option>


            </select>
4

3 に答える 3

1

これを試して:

if (empty($data['department']))
{
    $err[] = "ERROR - Please enter the department you are applying for.";
}

変数が空の場合、strlen をチェックする必要はありません

于 2012-04-28T17:41:15.450 に答える
1

この行は矛盾しており、常に true を返します。

empty($data['department']) || strlen($data['department'])

前半だけ使えば大丈夫。

于 2012-04-28T17:41:24.503 に答える
0

エラーの原因となっている可能性のある2 つのオプションがある場合は、から削除selected<option value="" selected>て試してみることをお勧めします。$department==1selected

于 2012-04-28T17:38:20.673 に答える