-3

オプションのフィールドがいくつかあるフォームがあります。mysql クエリがフォームからデータを保存するときに、いずれかのフィールドが空白のままであると失敗します。

これを回避する最善の方法は何ですか? クエリを満足させるためだけにデータを入力するよりも、データベースのフィールドを空のままにしておくことをお勧めします。

$sql = "INSERT INTO s_num_serialz (id, name, date_entered, created_by, account_name, type, supply_type, covered_by_support, install_date, job_number, replacement_for) VALUES ('$id', '$serial_num', NOW(), '$diary_id', '$account', '$type', '$supply_type', $support_cover, '$dispatch_date', '$job_num', '$old_serial_num')";
$result = $mysqli->query($sql) or die($mysqli->error.__LINE__);

これは単純な挿入ですが、$job_number などの値の 1 つが空の場合、クエリは失敗します。

4

1 に答える 1

0

受信後にフィールドが空かどうかをよく確認してください

$r=trim($_POST["something"])
if($r!=''){
  //code goes here    
}

フォームのクエリを使用している場合

Insert into table (..,..,...) values (...,...,) 

に切り替えてみてください

Insert into table set column1='', column2=''

そして、それが機能するはずなので、私たちが答えるのを助けるためにいくつかのコードを追加します。

于 2012-09-25T18:43:53.127 に答える