{$db->getMessage()}

"); //エラー処理 exit(); } $db->query("SET NAMES utf8"); /* //config読み取り $course_list_sql = "SELECT * FROM `course` ORDER BY `sort`"; $course_list_res = $db->query($course_list_sql); for($cl=0; $cl<$course_list_res->numRows(); $cl++){ $course_list_dat[$cl] = $course_list_res->fetchRow(MDB2_FETCHMODE_ASSOC); } $config_list_sql = "SELECT * FROM `config` ORDER BY `config_id`"; $config_list_res = $db->query($config_list_sql); for($cl=0; $cl<$config_list_res->numRows(); $cl++){ $config_list_dat[$cl] = $config_list_res->fetchRow(MDB2_FETCHMODE_ASSOC); } //登録データで設定を更新 $clear_score = $config_list_dat[4]['data']; */ //各種入力値取得 $user_id = str_replace(">",">",str_replace("<","<",$_REQUEST['user_id'])); //ユーザーID $user_ps = str_replace(">",">",str_replace("<","<",$_REQUEST['user_pass'])); //ユーザーパス $user_no = $_REQUEST['n']; //会員No $course = $_REQUEST['sel_course']; //WEB学習教材 if($course == 0){$course = 1;} //WEB学習教材選択なしの場合は1(英検2級1次)に $mode = $_REQUEST['m']; //処理モード $message = $_REQUEST['mes']; //エラー内容フラグ if($_REQUEST['err']){ $message = 1; } if($mode == "logout"){ $course = $_REQUEST['c']; } //ログイン確認 if($user_no != ""){ $in_sql = "SELECT * FROM `logined` WHERE `no`='".$user_no."'"; $in_res = $db->query($in_sql); //ログイン実績がある場合は有効期限を確認 if($in_res->numRows()){ $in_dat = $in_res->fetchRow(MDB2_FETCHMODE_ASSOC); $limit_time = new DateTime($in_dat['limittime']); //有効期限取得 $now_time = new DateTime; //現在日時取得 //有効期限切れの場合はエラーページへリダイレクト if($limit_time < $now_time){ $logout_sql = "DELETE FROM `logined` WHERE `no`=".$user_no; $db->query($logout_sql); $rec_str = "ログイン有効期限切れにより自動ログアウト"; $rec_sql = "insert into `history` set `no`=".$user_no.",`course_no`=".$course.",`rec_date`='".$now_time->format('Y-m-d H:i:s')."',`rec_str`='".$rec_str."'"; $db->query($rec_sql); header("Location: index.php?mes=1\n\n"); exit(); }else{ $course = $in_dat['course']; $limit_time = new DateTime; //現在日時取得 $limit_time->modify('+30 minutes'); $update_sql = "UPDATE `logined` SET `limittime`='".$limit_time->format('Y-m-d H:i:s')."' WHERE `no`=".$user_no; $db->query($update_sql); //会員情報取得 $mem_sql = "SELECT * FROM `member` WHERE `no`='".$user_no."'"; $mem_res = $db->query($mem_sql); $mem_dat = $mem_res->fetchRow(MDB2_FETCHMODE_ASSOC); } } } //ログイン認証 if(($user_id != "") || ($user_ps != "")){ $error_message = ""; $login_sql = "SELECT * FROM `member` WHERE `id`='".$user_id."' AND `pass`='".$user_ps."'"; $login_res = $db->query($login_sql); if($login_res->numRows()){ $mem_dat = $login_res->fetchRow(MDB2_FETCHMODE_ASSOC); //会員削除済み if($mem_dat['status'] == 5){ $user_id = ""; $user_ps = ""; $error_message = "会員IDもしくはパスワードが間違っています。"; } //有効期限切れ if($mem_dat['status'] == 2){ $user_id = ""; $user_ps = ""; $error_message = "会員IDもしくはパスワードが間違っています。"; } //有効 if($mem_dat['status'] == 1){ //有効期限を確認 $limit_time = new DateTime($mem_dat['limittime']);; //有効期限取得 $now_time = new DateTime; //現在日時取得 if($limit_time < $now_time){ $update_sql = "UPDATE `member` SET `status`=2 WHERE `id`='".$user_id."' AND `pass`='".$user_ps."'"; $db->query($update_sql); $user_id = ""; $user_ps = ""; $error_message = "会員IDもしくはパスワードが間違っています。"; }elseif(substr($mem_dat['course_flag'],$course-1,1) == "0"){ $user_id = ""; $user_ps = ""; $error_message = "選択されたWEB学習教材は受講していません。
受講しているWEB学習教材を選択してログインして下さい。"; }else{ $limit_time = clone $now_time; $limit_time->modify('+30 minutes'); $w_login_sql = "SELECT * FROM `logined` WHERE `no`=".$mem_dat['no']; $w_login_res = $db->query($w_login_sql); if($w_login_res->numRows()){ $login_sql = "UPDATE `logined` SET `course_no`=".$course.",`intime`='".$now_time->format('Y-m-d H:i:s')."',`limittime`='".$limit_time->format('Y-m-d H:i:s')."' WHERE `no`=".$mem_dat['no']; }else{ $login_sql = "INSERT INTO `logined` SET `no`=".$mem_dat['no'].",`course_no`=".$course.",`intime`='".$now_time->format('Y-m-d H:i:s')."',`limittime`='".$limit_time->format('Y-m-d H:i:s')."'"; } $db->query($login_sql); $mode = "menu"; //問題なく認証OKの場合はメニューを表示 $user_no = $mem_dat['no']; $in_sql = "SELECT * FROM `logined` WHERE `no`=".$mem_dat['no']; $in_res = $db->query($in_sql); $in_dat = $in_res->fetchRow(MDB2_FETCHMODE_ASSOC); $rec_str = "ログイン(".$course_list[$course]['name'].")"; $rec_sql = "insert into `history` set `no`=".$user_no.",`course_no`=".$course.",`rec_date`='".$now_time->format('Y-m-d H:i:s')."',`rec_str`='".$rec_str."'"; $db->query($rec_sql); } } }else{ $user_id = ""; $user_ps = ""; $error_message = "会員IDもしくはパスワードが間違っています。"; } //エラーの場合はログイン画面に戻る if($error_message != ""){ $mode = ""; } } // 自動処理 ------------------------------------------------ //ログアウト if($mode == "logout"){ $logout_sql = "SELECT * FROM `logined` WHERE `no`=".$user_no; $db->query($logout_sql); $out_dat = $in_res->fetchRow(MDB2_FETCHMODE_ASSOC); $logout_sql = "DELETE FROM `logined` WHERE `no`=".$user_no; $db->query($logout_sql); $rec_str = "ログアウト(".$course_list[($_REQUEST['c'])]['name'].")"; $now_time = new DateTime; //現在日時取得 $rec_sql = "insert into `history` set `no`=".$user_no.",`course_no`=".($_REQUEST['c']).",`rec_date`='".$now_time->format('Y-m-d H:i:s')."',`rec_str`='".$rec_str."'"; $db->query($rec_sql); $mode = ""; $user_no = ""; $message = 2; } //メッセージセット if($message == 1){ $error_message = "ログインの有効期限が切れました。
再度ログインして下さい。"; } if($message == 2){ $error_message = "ログアウトしました。"; } // 画面表示 ------------------------------------------------ //ログイン if($mode == ""){ HtmlHeader("言通 gentsu 会員ページ -ログイン-"); echo "
"; if($error_message != ""){ echo "
".$error_message."
"; } echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo "
会員ID
パスワード
WEB学習教材
"; echo ""; echo "
"; echo "
言通 gentsu リーディングコース ガイダンス
"; HtmlFooter(); } //メニュー if($mode == "menu"){ $course = $in_dat['course_no']; $user_no = $in_dat['no']; //ファイル数取得⇒セッション数算出 $files_list = scandir("./data/course".$course."/"); $file_cnt = 0; foreach($files_list as $file){ if(is_file("./data/course".$course."/".$file) == true){ $file_cnt++; } } //セッション毎のプレワーク問題数取得 $pre_work_dat = array(); //プレワーク問題格納 $pre_work_cnt = array(); //プレワーク区分数格納 if($course_list[$course]['goi'] == 0){ $ss_cnt = $file_cnt/3; for($p=1; $p<=$ss_cnt; $p++){ $pre_work_dat[$p] = file("./data/course".$course."/pre_work_s".$p.".txt"); $pre_work_cnt[$p] = count($pre_work_dat[$p])/10; } }else{ $ss_cnt = $file_cnt; for($p=1; $p<=$ss_cnt; $p++){ $pre_work_dat[$p] = file("./data/course".$course."/goi_training_s".$p.".txt"); $pre_work_cnt[$p] = count($pre_work_dat[$p])/10; } } //セッションの進行状況取得 $session_sql = "SELECT * FROM `session_step` WHERE `no`=".$user_no." AND `course_no`=".$course; $session_res = $db->query($session_sql); if($session_res->numRows()){ //セッション進行データがあれば取得 $session_dat = $session_res->fetchRow(MDB2_FETCHMODE_ASSOC); $now_session = $session_dat['session_step']; }else{ //なければ作成&初期値設定 $session_create_sql = "INSERT INTO `session_step` SET `no`=".$user_no.",`course_no`=".$course.",`session_step`=1"; $db->query($session_create_sql); $now_session = 1; } //セッション毎のプレワーク進行状況取得 $prework_sql = "SELECT * FROM `prework_step` WHERE `no`=".$user_no." AND `course_no`=".$course." ORDER BY `session_no`"; $prework_res = $db->query($prework_sql); if($prework_res->numRows()){ for($p=0; $p<$prework_res->numRows(); $p++){ $prework_dat = $prework_res->fetchRow(MDB2_FETCHMODE_ASSOC); $now_prework_step[$p+1] = $prework_dat['prework_step']; $now_prework_cls[$p+1] = $prework_dat['prework_clear']; } }else{ //なければ作成&初期値設定 for($p=0; $p<10; $p++){ $prework_create_sql = "INSERT INTO `prework_step` SET `no`=".$user_no.",`course_no`=".$course.",`session_no`=".($p+1).",`prework_step`=1,`prework_clear`='0'"; $db->query($prework_create_sql); $now_prework_step[$p+1] = "1"; $now_prework_cls[$p+1] = "0"; } } //セッション毎のコラムリーディング進行状況取得 $columnread_sql = "SELECT * FROM `columnread_step` WHERE `no`=".$user_no." AND `course_no`=".$course." ORDER BY `session_no`"; $columnread_res = $db->query($columnread_sql); if($columnread_res->numRows()){ for($c=0; $c<$columnread_res->numRows(); $c++){ $columnread_dat = $columnread_res->fetchRow(MDB2_FETCHMODE_ASSOC); $now_columnread[$c+1] = $columnread_dat['columnread_step']; } }else{ //なければ作成&初期値設定 for($c=0; $c<10; $c++){ $columnread_create_sql = "INSERT INTO `columnread_step` SET `no`=".$user_no.",`course_no`=".$course.",`session_no`=".($c+1).",`columnread_step`=1"; $db->query($columnread_create_sql); $now_columnread[$c+1] = 1; } } //各進行状況を反映しつつ表示 HtmlHeader_Menu("言通 gentsu ".$course_list[$course]['name']." -メニュー-"); echo "
会員ID : ".$mem_dat['id']." [ ログアウト ]
"; echo "
◆WEB学習教材 : ".$course_list[$course]['name']."
"; echo "
"; echo "
"; echo ""; // } echo "\n"; } echo ""; echo "
"; HtmlFooter(); } ?>