2
$NOW = new DateTime();
$date = $NOW->format('Y-m-d'); // return 2018-05-17

I want to update date in database to now date.

Query:

$sql = "UPDATE table SET date = $date WHERE id = $id";

But it update time like this => 0000-00-00

The type of this column is DATE

Why? what I have done wrong?

B. Desai
  • 16,414
  • 5
  • 26
  • 47
Jack The Baker
  • 1,781
  • 1
  • 20
  • 51

2 Answers2

4

You can try mysql now() function to update date.

$sql = "UPDATE table SET date = now() WHERE id = $id";

Or you should add single qoutes in query

$sql = "UPDATE table SET date = '".$date."' WHERE id = $id";
Kawaljeet Singh
  • 357
  • 1
  • 5
1

Simply add your date value in quotes then try. Change your query to :

$sql = "UPDATE table SET date = '$date' WHERE id = $id";
B. Desai
  • 16,414
  • 5
  • 26
  • 47