コード例 #1
0
ファイル: auth.php プロジェクト: hoge1e3/jslesson
 static function loginTeacher($class, $pass, $ignoreNonexistent = false)
 {
     $json = new Services_JSON();
     if (!$class) {
         return "クラス名を入力してください。";
     }
     if (!$pass) {
         return "パスワードを入力してください。";
     }
     if (!file_exists("fs/home/{$class}") && !$ignoreNonexistent) {
         return "存在しないクラスIDが入力されています。";
     }
     if (preg_match('/^[a-zA-Z0-9\\-_]+$/', $pass)) {
         $fp = fopen("user/list.txt", "r");
         while ($line = fgets($fp)) {
             $classlist = $json->decode($line);
             if ($classlist["classid"] == $class) {
                 break;
             }
         }
         fclose($fp);
         if (isset($classlist) && $classlist["pass"] == $pass) {
             // Success
             MySession::set("class", $class);
             MySession::set("user", self::TEACHER);
             setcookie("class", $class, time() + 60 * 60 * 24 * 30);
             return true;
         } else {
             return "クラスIDかパスワードが間違っています。";
         }
     } else {
         return "パスワードは半角英数とハイフン、アンダースコアだけが使えます。";
     }
 }