function execute($requests) { //外部認証の場合はリダイレクト check_action4pne_slave(false); // --- リクエスト変数 $session = $requests['session']; $id = $requests['id']; $new_password = $requests['new_password']; $new_password2 = $requests['new_password2']; // ---------- // ハッシュ化されたIDを戻す $c_member_id = t_decrypt($id); // 権限チェック if (!db_member_c_member_config4name($c_member_id, 'password_reset_sid')) { handle_kengen_error(); } if (!db_member_c_member_config4name($c_member_id, 'password_reset_sid_time')) { handle_kengen_error(); } $c_member_config = db_member_c_member_config4c_member_id($c_member_id); // 権限チェック if ($c_member_config['password_reset_sid'] != $session) { handle_kengen_error(); } // 有効期限は24時間 $one_day_time = 86400; $limit_password_reset_sid_time = $c_member_config['password_reset_sid_time'] + $one_day_time; // 権限チェック if (time() > $limit_password_reset_sid_time) { $p = array('msg_code' => 'password_reset_timeout'); openpne_redirect('pc', 'page_o_tologin', $p); } $msg_list = array(); if (!$new_password) { $msg_list[] = "パスワードを入力してください"; } if (!$new_password2) { $msg_list[] = "パスワード(確認)を入力してください"; } if ($new_password !== $new_password2) { $msg_list[] = "パスワードが一致しません"; } if (!ctype_alnum($new_password) || strlen($new_password) < 6 || strlen($new_password) > 12) { $msg_list[] = "パスワードは6~12文字の半角英数で入力してください"; } // error if ($msg_list) { $p = array('msg' => array_shift($msg_list), 'session' => $session, 'id' => $id); openpne_redirect('pc', 'page_o_password_reset', $p); exit; } db_member_update_password($c_member_id, $new_password); db_member_delete_c_member_config($c_member_id, 'password_reset_sid_time'); db_member_delete_c_member_config($c_member_id, 'password_reset_sid'); $p = array('msg_code' => 'change_password'); openpne_redirect('pc', 'page_o_tologin', $p); }
function execute($requests) { //外部認証の場合はリダイレクト check_action4pne_slave(true); // --- リクエスト変数 $session = $requests['session']; $id = $requests['id']; $new_password = $requests['new_password']; // ---------- // ハッシュ化されたIDを戻す $c_member_id = t_decrypt($id); // 権限チェック if (!db_member_c_member_config4name($c_member_id, 'password_reset_sid')) { handle_kengen_error(); } if (!db_member_c_member_config4name($c_member_id, 'password_reset_sid_time')) { handle_kengen_error(); } $c_member_config = db_member_c_member_config4c_member_id($c_member_id); // 権限チェック if ($c_member_config['password_reset_sid'] != $session) { handle_kengen_error(); } // 有効期限は24時間 $one_day_time = 86400; $limit_password_reset_sid_time = $c_member_config['password_reset_sid_time'] + $one_day_time; // 権限チェック if (time() > $limit_password_reset_sid_time) { $p = array('msg' => 55); openpne_redirect('ktai', 'page_o_login', $p); } // 新しいパスワードは有効な文字列か if (!ctype_alnum($new_password) || strlen($new_password) < 6 || strlen($new_password) > 12) { $p = array('msg' => 20, 'session' => $session, 'id' => $id); openpne_redirect('ktai', 'page_o_password_reset', $p); } db_member_update_password($c_member_id, $new_password); db_member_delete_c_member_config($c_member_id, 'password_reset_sid_time'); db_member_delete_c_member_config($c_member_id, 'password_reset_sid'); $p = array('msg' => 21); openpne_redirect('ktai', 'page_o_login', $p); }
function execute($requests) { $c_member_id = $requests['target_c_member_id']; $password = $requests['password']; if (!ctype_alnum($password) || strlen($password) < 6 || strlen($password) > 12) { admin_client_redirect('passwd', 'パスワードは6~12文字の半角英数で入力してください', 'target_c_member_id=' . $c_member_id); } if ($requests['password'] !== $requests['password2']) { admin_client_redirect('passwd', 'パスワードが一致していません', 'target_c_member_id=' . $c_member_id); } //パスワード変更 db_member_update_password($c_member_id, $password); //メール送信 $c_member_secure = db_member_c_member_secure4c_member_id($c_member_id); if ($c_member_secure['pc_address']) { do_password_query_mail_send($c_member_id, $c_member_secure['pc_address'], $password); } else { db_mail_send_m_ktai_password_query($c_member_id, $password); } admin_client_redirect('top', 'メンバーのパスワードを変更し、メールを送信しました'); }
function execute($requests) { //外部認証の場合はリダイレクト check_action4pne_slave(false); $u = $GLOBALS['AUTH']->uid(); // --- リクエスト変数 $old_password = $requests['old_password']; $new_password = $requests['new_password']; $new_password2 = $requests['new_password2']; // ---------- $msg_list = array(); if (!$new_password) { $msg_list[] = "パスワードを入力してください"; } if (!$new_password2) { $msg_list[] = "パスワード(確認)を入力してください"; } if ($new_password !== $new_password2) { $msg_list[] = "パスワードが一致しません"; } if (!ctype_alnum($new_password) || strlen($new_password) < 6 || strlen($new_password) > 12) { $msg_list[] = "パスワードは6~12文字の半角英数で入力してください"; } if (!$msg_list && !db_common_authenticate_password($u, $old_password)) { $msg_list[] = "現在のパスワードが違います"; } // error if ($msg_list) { $_REQUEST['msg'] = array_shift($msg_list); openpne_forward('pc', 'page', "h_config"); exit; } db_member_update_password($u, $new_password); $GLOBALS['AUTH']->logout(); $p = array('msg_code' => 'change_password'); openpne_redirect('pc', 'page_o_tologin', $p); }
function execute($requests) { //外部認証の場合はリダイレクト check_action4pne_slave(true); $tail = $GLOBALS['KTAI_URL_TAIL']; $u = $GLOBALS['KTAI_C_MEMBER_ID']; // --- リクエスト変数 $old_password = $requests['old_password']; $new_password = $requests['new_password']; // ---------- // 現在のパスワードが正しいか if (!db_common_authenticate_password($u, $old_password, true)) { $p = array('msg' => 18); openpne_redirect('ktai', 'page_h_config_password', $p); } // 新しいパスワードは有効な文字列か if (!ctype_alnum($new_password) || strlen($new_password) < 6 || strlen($new_password) > 12) { $p = array('msg' => 20); openpne_redirect('ktai', 'page_h_config_password', $p); } db_member_update_password($u, $new_password); $p = array('msg' => 21); openpne_redirect('ktai', 'page_h_config', $p); }
function do_common_update_password($c_member_id, $password) { return db_member_update_password($c_member_id, $password); }