В базе данных есть столбец time с типом time, никак не могу записать в него NULL если ничего не приходит
public function add_task($user_id, $date, $task_arr){
$time = 'NULL';// КОНСОЛЬ ЛОГ ВЫВОДИТ null НО В бд ДОБАВЛЯЕТ 00:00:00
$time = NULL;// КОНСОЛЬ ЛОГ ничего не выводит НО В бд ДОБАВЛЯЕТ 00:00:00
//ЕСЛИ НАПРЯМУЮ В ЗАПРОСЕ ПИШУ NULL ТО ДОБАВЛЯЕТ ВСЕ НОРМАЛЬНО null
//ЕСЛИ В ЗАПРОСЕ ПИШУ '$TIME' OR NULL ТО ЕСЛИ ПУСТАЯ СТРОКА ТО ВСЕ ОК ДОБАВЛЯЕТ NULL
//А ЕСЛИ СТРОКА СО ВРЕМЕНЕМ ТО ДОБАВЛЯЕТ 00:00:01
$task = $task_arr['task_name'];
$sql = mysql_query("INSERT INTO `tasks` (`for_user_id`, `time`, `date`, `task`) VALUES ('$user_id', '$time', '$date', '$task')") or die(mysql_error());
print_r($time);
}//end add_task
Посмотри на класс PDO http://php.net/manual/ru/class.pdo.php
Твоя проблема в нем решится так:
$sth = $dbh->prepare('INSERT INTO `tasks` (`for_user_id`, `time`, `date`, `task`) VALUES (:user_id, :time, :date, :task)');
$sth->execute([
':user_id' => $user_id,
':time' => $time,
':date' => $date,
':task' => $task,
]);
Почему не стоит использовать функции семейства mysql_query:
Можете по другому сделать. Столбец поставьте с значением по умолчанию null
а когда вводите ряд, то забудьте про этот столбец.
Или попробуйте в переменную написать null
не заглавными буквами.
Ещё не забудьте убрать кавычки:
"INSERT INTO `tasks` (`for_user_id`, `time`, `date`, `task`) VALUES ('{$user_id}', {$time}, '{$date}', '{$task}')"
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Сервис WalletOne после успешной оплаты делает POST запрос к указанному url и отправляет данные об оплатеМне нужно, чтобы после оплаты я смог вызвать...