Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- if(isset($_POST['rezerwuj'])){
- try{
- $session = mysqli_fetch_assoc(mysqli_query($link, "select id_user from session where id = '{$_COOKIE['id']}'"));
- } catch (Exception $ex) {
- $error = 'Błąd przy pobieraniu id usera.';
- exit();
- }
- foreach ($_COOKIE['koszyk'] as $wrzucony => $value){
- try{
- $cena = mysqli_fetch_assoc(mysqli_query($link, "select cena from game where id_game = '{$wrzucony}'"));
- } catch (Exception $ex) {
- $error = 'Błąd przy pobieraniu ceny.';
- exit();
- }
- try{
- mysqli_query($link, "set session transaction isolation level repeatable read");
- } catch (linkException $e){
- $error = 'Błąd przy ustawianiu poziomu izolacji';
- exit();
- }
- try{
- mysqli_query($link, "start transaction");
- }catch (linkException $e){
- $error = 'Błąd przy rozpoczeciu transakcji.';
- exit();
- }
- $zajete = mysqli_num_rows(mysqli_query($link, "select * from reservation where (data_od between '{$_POST['czasOd'.$wrzucony]}' and '{$_POST['czasDo'.$wrzucony]}') or (data_do between '{$_POST['czasOd'.$wrzucony]}' and '{$_POST['czasDo'.$wrzucony]}')"));
- $dataOd = new DateTime($_POST['czasOd'.$wrzucony]);
- $dataOd->format('Y-m-d');
- $dataDo = new DateTime($_POST['czasDo'.$wrzucony]);
- $dataDo->format('Y-m-d');
- $days = date_diff($dataOd, $dataDo);
- $koszt = $days->format("%a") * $cena['cena'];
- $query = mysqli_query($link, "insert into reservation (id_game, id_user, data_od, data_do, cena)
- values ('{$wrzucony}', '{$session['id_user']}', '{$_POST['czasOd'.$wrzucony]}', '{$_POST['czasDo'.$wrzucony]}', '{$koszt}');");
- if($zajete == 0 and $query){
- mysqli_query($link, "commit");
- setcookie("koszyk[".$wrzucony."]","",time()-1);
- unset($_COOKIE['koszyk['.$wrzucony.']']);
- } else{
- mysqli_query($link, "rollback");
- echo "Termin jest zajęty!";
- }
- }
- header("location: koszyk.php");
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement