substr(trim('SOME_FORM_VALUE'),0,7),
データベースに送信する直前に、いくつかのフォーム値を使用しています。
空白で送信されたフォームフィールドは、データベースで0 (ゼロ)になります。substr()を削除すると、すべてが正常になり、データベースに値がなくなります。データベース(InnoDB)列は、nullではなくVARCHARとして設定されます。
コード例:
$data_Arr = array(
'SOME_TABLE_COLUMN1' => substr(trim('SOME_FORM_VALUE1'),0,7),
'SOME_TABLE_COLUMN2' => substr(trim('SOME_FORM_VALUE2'),0,50)
);
$this->db->update('SOME_TABLE', $data_Arr);
最後のMySQLクエリは次のようになります。
INSERT INTO `SOME_TABLE` (`SOME_TABLE_COLUMN1`, `SOME_TABLE_COLUMN2`)
VALUES (0, 0);
- 空のフォーム文字列のsubstr()の結果が0 (ゼロ)であるのはなぜですか?
- 0 (ゼロ)が入力されないようにする方法 はありますか?
皆さんありがとう :)