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;
    }
}
Exemple #3
0
** Сервер авторизации пользователя
*/
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 {
            // Стираем данные о имени