public function CompleteReservation(Request $request) { if (session_status() == PHP_SESSION_NONE) { session_start(); } $amount = $_SESSION['amount'] + 78.75; $usern = $_SESSION['username']; $un = DB::table('user_table')->where('username', "{$usern}")->first(); $userid = $un->id; $res = DB::table('reservation_table')->where('user_id', $userid)->first(); if ($res) { return 2; } $this->validate($request, ['ctype' => 'required', 'cnum' => 'required | numeric', 'cmon' => 'required', 'cyear' => 'required', 'cvv' => 'required | numeric', 'fname' => 'required | alpha', 'lname' => 'required | alpha', 'street' => 'required', 'city' => 'required', 'state' => 'required', 'country' => "required", 'zip' => 'required | numeric']); $f = new formaction(); $f->change_room_status(); $request->request->add(['amount' => $amount]); $state = $f->DirectPay($request); if ($state == 1) { $chechin = $_SESSION['checkin']; $checkout = $_SESSION['checkout']; $rt1 = $_SESSION['rt1']; $rt2 = $_SESSION['rt2']; $rt3 = $_SESSION['rt3']; $today = date("Y-m-d"); // get user id $username = $_SESSION['username']; $re = DB::table('user_table')->where('username', "{$username}")->first(); $userid = $re->id; // insert in the reservation_table DB::table('reservation_table')->insert(['user_id' => $userid, 'checkin' => $chechin, 'checkout' => $checkout, 'reservation_date' => $today, 'checked' => 0]); // get the inserted and insert it with the room numbers in the table_reserved_rooms $re1 = DB::table('reservation_table')->where('user_id', $userid)->get(); //$res_id = $re1->id; for ($i = 0; $i < sizeof($re1); $i++) { if (!$f->checkExist($re1[$i]->id)) { $res_id = $re1[$i]->id; if ($rt1 > 0) { DB::table('table_reserved_rooms')->insert(['reservation_id' => $res_id, 'num_rooms' => $rt1, 'room_type' => 1]); } if ($rt2 > 0) { DB::table('table_reserved_rooms')->insert(['reservation_id' => $res_id, 'num_rooms' => $rt2, 'room_type' => 2]); } if ($rt3 > 0) { DB::table('table_reserved_rooms')->insert(['reservation_id' => $res_id, 'num_rooms' => $rt3, 'room_type' => 3]); } } } $f->change_room_status(); return 1; } else { return $state; } }