В блоге, который я пишу, я хочу, чтобы администраторы могли редактировать комментарии. Это прекрасно работает, но есть проблема с написанием нового комментария из-за двух полей в таблице, которые должны быть пустыми.
Db-таблица comments
создается следующим образом:
comments(id, content, post_id, comment_author, date, editedBy, editedAt)
Когда пишется новый комментарий, поля editedBy
и editedAt
должны быть пустыми / просто не заполненными / нулевыми, поскольку они явно не обновлялись.
Я не могу просто оставить поля пустыми, могу ли я вставить в них пустую строку или пометить их как NULL
?
public function insertForPost($content, $post_id, $comment_author, $date, $editedBy, $editedAt)
{
$table = $this->getTableName();
$stmt = $this->pdo->prepare(
"INSERT INTO `{$table}`(`content`, `post_id`, `comment_author`, `date`,
`editedBy`, `editedAt`) VALUES (:content, :post_id, :comment_author, :date,
:editedBy, :editedAt)"
);
$stmt->execute([
'content' => $content,
'post_id' => $post_id,
'comment_author' => $comment_author,
'date' => $date,
'editedBy' => $editedBy,
'editedAt' => $editedAt
]);
}
Все параметры содержат правильные данные, я просто не знаю, что делать с editedBy
и editedAt
.
Когда комментарий редактируется (что работает просто отлично) editedBy
будет заполнено именем пользователя, редактирующего комментарий, и editedAt
будет заполнено датой редактирования комментария, поэтому оба являются строками .
Я хочу знать, нужно ли мне поместить пустую строку в эти два поля или установить их null
и как это сделать.