Exemplo n.º 1
0
if (!in_array($_GET['action'], $actions)) {
    die('Некорректные параметры!');
}
$guestbook = new Guestbook('../messages.xml');
try {
    if ($_GET['action'] == 'read') {
        // читаем сообщения
        $messages = $guestbook->getMessages();
        die(json_encode($messages));
    } elseif ($_GET['action'] == 'update') {
        // обновление сообщения
        if (!isset($_POST['id']) || !isset($_POST['msg_text']) || !trim($_POST['id']) || !trim($_POST['msg_text'])) {
            throw new Exception("Не переданы необходимые данные!", 1);
        }
        $message = array('id' => $_POST['id'], 'msg_text' => $_POST['msg_text']);
        $result = $guestbook->updateMessage($message);
        if (!$result) {
            throw new Exception('Не удалось сохранить запись, попробуйте позже.', 1);
        }
        die(json_encode(array('success' => true)));
    } elseif ($_GET['action'] == 'create') {
        // добавление сообщения
        if (!isset($_POST['username']) || !isset($_POST['msg_text']) || !trim($_POST['username']) || !trim($_POST['msg_text'])) {
            throw new Exception("Не переданы необходимые данные! Пожалуйста, введите имя и текст записи.", 1);
        }
        if (isset($_POST['parent_id']) && $_POST['parent_id']) {
            $parent_id = $_POST['parent_id'];
        } else {
            $parent_id = 0;
        }
        $message = array('username' => mb_substr(htmlspecialchars(strip_tags($_POST['username'])), 0, 100), 'msg_text' => mb_substr(htmlspecialchars(strip_tags($_POST['msg_text'])), 0, 20000), 'msg_date' => date('d.m.Y H:i:s'), 'id' => uniqid(''), 'parent_id' => $parent_id);