function replaceBook(Book $newBook) { $db = new ServerDatabase(); $db->newQuery("UPDATE book SET author='%2', title='%3', image='%4', category=%5 WHERE id=%1"); $db->addParameter($newBook->id); $db->addParameter($newBook->author); $db->addParameter($newBook->title); $db->addParameter($newBook->image); $db->addParameter($newBook->category); $db->execute(); return $db->getRowsAffected() > 0; }
function emptyBasket($sessionId, $db = null) { if (!$db) { $db = new ServerDatabase(); } try { $db->newQuery("DELETE FROM basket WHERE session = '%1'"); $db->addParameter($sessionId); $db->execute(); return true; } catch (Exception $e) { return false; } }
** Сервер авторизации пользователя */ require 'server.classes.php'; // Объект пользователя $user = new User(); // Читаем данные, переданные в POST $rawPost = file_get_contents('php://input'); // Если данные были переданы... if ($rawPost) { // Десериализация пакета JSON $userInfo = json_decode($rawPost); // Если email указан - находим пользователя в БД if ($userInfo->email) { $db = new ServerDatabase(); $db->newQuery("SELECT name, email, password, salt, iterationCount FROM user WHERE email = '%1'"); $db->addParameter($userInfo->email); $result = $db->execute(true); // Если пользователь найден - заполним его данные... if (count($result) > 0) { $user->fillFromArray($result[0]); } // Если пароль указан - проверяем его if ($userInfo->password) { // Восстанавливаем энтропию, которая использовалась при передаче $user->transferEntropy = new Entropy($userInfo->transferEntropy->salt, $userInfo->transferEntropy->iterationCount); // Если пароль указан неверно - стираем данные if (!$user->isValidPassword($userInfo->password)) { $user->name = ""; } } else { // Стираем данные о имени