コード例 #1
0
ファイル: MainModel.php プロジェクト: proroker/school
 public static function getRandLessons($count)
 {
     $db = DBHelper::getConnection();
     $result = $db->query("SELECT COUNT(*) max FROM lessons");
     if (!empty($result)) {
         $result->setFetchMode(PDO::FETCH_ASSOC);
         $max = $result->fetch();
         $max = $max["max"];
     } else {
         $max = 0;
     }
     if ($count > $max) {
         $count = $max;
     }
     $ar_rang = array();
     $ar_rand = range(1, $max);
     shuffle($ar_rand);
     $lessons = array();
     for ($i = 0; $i < $count; $i++) {
         $result = $db->query("SELECT * FROM lessons WHERE ID={$ar_rand[$i]}");
         if (!empty($result)) {
             $result->setFetchMode(PDO::FETCH_ASSOC);
             $lessons[$i] = $result->fetch();
         }
     }
     return $lessons;
 }
コード例 #2
0
ファイル: FeedbackModel.php プロジェクト: proroker/school
 public static function insertMessage($message)
 {
     $db = DBHelper::getConnection();
     $subject = self::filterString($message["subject"]);
     $name = self::filterString($message["name"]);
     $email = self::filterString($message["email"]);
     $text = self::filterString($message["text"]);
     $data = array("subject" => $subject, "name" => $name, "email" => $email, "text" => $text);
     $query = $db->prepare("INSERT INTO guestbook (subject, name, email, text) VALUES (:subject, :name, :email, :text)");
     $query->execute($data);
     return true;
 }
コード例 #3
0
ファイル: AdminModel.php プロジェクト: proroker/school
 public static function addExtra($number, $name, $lessons, $text)
 {
     $db = DBHelper::getConnection();
     $data = array("number" => $number, "name" => $name, "text" => $text);
     $queryExtra = $db->prepare("INSERT INTO extras (ID, name,  text) VALUES (:number, :name,  :text)");
     $queryLessonsExtras = $db->prepare("INSERT INTO lessons_extras (id_lesson,id_extra) VALUES (:lesson, :extra)");
     //Добавление записи материала
     $queryExtra->execute($data);
     //Добавление записей-связок с уроками
     foreach ($lessons as $lesson) {
         $data = array("lesson" => $lesson, "extra" => $number);
         $queryLessonsExtras->execute($data);
     }
 }
コード例 #4
0
ファイル: LessonsModel.php プロジェクト: proroker/school
 public static function getExtrasByLessonID($lessonID)
 {
     $db = DBHelper::getConnection();
     $extras = array();
     $result = $db->query("SELECT e.ID,e.name FROM extras e INNER JOIN lessons_extras le ON e.ID=le.id_extra INNER JOIN lessons l ON l.ID=le.id_lesson where l.ID=" . $lessonID . " ORDER BY e.ID");
     if (!empty($result)) {
         $i = 0;
         $result->setFetchMode(PDO::FETCH_ASSOC);
         while ($row = $result->fetch()) {
             $extras[$i] = $row;
             $i++;
         }
     }
     return $extras;
 }
コード例 #5
0
ファイル: Person.php プロジェクト: hulloanson/PRS-COMP2411
 function assignToken($email, $password)
 {
     $matched = $this->credMatch($email, $password);
     if ($matched > 0) {
         $token = Util::guidv4();
     } else {
         return 0;
     }
     $sql = "INSERT INTO Session (id, user_id, issued_time) VALUES (UNHEX(:token), :userId, NOW())\n                ON DUPLICATE KEY UPDATE id = :token AND issued_time = now();";
     try {
         $stmt = DBHelper::getConnection()->prepare($sql);
         $stmt->bindValue(":token", $token);
         if ($stmt->execute()) {
             return $token;
         } else {
             return -1;
         }
     } catch (PDOException $e) {
         return -1;
     }
 }
コード例 #6
0
 function __construct()
 {
     $this->conn = DBHelper::getConnection();
 }