Advertisement
Guest User

booking

a guest
Sep 20th, 2014
215
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
HTML 14.30 KB | None | 0 0
  1. <?php
  2.     include 'session.php';
  3. ?>
  4. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  5. <html xmlns="http://www.w3.org/1999/xhtml">
  6. <head>
  7.  
  8.     <!-- Title -->
  9.     <title>UiTM e-Class Reservation</title>
  10.    
  11.     <!-- General meta information -->  
  12.     <meta name="keywords" content="" />
  13.     <meta name="description" content="" />
  14.     <meta name="robots" content="index, follow" />
  15.     <meta charset="utf-8" />
  16.    
  17.     <!-- Load JavaScript -->
  18.     <script type="text/javascript" src="js/jquery.1.4.2.js"></script>
  19.     <script type="text/javascript" src="js/jsDatePick.jquery.min.1.3.js"></script>
  20.     <script type="text/javascript">
  21.     window.onload = function(){    
  22.        
  23.         g_globalObject = new JsDatePick({
  24.             useMode:1,
  25.             isStripped:true,
  26.             target:"div3_example"
  27.             /*selectedDate:{                This is an example of what the full configuration offers.
  28.                 day:5,                      For full documentation about these settings please see the full version of the code.
  29.                 month:9,
  30.                 year:2006
  31.             },
  32.             yearsRange:[1978,2020],
  33.             limitToToday:false,
  34.             cellColorScheme:"beige",
  35.             dateFormat:"%m-%d-%Y",
  36.             imgPath:"img/",
  37.             weekStartDay:1*/
  38.         });
  39.        
  40.         g_globalObject.setOnSelectedDelegate(function(){
  41.             var obj = g_globalObject.getSelectedDay();
  42.             alert("a date was just selected and the date is : " + obj.day + "/" + obj.month + "/" + obj.year);
  43.             document.getElementById("div3_example_result").innerHTML = obj.day + "/" + obj.month + "/" + obj.year;
  44.         });
  45.        
  46.        
  47.        
  48.         g_globalObject2 = new JsDatePick({
  49.             useMode:1,
  50.             isStripped:false,
  51.             target:"div4_example",
  52.             cellColorScheme:"beige"
  53.             /*selectedDate:{                This is an example of what the full configuration offers.
  54.                 day:5,                      For full documentation about these settings please see the full version of the code.
  55.                 month:9,
  56.                 year:2006
  57.             },
  58.             yearsRange:[1978,2020],
  59.             limitToToday:false,
  60.             dateFormat:"%m-%d-%Y",
  61.             imgPath:"img/",
  62.             weekStartDay:1*/
  63.         });
  64.        
  65.         g_globalObject2.setOnSelectedDelegate(function(){
  66.             var obj = g_globalObject2.getSelectedDay();
  67.             alert("a date was just selected and the date is : " + obj.day + "/" + obj.month + "/" + obj.year);
  68.             document.getElementById("div3_example_result").innerHTML = obj.day + "/" + obj.month + "/" + obj.year;
  69.         });    
  70.        
  71.         };
  72.     </script>
  73.    
  74.     <!-- Load stylesheet -->
  75.     <link rel="stylesheet" type="text/css" href="style/main.css" title="style" />
  76.     <link rel="stylesheet" type="text/css" href="style/reg_res.css" title="style" />
  77.     <link rel="stylesheet" type="text/css" href="style/view.css" title="style" />
  78.     <link rel="stylesheet" type="text/css" media="all" href="css/jsDatePick_ltr.min.css" />
  79.    
  80.     <!-- Load icon -->
  81.     <link rel="icon" type="image/ico" href="images/uitm.ico">
  82.  
  83. </head>
  84.  
  85. <body>
  86.  
  87. <!-- start main -->
  88. <div id="main">
  89.    
  90.     <!-- start header -->
  91.     <div id="header">
  92.    
  93.         <?php include 'header.html' ?>
  94.         <br>
  95.      
  96.         <!-- start menubar -->
  97.         <div id="menubar">
  98.            
  99.             <!-- start cssmenu -->
  100.             <div id='cssmenu'>
  101.                 <ul>
  102.                     <?php include 'main_menu.html' ?>
  103.                 </ul>
  104.             </div>
  105.             <!-- end cssmenu -->
  106.            
  107.         </div>
  108.         <!-- end menubar -->
  109.        
  110.         <!-- start site_content -->
  111.         <div id="site_content">
  112.            
  113.             <!-- start sidebar -->
  114.             <div class="sidebar">
  115.                 <?php include 'sidebar.html' ?>
  116.             </div>
  117.             <!-- end sidebar -->
  118.        
  119.             <!-- start content -->
  120.             <div id="content">
  121.             <!-- start wrapper -->
  122.             <div id="wrapper">
  123.                 <form method="post" action="reserve_proc.php">
  124.                     <div class="CSSTableGenerator" >
  125.                     <?php
  126.                         include 'db.php';  
  127.                         $username = $_POST['username'];
  128.                         $matrix = $_POST['matrix_no'];
  129.                         $email = $_POST['email'];
  130.                         $phone = $_POST['phone'];
  131.                         $day = $_POST['alternate'];
  132.                         $start = $_POST['start_time'];
  133.                         $end = $_POST['end_time'];
  134.                         $dif = $end - $start;
  135.                         $block = $_POST['block'];
  136.                         $purpose = $_POST['purpose'];
  137.                         $date = $_POST['datepicker'];
  138.                         $sub_class[] = '';
  139.                         $sub_start[] = '';
  140.                         $sub_end[] = '';
  141.    
  142.                         echo "<input type='hidden' name='username' value='$username'>";
  143.                         echo "<input type='hidden' name='matrix_no' value='$matrix'>";
  144.                         echo "<input type='hidden' name='email' value='$email'>";
  145.                         echo "<input type='hidden' name='phone' value='$phone'>";
  146.                         echo "<input type='hidden' name='datepicker' value='$date'>";
  147.                         echo "<input type='hidden' name='start_time' value='$start'>";
  148.                         echo "<input type='hidden' name='end_time' value='$end'>";
  149.                         echo "<input type='hidden' name='alternate' value='$day'>";
  150.                         echo "<input type='hidden' name='block' value='$block'>";
  151.                         echo "<input type='hidden' name='purpose' value='$purpose'>";
  152.  
  153.                         $sql = "SELECT *
  154.                         FROM `class_timetable`
  155.                         WHERE `day` = '".$day."'
  156.                         AND `status` = 'AVAILABLE'
  157.                         AND `block_code` = ".$block."
  158.                         AND (`time_class` >= ".$start." AND `time_class` < ".$end.")";
  159.                         /*Pilih kelas dari class_timetable yang AVAILABLE, dan block code yg sama dan time_class yang sama dan lebih dari start dan juga time_class kurang daripada end. */
  160.                         $select_class = mysql_query($sql);
  161.                         print "<table border='1'>
  162.                         <tr>
  163.                             <td>
  164.                                 No.
  165.                             </td>
  166.                             <td>
  167.                                 Class
  168.                             </td>
  169.                             <td>
  170.                                 Time
  171.                             </td>
  172.                             <td>
  173.                                 Status
  174.                             </td>
  175.                             <td>
  176.                
  177.                             </td>
  178.                         </tr>";
  179.                         $no = 1;
  180.                         $class = 0;
  181.                         $comp = 1;
  182.                         $data = 0; // if no data found it will display "no class can be reserved at that time."
  183.                         $bef_class;
  184.                         $comp_class;
  185.                         while($row = mysql_fetch_array($select_class)) {
  186.                             $sel_class = $row['class']; /* class yang available*/
  187.                             $time = $row['time_class']; /* masa mula kelas*/
  188.                             $time1 = $row['time_class']+1;/* masa habis kelas dengan ditambah 1 */
  189.                             $status = $row['status']; /*status kelas iaitu AVAILABLE*/
  190.                             $sql_res = "SELECT * FROM `reservation`";
  191.                             $available = 'true';
  192.                             $select_res = mysql_query($sql_res);
  193.                             while($row_res = mysql_fetch_array($select_res)) { 
  194.                                 $day_res = $row_res['day']; /*day diambil dari table reservation*/
  195.                                 $start_res = $row_res['start_time']; /*start time diambil dari table reservation*/
  196.                                 $end_res = $row_res['end_time'];/*end time diambil dari table reservation*/
  197.                                 $class_res = $row_res['class'];/*class diambil dari table reservation*/
  198.                                 $date_res = $row_res['date'];/*date diambil dari table reservation*/
  199.                                 $status_res = $row_res['status'];/*status diambil dari table reservation(UNKNOWN/REJECT/APPROVED)*/
  200.                                                                
  201.                                 if(($sel_class == $class_res) && /*bandingkan kelas dari table class_timetable dengan reservation*/
  202.                                 ($start >= $start_res) && /*bandingkan masa start iaitu input dari user dan start_res dari reservation*/
  203.                                 ($end <= $end_res) && /*bandingkan masa end iaitu input dari user dan end_res dari reservation*/
  204.                                 ($day == $day_res) && /*bandingkan day iaitu input dari user dan day_res dari reservation*/
  205.                                 ($date == $date_res) && /*bandingkan date iaituinput dari user dan date_res dari reservation*/
  206.                                 (($status_res == 'APPROVED') || ($status_res == 'UNKNOWN'))) /*status_res APPROVED atau UNKNOWN*/
  207.                                 {//if statement ini digunakan untuk membuang kelas jika kesemua statement tersebut betul
  208.                                     if(($time >= $start_res) && ($time <= $end_res)) {
  209.                                         $available = 'false';
  210.                                         break;
  211.                                     }
  212.                                     else {
  213.                                         $available = 'true';
  214.                                     }
  215.                                 }
  216.                                 else if(($sel_class == $class_res) && /*bandingkan kelas dari table class_timetable dengan reservation*/
  217.                                 ($start < $start_res) && /*bandingkan masa start iaitu input dari user dan start_res dari reservation*/
  218.                                 (($end <= $end_res) &&($end != $start_res)) && /*bandingkan masa end iaitu input dari user dan end_res dari reservation*/
  219.                                 ($day == $day_res) && /*bandingkan day iaitu input dari user dan day_res dari reservation*/
  220.                                 ($date == $date_res) && /*bandingkan date iaituinput dari user dan date_res dari reservation*/
  221.                                 (($status_res == 'APPROVED') || ($status_res == 'UNKNOWN'))) /*status_res APPROVED atau UNKNOWN*/
  222.                                 {//if statement ini digunakan untuk membuang kelas jika kesemua statement tersebut betul
  223.                                     if(($time >= $start_res) && ($time <= $end_res)) {
  224.                                         $available = 'false';
  225.                                         break;
  226.                                     }
  227.                                     else {
  228.                                         $available = 'true';
  229.                                     }
  230.                                 }
  231.                                 else if(($sel_class == $class_res) && /*bandingkan kelas dari table class_timetable dengan reservation*/
  232.                                 (($start >= $start_res) && ($start != $end_res)) && /*bandingkan masa start iaitu input dari user dan start_res dari reservation*/
  233.                                 ($end > $end_res) && /*bandingkan masa end iaitu input dari user dan end_res dari reservation*/
  234.                                 ($day == $day_res) && /*bandingkan day iaitu input dari user dan day_res dari reservation*/
  235.                                 ($date == $date_res) && /*bandingkan date iaituinput dari user dan date_res dari reservation*/
  236.                                 (($status_res == 'APPROVED') || ($status_res == 'UNKNOWN'))) /*status_res APPROVED atau UNKNOWN*/
  237.                                 {//if statement ini digunakan untuk membuang kelas jika kesemua statement tersebut betul
  238.                                     if(($time >= $start_res) && ($time <= $end_res)) {
  239.                                         $available = 'false';
  240.                                         break;
  241.                                     }
  242.                                     else {
  243.                                         $available = 'true';
  244.                                     }
  245.                                 }
  246.                                 else if(($sel_class == $class_res) && /*bandingkan kelas dari table class_timetable dengan reservation*/
  247.                                 ($start < $start_res) && /*bandingkan masa start iaitu input dari user dan start_res dari reservation*/
  248.                                 (($end >= $end_res) &&($end != $start_res)) && /*bandingkan masa end iaitu input dari user dan end_res dari reservation*/
  249.                                 ($day == $day_res) && /*bandingkan day iaitu input dari user dan day_res dari reservation*/
  250.                                 ($date == $date_res) && /*bandingkan date iaituinput dari user dan date_res dari reservation*/
  251.                                 (($status_res == 'APPROVED') || ($status_res == 'UNKNOWN'))) /*status_res APPROVED atau UNKNOWN*/
  252.                                 {//if statement ini digunakan untuk membuang kelas jika kesemua statement tersebut betul
  253.                                     if(($time >= $start_res) && ($time <= $end_res)) {
  254.                                         $available = 'false';
  255.                                         break;
  256.                                     }
  257.                                     else {
  258.                                         $available = 'true';
  259.                                     }
  260.                                 }
  261.                                 else if(($sel_class == $class_res) && /*bandingkan kelas dari table class_timetable dengan reservation*/
  262.                                 (($start <= $start_res) && ($start != $end_res)) && /*bandingkan masa start iaitu input dari user dan start_res dari reservation*/
  263.                                 ($end > $end_res) && /*bandingkan masa end iaitu input dari user dan end_res dari reservation*/
  264.                                 ($day == $day_res) && /*bandingkan day iaitu input dari user dan day_res dari reservation*/
  265.                                 ($date == $date_res) && /*bandingkan date iaituinput dari user dan date_res dari reservation*/
  266.                                 (($status_res == 'APPROVED') || ($status_res == 'UNKNOWN'))) /*status_res APPROVED atau UNKNOWN*/
  267.                                 {//if statement ini digunakan untuk membuang kelas jika kesemua statement tersebut betul
  268.                                     if(($time >= $start_res) && ($time <= $end_res)) {
  269.                                         $available = 'false';
  270.                                         break;
  271.                                     }
  272.                                     else {
  273.                                         $available = 'true';
  274.                                     }
  275.                                 }
  276.                                 else {
  277.                                     $available = 'true';
  278.                                 }
  279.                             }
  280.                            
  281.                             if ($available == 'true') {
  282.                                 $comp_class = $sel_class;
  283.                                 if($comp == 1) {
  284.                                     $bef_class = $comp_class;
  285.                                     $class++;
  286.                                     $comp=2;
  287.                                 }
  288.                                 else if($bef_class == $sel_class) {
  289.                                     $class++;
  290.                                     $bef_class = $sel_class;
  291.                                 }
  292.                                 else {
  293.                                     $class = 1;
  294.                                     $comp = 1; 
  295.                                     $bef_class = $comp_class;
  296.                                 }
  297.  
  298.                                 if($class == $dif) {
  299.                                 $comp = 1;
  300.                                 $sub_class[$no] = $sel_class;
  301.                                 $sub_start[$no] = $start;
  302.                                 $sub_end[$no] = $end;
  303.                                 print "
  304.                                 <tr>
  305.                                     <td>
  306.                                         <input type='hidden' name='no' value='$no'>
  307.                                         $no
  308.                                     </td>
  309.                                     <td>
  310.                                         <input type='hidden' name='class".$no."' value='$sel_class'>
  311.                                         $sel_class
  312.                                     </td>
  313.                                     <td>
  314.                                         <input type='hidden' name='start".$no."' value='$start'>
  315.                                         <input type='hidden' name='end".$no."' value='$end'>
  316.                                         $start:00 - $end:00
  317.                                     </td>
  318.                                     <td>
  319.                                         AVAILABLE
  320.                                     </td>
  321.                                     <td>
  322.                                         <input type='submit' value='Reserve' name='submit".$no."'>
  323.                                     </td>
  324.                                 </tr>";
  325.                                 $no++;
  326.                                 $class = 0;
  327.                                 $data=1;
  328.                                 }
  329.                             }
  330.                         }
  331.                         if($data == 0) {
  332.                             print "<tr>
  333.                                         <td colspan='5'>
  334.                                             No class can be reserved at that time.
  335.                                         </td>
  336.                                     </tr>";
  337.                         }
  338.                         print "
  339.                             </table>   
  340.                             <input type='button' name='back' value='Back!' onclick='windows:location=\"reserve_class.php\"' style='width:127px'/>";
  341.                         for($x = 1; $x < $no; $x++) {
  342.                             if(isset($_POST['submit'.$x.''])) {
  343.                                 $submit = $_POST['submit'.$x.''];
  344.                                 if($submit == 'Reserve') {
  345.                                     $no_sub = $_POST['no'];
  346.                                     $class_sub = $_POST['class'.$x.''];
  347.                                     $start_sub = $_POST['start'.$x.''];
  348.                                     $end_sub = $_POST['end'.$x.''];
  349.            
  350.                                     mysql_query("INSERT INTO reservation (`username`,`matrix_no`,`email`,`day`,`start_time`,`end_time`,`class`,`date`,`block_code`,`status`,`date_reservation`,`purpose`,`phone`) VALUES('$username','$matrix','$email','$day','$start_sub','$end_sub','$class_sub','$date','$block','UNKNOWN',CURRENT_TIMESTAMP,'$purpose','$phone');");
  351.                                     mysql_query("INSERT INTO admin_reservation (`username`,`matrix_no`,`email`,`day`,`start_time`,`end_time`,`class`,`date`,`block_code`,`status`,`date_reservation`,`purpose`,`phone`) VALUES('$username','$matrix','$email','$day','$start_sub','$end_sub','$class_sub','$date','$block','UNKNOWN',CURRENT_TIMESTAMP,'$purpose','$phone');");
  352.                                     echo '<script>alert("Reservation Complete");window.location="reserve_class.php"</script>';
  353.                                 }
  354.                             }
  355.                         }
  356. ?>
  357.                     </div>
  358.                     <!-- end ClassTableGenerator -->
  359.                 </form>
  360.             </div>
  361.             <!-- end wrapper -->
  362.             </div>
  363.             <!-- end content -->
  364.         </div>
  365.         <!-- end site_content -->
  366.         <?php include 'footer.html' ?>
  367.     </div>
  368.     <!-- header -->
  369. </div>
  370. <!-- end main -->
  371. </body>
  372. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement