以下はHTMLフォームのスニペットで、テーブル行のオプションをそれに応じてプルします。PHPを使用してHTML SELECT/OPTIONの値をNULLにすることはできますか?
私がしたいことは、最初のオプション値をNULLにすることです。選択肢がない場合は、フォームがデータベースに送信されるときにNULLが入力されます。
<td>Type</td>
<td>:</td>
<td><select name="type_id" id="type_id" class="form">
<option value=""></option>
<?php
$sql = mysql_query("SELECT type_id, type FROM $tbl_add_type") or die(mysql_error());
while ($row = mysql_fetch_array($sql))
{
echo "<option value=".$row['type_id'].">" . $row['type'] . "</option>";
}
?>
</select>*</td>
これは可能ですか?あるいは、誰かがこれをやるより簡単な方法を提案することができますか?
おかげ
更新:答えてくれてありがとう、私はNULLに変換するには、以下の詳細な方法を使用しています。
if ($_POST['location_id'] === '')
{
$_POST['location_id'] = 'NULL';
}
ただし、このNULL値を次のクエリで使用しようとすると機能しません。
UPDATE addresses SET location_id='NULL' WHERE ipid = '4791'
私は...
アップデート2ではなくlocation_id=NULL
する必要があります知っているが、これを実行する方法がわからない:、ノー
if ($_POST['location_id'] === '')
{
$_POST['location_id'] = 'NULL'; // or 'NULL' for SQL
}
$notes=isset($_POST['notes']) ? mysql_real_escape_string($_POST['notes']) : '';
//$location_id=isset($_POST['location_id']) ? mysql_real_escape_string($_POST['location_id']) : '';
$ipid=isset($_POST['ipid']) ? mysql_real_escape_string($_POST['ipid']) : '';
$sql="UPDATE addresses
SET notes='$notes', location_id='$location_id'
WHERE ipid = '$ipid'";
mysql_query($sql) or die(mysql_error());
本当に? 'var_dump($ _ GET ['missingKey']); // NULL' http://codepad.org/2s7jCBbc – AlienWebguy
ありがとうdeceze - 私はあなたの答えを使用しましたが、まだ右のNULLにそれを得ることに問題がある - あなたが私の更新を参照してください。何か案は? – Bernard
@AlienこれはPOST/GET値ではない、*存在しない*値です。 – deceze