Files
core/i_entrance/j_change_password.php
T
Hide_D a3f83d1e95 Session 클래스 수정.
- Session클래스 내에서 global setter, getter 재정의
- Session클래스에서 static 함수로 getUserID, getUserGrade 재정의
- 내부 서버에서 getUserID, getUserGrade를 쓰던 것 Session 클래스로 통일
- SESSION.php가 requireLogin 기능을 수행하던것을 Session의 static 함수로 통합
2018-03-24 20:04:55 +09:00

60 lines
1.2 KiB
PHP

<?php
namespace sammo;
require_once('_common.php');
require_once(ROOT.'/f_config/DB.php');
$session = Session::Instance();
if(!$session->isLoggedIn()) {
Json::die([
'result'=>false,
'reason'=>'로그인되지 않았습니다.'
]);
}
session_write_close();
// 외부 파라미터
// $_POST['old_pw'] : PW
// $_POST['new_pw'] : 새 PW
$pw = $_POST['old_pw'];
$newPw = $_POST['new_pw'];
$response['result'] = false;
$db = getRootDB();
$userInfo = $db->update('member',[
'pw'=>$db->sqleval('sha2(concat(salt, %s, salt), 512)', $newPw)
], 'no=%i and pw=sha2(concat(salt, %s, salt), 512)', $session->userID, $pw);
if(!$db->affectedRows()){
$db->insert('member_log', [
'member_no'=>$session->userID,
'action_type'=>'change_pw',
'action'=>json_encode([
'type'=>'plain',
'result'=>false
])
]);
Json::die([
'result'=>false,
'reason'=>'현재 비밀번호가 일치하지 않습니다.'
]);
}
$db->insert('member_log', [
'member_no'=>$session->userID,
'action_type'=>'change_pw',
'action'=>json_encode([
'type'=>'plain',
'result'=>true
])
]);
Json::die([
'result'=>true,
'reason'=>'success'
]);