source: temp/trunk/html/admin/login.php @ 1328

Revision 1328, 2.1 KB checked in by naka, 20 years ago (diff)

* empty log message *

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
Line 
1<?php
2require_once("./require.php");
3
4$conn = new SC_DBConn();
5
6$osess = new SC_Session();
7$ret = false;
8
9// ÆþÎÏȽÄê
10if(strlen($_POST{'login_id'}) > 0 && strlen($_POST{'password'}) > 0) {
11    // ǧ¾Ú¥Ñ¥¹¥ï¡¼¥É¤ÎȽÄê
12    $ret = fnCheckPassword($conn);
13}
14
15if($ret){
16    // À®¸ù
17    header("Location: ".URL_HOME);
18    exit;
19} else {
20    // ¥¨¥é¡¼¥Ú¡¼¥¸¤Îɽ¼¨
21    sfDispError(LOGIN_ERROR);
22    exit;
23}
24
25/* ǧ¾Ú¥Ñ¥¹¥ï¡¼¥É¤ÎȽÄê */
26function fnCheckPassword($conn) {
27    $sql = "SELECT member_id, password, authority, login_date, name FROM dtb_member WHERE login_id = ? AND delete <> 1 AND work = 1";
28    $arrcol = array ($_POST['login_id']);
29    // DB¤«¤é°Å¹æ²½¥Ñ¥¹¥ï¡¼¥É¤ò¼èÆÀ¤¹¤ë¡£
30    $data_list = $conn->getAll($sql ,$arrcol);
31    // ¥Ñ¥¹¥ï¡¼¥É¤Î¼èÆÀ
32    $password = $data_list[0]['password'];
33    // ¥æ¡¼¥¶ÆþÎϥѥ¹¥ï¡¼¥É¤ÎȽÄê
34    $ret = crypt($_POST['password'], $password);
35   
36    if ($ret == $password) {
37        // ¥»¥Ã¥·¥ç¥óÅÐÏ¿
38        fnSetLoginSession($data_list[0]['member_id'], $data_list[0]['authority'], $data_list[0]['login_date'], $data_list[0]['name']);
39        // ¥í¥°¥¤¥óÆü»þ¤ÎÅÐÏ¿
40        fnSetLoginDate();
41        return true;
42    }
43   
44    // ¥Ñ¥¹¥ï¡¼¥É
45    gfPrintLog($_POST['login_id'] . " password incorrect.");
46    return false;
47}
48
49/* ǧ¾Ú¥»¥Ã¥·¥ç¥ó¤ÎÅÐÏ¿ */
50function fnSetLoginSession($member_id,$authority,$login_date, $login_name = '') {
51    global $osess;
52    // ǧ¾ÚºÑ¤ß¤ÎÀßÄê
53    $osess->SetSession('cert', CERT_STRING);
54    $osess->SetSession('login_id', $_POST{'login_id'});
55    $osess->SetSession('authority', $authority);
56    $osess->SetSession('member_id', $member_id);
57    $osess->SetSession('login_name', $login_name);
58   
59    if(strlen($login_date) > 0) {
60        $osess->SetSession('last_login', $login_date);
61    } else {
62        $osess->SetSession('last_login', date("Y-m-d H:i:s"));
63    }
64    $sid = $osess->GetSID();
65    // ¥í¥°¤Ëµ­Ï¿¤¹¤ë
66    gfPrintLog("login : user=".$_SESSION{'login_id'}." auth=".$_SESSION{'authority'}." lastlogin=". $_SESSION{'last_login'} ." sid=".$sid);
67}
68
69/* ¥í¥°¥¤¥óÆü»þ¤Î¹¹¿· */
70function fnSetLoginDate() {
71    global $osess;
72    $oquery = new SC_Query();
73    $sqlval['login_date'] = date("Y-m-d H:i:s");
74    $member_id = $osess->GetSession('member_id');
75    $where = "member_id = " . $member_id;
76    $ret = $oquery->update("dtb_member", $sqlval, $where);
77}
78?>
Note: See TracBrowser for help on using the repository browser.