password_lost.skin.php 질문 입니다.
본문
<?php
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨
add_stylesheet('<link rel="stylesheet" href="'.$member_skin_url.'/style.css">', 0);
if($config['cf_cert_use'] && ($config['cf_cert_simple'] || $config['cf_cert_ipin'] || $config['cf_cert_hp'])) { ?>
<script src="<?php echo G5_JS_URL ?>/certify.js?v=<?php echo G5_JS_VER; ?>"></script>
<?php } ?>
<!-- 회원정보 찾기 시작 { -->
<div id="find_info" class="new_win<?php if($config['cf_cert_use'] != 0 && $config['cf_cert_find'] != 0) { ?> cert<?php } ?>">
<div class="new_win_con">
<form name="fpasswordlost" action="<?php echo $action_url ?>" onsubmit="return fpasswordlost_submit(this);" method="post" autocomplete="off">
<input type="hidden" name="cert_no" value="">
<h3>이메일로 찾기</h3>
<fieldset id="info_fs">
<p>
회원가입 시 등록하신 이메일 주소를 입력해 주세요.<br>
해당 이메일로 아이디와 비밀번호 정보를 보내드립니다.
</p>
<label for="mb_email" class="sound_only">E-mail 주소<strong class="sound_only">필수</strong></label>
<input type="text" name="mb_email" id="mb_email" required class="required frm_input full_input email" size="30" placeholder="E-mail 주소">
</fieldset>
<?php echo captcha_html(); ?>
<div class="win_btn">
<button type="submit" class="btn_submit">인증메일 보내기</button>
</div>
</form>
</div>
<?php if($config['cf_cert_use'] != 0 && $config['cf_cert_find'] != 0) { ?>
<div class="new_win_con find_btn">
<h3>본인인증으로 찾기</h3>
<div class="cert_btn">
<?php if(!empty($config['cf_cert_simple'])) { ?>
<button type="button" id="win_sa_kakao_cert" class="btn_submit win_sa_cert" data-type="">간편인증</button>
<?php } if(!empty($config['cf_cert_hp']) || !empty($config['cf_cert_ipin'])) { ?>
<?php if(!empty($config['cf_cert_hp'])) { ?>
<button type="button" id="win_hp_cert" class="btn_submit">휴대폰 본인확인</button>
<?php } if(!empty($config['cf_cert_ipin'])) { ?>
<button type="button" id="win_ipin_cert" class="btn_submit">아이핀 본인확인</button>
<?php } ?>
<?php } ?>
</div>
</div>
<?php } ?>
</div>
스크립트는 생략했습니다.
여기서 질문 입니다.
이메일 인증함수를 사용 안하고, xml 로 POST 요청후 Response 된 이메일과 사용자가 입력한 이메일 값이 같을 경우만 이메일주소로 비밀번호를 변경할 수 있는 이메일을 보내게 하려합니다.
request 는 대략 요런 내용 인데,
<?php
$roomNo = $_POST['room_no'];
$userName = $_POST['user_name'];
$requestData = '<?xml version="1.0"?>
<REQUEST003>
<ROOM_NO>' . $roomNo . '</ROOM_NO>
<USER_NAME>' . $userName . '</USER_NAME>
</REQUEST003>';
$url = 'http://jdream.winsult.co.kr/xml/request.html';
$ch = curl_init($url);
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => $requestData,
CURLOPT_HTTPHEADER => ['Content-Type: text/xml; charset=utf-8'],
]);
$result = curl_exec($ch);
curl_close($ch);
?>
어떻게 해야 할지 감도 못잡고 있습니다. 조언을 기다 립니다.
!-->
답변 1
password_lost.skin.php 파일은
패스워드 찾기 스킨파일이고
이후 확인을 클릭시 뒷 페이지에서 이메일 인증을 요청합니다.
해당 뒷 페이지에서 이메일 인증부분을 삭제하고
해당 url에 post로 xml데이터를 전달 후,
리턴을 받아, 그 리턴값으로 참, 거짓 유무를 결정해서
패스워드 변경 메일을 발송해주면 되겠습니다.
답변을 작성하시기 전에 로그인 해주세요.