Example #1
0
 public function post_light_run($stu_number, $cloth_size)
 {
     $sess = new my_session();
     $response = null;
     if (!$sess->get_session("student")) {
         $response = "login-error";
     } else {
         $link = null;
         $link = $this->link_db();
         if ($link != null) {
             $sql = "SELECT COUNT(*) FROM light_run67 WHERE student_number = :student_number";
             $check_limit = "SELECT COUNT(*) FROM light_run67";
             $stmt2 = $link->prepare($check_limit);
             $stmt2->execute();
             $stmt = $link->prepare($sql);
             $stmt->execute(array(":student_number" => $stu_number));
             if ((int) $stmt->fetchColumn() == 1) {
                 $response = "has-signed-up";
             } else {
                 if ((int) $stmt2->fetchColumn() == 350) {
                     $response = "has-limit-number";
                 } else {
                     $sql = "INSERT INTO light_run67(student_number,size,signup_time) VALUES(:student_number,:size,:signup_time)";
                     $time = new DateTime("NOW", new DateTimeZone("Asia/Taipei"));
                     $today = $time->format('Y-m-d H:i:s');
                     $stmt = $link->prepare($sql);
                     $stmt->execute(array(":student_number" => $stu_number, ":size" => $cloth_size, ":signup_time" => $today));
                     $stmt = $link->prepare("SELECT ID FROM light_run67 WHERE student_number = :student_number");
                     $stmt->execute(array(":student_number" => $stu_number));
                     $result = $stmt->fetch();
                     $response = "<h3>報名成功</h3>";
                 }
             }
             $link = null;
         } else {
             $response = "cannot link db.";
         }
     }
     return $response;
 }
Example #2
0
 public function handle_signup($signId, $signup_open)
 {
     $response = "";
     if ($signup_open == null) {
         $response = "post-error";
     } else {
         $sess = new my_session();
         $link = $this->link_db();
         $time = new DateTime("NOW", new DateTimeZone("Asia/Taipei"));
         $today = $time->format('Y-m-d');
         $result = $link->prepare("SELECT COUNT(*) FROM volunteer_item103 WHERE ID = :ID AND isCheck = 1");
         $result->execute(array(":ID" => $signId));
         $is_check = $result->fetchColumn();
         if (!$sess->get_session("student")) {
             $response = "登入後才可報名!";
         } else {
             if ((int) $is_check != 0) {
                 $response = $is_check["item"] . "已經額滿!";
             } else {
                 $stmt = $link->prepare("SELECT COUNT(*) FROM volunteer_list103 WHERE student_number = :student_number AND item = :item");
                 $stmt->execute(array(":student_number" => $sess->get_session("student"), ":item" => $signId));
                 $res = (int) $stmt->fetchColumn();
                 $is_post_again = true;
                 if ($res == 1) {
                     $is_post_again = false;
                 }
                 $today = $time->format('Y-m-d H:i:s');
                 $rs = $link->prepare("SELECT COUNT(*) FROM volunteer_item103 WHERE ID = :ID AND signup_close<':signup_close'");
                 $rs->execute(array(":ID" => $signId, ":signup_close" => $today));
                 $cloth_set = $link->prepare("SELECT COUNT(*) FROM cloth_size103 WHERE student_number = :student_number");
                 $cloth_set->execute(array(":student_number" => $sess->get_session("student")));
                 if ((int) $rs->fetchColumn() != 0) {
                     $response = "報名已經截止,下次請早!";
                 } else {
                     if ((int) $cloth_set->fetchColumn() == 0) {
                         $response = "請先將運動會T-shirt尺寸設定好!";
                     } else {
                         if (!$is_post_again) {
                             $response = "不可重複報名同一個志工項目!";
                         } else {
                             $sql = "INSERT INTO  volunteer_list103(item,student_number,signup_time) VALUES(:item,:student_number,:signup_time)";
                             $stmt = $link->prepare($sql);
                             $stmt->execute(array(":item" => $signId, ":student_number" => $sess->get_session("student"), ":signup_time" => $today));
                             $link = null;
                             $response = "報名成功!";
                         }
                     }
                 }
             }
         }
     }
     return $response;
 }