<?php

require_once './DbManager.php';
require_once './MyValidator.php';
session_start();
if (!isset($_POST['token']) || $_POST['token'] !== $_SESSION['token']) {
    die('不正なアクセスが行われました。');
}
$v = new MyValidator();
$v->requiredCheck($_POST['isbn'], 'ISBNコード');
// 必須検証
$v->regexCheck($_POST['isbn'], 'ISBNコード', '/^978-4-[0-9]{3,6}-[0-9]{3,6}-[0-9X]{1}$/');
// 正規表現検証
$v->duplicateCheck($_POST['isbn'], 'ISBNコード', 'SELECT isbn FROM book WHERE isbn = :value');
// 重複検証
$v->requiredCheck($_POST['title'], '書名');
// 必須検証
$v->lengthCheck($_POST['title'], '書名', 100);
// 文字列長検証
$v->intTypeCheck($_POST['price'], '価格');
// 整数型検証
$v->rangeCheck($_POST['price'], '価格', 10000, 1);
// 数値範囲検証
$v->inArrayCheck($_POST['publish'], '出版社', array('翔泳社', '秀和システム', '毎日コミュニケーションズ', '技術評論社'));
// 配列要素検証
$v->dateTypeCheck($_POST['published'], '刊行日');
// 日付型検証
$v();
try {
    // データベースへの接続を確立
    $db = getDb();