Как корректно добавить дату в запись таблицы?

Возникает такая ошибка при попытке создать запись с данными типа date:
Uncaught exception: 'PDOException'</p><p>Message: 'SQLSTATE[22007]: Invalid datetime format: 1292 Incorrect date value: ':end' for column 'timedate' at row 1'


Кусок кода, который выполняется:
$date = new \DateTime(date('Y-m-d'));
$date->add(new \DateInterval('P'.$period.'D'));
$endDate =$date->format('Y-m-d');

$status = 1;
$pdo = static::getDB();
$query = $pdo->prepare("INSERT INTO Invites (invite,timedate,status) VALUES (':code', ':end',':status')");
$query->bindParam(':code', $code, \PDO::PARAM_INT);
$query->bindParam(':end', $endDate, \PDO::PARAM_STR);
$query->bindParam(':status', $status, \PDO::PARAM_INT);
$query->execute();


Дата выводится в нужном формате (как и в базе данных): 2018-05-10. С чем может быть связана проблема?

P.S Облазил stackoverflow с подобными проблемами, работающего решения не нашел.
  • Вопрос задан
  • 994 просмотра
Решения вопроса 1
Sanovskiy
@Sanovskiy
Веб-разработчик с 2005 года
Кавычки из запроса уберите. Они там как подковы на корове.
VALUES (:code, :end,:status)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы