function main() { session_start(); // обрабатываем отправленную форму $dbh = db_connect(); if (is_postbuy()) { if (is_current_user()) { $product = array('count' => 1, 'user_id' => $_SESSION['user_id'], 'product_id' => $_POST['buy_product_id']); db_product_incar_insert($dbh, $product); } else { redirect('login.php'); } } if (isset($_POST['product_decrement'])) { if (is_current_user()) { $product = array('count' => 1, 'user_id' => $_SESSION['user_id'], 'product_id' => $_POST['product_decrement']); $result = db_product_incar_decrement($dbh, $product); if ($result == null || $result == array()) { } } else { redirect('login.php'); } } if (isset($_POST['product_delete'])) { if (is_current_user()) { $product = array('user_id' => $_SESSION['user_id'], 'product_id' => $_POST['product_delete']); db_product_incar_delete($dbh, $product); } else { redirect('login.php'); } } $count_in_car = product_count_in_car($dbh); $items_result = get_popular_products($dbh); $car_items = db_get_product_in_car_by_user($dbh); $res = db_car_find_by_user_id_and_product_id($dbh, $_SESSION['user_id'], 42); db_close($dbh); render('Car_Page_Template', array('items' => $items_result, 'car_items' => $car_items, 'count_in_car' => $count_in_car, 'res' => $res)); }
function db_product_incar_decrement($dbh, $product) { if (bd_is_current_product($dbh, $product['product_id'], $product['user_id'])) { $result = db_car_find_by_user_id_and_product_id($dbh, $product['user_id'], $product['product_id']); $result[0]['count'] -= $product['count']; if ($result[0]['count'] == 0) { return array(); } $query = 'UPDATE car SET count=? WHERE id=?'; // подготовливаем запрос для выполнения $stmt = mysqli_prepare($dbh, $query); if ($stmt === false) { db_handle_error($dbh); } mysqli_stmt_bind_param($stmt, 'ss', $result[0]['count'], $result[0]['id']); // выполняем запрос if (mysqli_stmt_execute($stmt) === false) { db_handle_error($dbh); } // освобождаем ресурсы, связанные с хранением результата и запроса mysqli_stmt_close($stmt); return $result; } }