$is_exist_error = true; $smarty->assign('error_publication_date', '無効なフォーマットです'); } } if (!isset($_POST['publication_time']) || $_POST['publication_time'] == '') { $is_exist_error = true; $smarty->assign('error_publication_time', '入力されていません'); } else { $smarty->assign('publication_time', $_POST['publication_time']); if (preg_match('/^(0[0-9]{1}|1[0-9]{1}|2[0-3]{1}):(0[0-9]{1}|[1-5]{1}[0-9]{1})$/', $_POST['publication_time']) !== 1) { $is_exist_error = true; $smarty->assign('error_publication_time', '無効なフォーマットです'); } } if ($is_exist_error === true) { $smarty->displayBase('admin/edit_article.tpl'); exit; } // 公開日時のパラメーターをPostgresのdatetime用に加工 $datetime_unixtimestamp = strtotime($_POST['publication_date'] . ' ' . $_POST['publication_time']); $datetime_for_postgres = date('Y-m-d H:i:s', $datetime_unixtimestamp); // 新規作成が成功した場合は管理者トップページへ if ($db->update_article($_POST['id'], $_POST['title'], $_POST['content'], $datetime_for_postgres)) { header('HTTP/1.1 303 See Other'); header('Location: ./'); exit; } else { $smarty->assign('error_message', '記事の更新に失敗しました'); $smarty->displayBase('admin/edit_article.tpl'); exit; }