My MySQLテーブルには、trueまたはfalseの値を格納するために使用するtinyint(1)の値が格納されています。mysqlにPHPのfalseを挿入する
私は、次のPHP変数を持って次のように
$name = '';
$description = '';
$active = true;
を今私のSQLクエリは次のとおりです。
$query = "INSERT into my_table (my_name, my_description, active) VALUES ('$name', '$description', $active) ";
アクティブ$のための私の値がtrueの場合にのみ動作します。アクティブ変数がfalseになるとすぐに、PHPは0ではなく空の文字列を挿入し、クエリは失敗します。
このようなクエリでfalseを使用する最も良い方法は何ですか?
私は手動でfalseを '0'文字列に変換する必要がありますか? PHP側ですぐに発作を使用する方が良いですか?つまり、$ active = '1'と宣言します。 、または何とかPHPを取得して、常にfalseを '0'文字列に変換できますか?
おかげで、すべての値の マイケル
の可能複製(http://stackoverflow.com [ 'false' をMySQLでいくつかの文字列に一致することはできますか?]/question/8369379/can-false-match-some-string-in-mysql) –
実際にあなたのデータベースに 'bit(1)'データ型を使用するべきです。これは '0'(偽)と' 1'(真)入力のみを許可します。 – Burgi