파트너 전산 관리자
Category
개발Customer
(주)빌리고Date
2022내용
기존 PHP5 버전대에 있는 관리자를 PHP7.X이상 버전에서도 사용가능하도록 새로 제작# 파트너 전산 프로젝트 - 기존 PHP5 버전대에 있는 관리자를 PHP7.X이상 버전에서도 사용가능하도록 새로 제작 ## 로그인 - PHP PDO, AJAX로 이용하여 로그인 체크 - 쿠키로 자동로그인 기능 구현 ## 접수현황 - 쿼리 개선 및 상조신청, 리스트, 페이징 구현 - GET 형식으로 검색 구현 - 교원 라이프 코드만 출력되게끔 수정 작업 - 첨부파일 기능 구현 - 마스터 권한은 모든 처리 상태 변경 가능하도록 구현 - 엑셀 다운로드 기능 - 권한별 코멘트 기능 ## 접수현황 - API를 새로 만들어 파트너 홈페이지에서 빠른상담 입력시 해당 서버 데이터 저장 구현 - 상태 변경 swal2.js를 통해 상태 변경 상태 쉽게 알아볼 수 있도록 구현 - API를 통한 데이터 저장시에 실제 신청한 URL 가져오도록 구현 - 접수 버튼 클릭시에 db에 저장되어있는 데이터들 가져와서 자동으로 채워지도록 구현 - GET 형식으로 검색 구현 ## 고객센터 - 왼쪽 연락처 데이터는 마스터 정보에서 가져오도록 구현 - 공지사항 글쓰기 페이지 추가 파일첨부는 최대 5개 까지 가능하도록 구현 - 공지사항 수정, 삭제 구현 - 이미지 파일의 경우 공지사항에 출력하도록 구현 ## 계정관리 - 최근 접속일자, 권한변경 로그 기능 구현 - 리스트 페이지에서 필요 데이터 출력 - 계정 추가시 비밀번호는 복호화 불가능하도록 작업 ## 정보수정 - 간단하게 비밀번호 변경 가능하도록 구현
## 보내는 쪽 tall_skin.php 부분 var apply_goods = "<?=MT_URL.$_SERVER['REQUEST_URI']?>"; var botUsers = <?=js_array(unserialize($pt["telegram_ids"]))?>; var author = $("meta[name='author']").attr("content") ? $("meta[name='author']").attr("content") : "author check"; var message = "★빠른상담★\n" + author + "\n\n" + objs["cust_name"] + " " + objs["cust_tel"]+ "\n\n" + apply_goods;
로그인 및 관리페이지
로그인 처리 PHP 부분
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// 외부서버에 저장된 보안키 호출
// 양방향 : AES-128 적용
// 단방향 : SHA-256 적용 (로그인 암호)
// 키 변경주기 : 6개월
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
function get_security_key($value) {
$key = hex2bin("키값 비공개");
$iv = hex2bin("키값 비공개");
if($value == 2) return array($key,$iv);
else return $key;
}
function nDate($no) {
if($no == 1) { $date=date("YmdHi",time()); return $date; }
if($no == 2) { $date=date("YmdHis",time()); return $date; }
}
$object = new srms();
$userip = $_SERVER['REMOTE_ADDR'];
$date = nDate(2);
$autoLogin = $_POST["autoLogin"];
$admin_id = $_POST["admin_id"];
//비밀번호 암호화
$key = get_security_key(1);
$admin_pass = php_compat_hash_hmac('sha256', $_POST["admin_pass"], $key) ;
if($autoLogin == "Y") {
SetCookie("a_cookie_id","$admin_id",time()+31536000,"/");
SetCookie("a_cookie_pass","$admin_pass",time()+31536000,"/");
}
else {
SetCookie("a_cookie_id","",time()-31536000,"/");
setCookie("a_cookie_pass","",time()-31536000,"/");
}
if(isset($_POST["admin_id"]))
{
$error = '';
$url = '';
$data = array(
':admin_id' => $_POST["admin_id"]
);
$object->query = "
SELECT * FROM green_member
WHERE admin_id = :admin_id
";
$object->execute($data);
$total_row = $object->row_count();
if($total_row == 0)
{
$error = '해당 아이디가 존재 하지 않습니다.';
}
else
{
$result = $object->statement_result();
foreach($result as $row)
{
if($admin_pass == $row["admin_en_pass"])
{
if($row['admin_status'] == "Y") {
//계정 Y
$_SESSION['AGENT_ID'] = $row['admin_id'];
$_SESSION['AGENT_NAME'] = $row['admin_name'];
$_SESSION['AGENT_GROUP'] = $row['admin_group'];
$_SESSION['AGENT_MASTER'] = $row['admin_master'];
//로그기록
$object->query = "INSERT INTO green_admin_log VALUES('', '$admin_id', '$userip', '$date')";
$object->execute();
//로그인실패 카운트 초기화 : 1
$object->query = "UPDATE green_member SET admin_login_fail_cnt = '1' WHERE admin_id = '$admin_id'";
$object->execute();
$url = $object->base_url . 'orderList.php';
} else{
//계정 N
$error = '관리자에게 문의 하세요';
}
}
else
{
//실패시 카운트1 증가
$admin_login_fail_cnt = $row['admin_login_fail_cnt'] + 1;
if($admin_login_fail_cnt >= 6) {
$object->query = "UPDATE green_member SET admin_login_fail_cnt = 6, admin_status = 'N' WHERE admin_id = '$admin_id'";
$object->execute();
$error = '5회 이상 비밀번호가 일치하지 않아 계정이 정지 되었습니다. 관리자에게 문의 하세요';
}else {
$object->query = "UPDATE green_member SET admin_login_fail_cnt = $admin_login_fail_cnt WHERE admin_id = '$admin_id'";
$object->execute();
$error = '비밀번호가 올바르지 않습니다.';
}
}
}
}
$output = array(
'error' => $error,
'url' => $url
);
echo json_encode($output);
}
접수현황 페이지 처리
프로세서 일부 처리 과정 코드
// 렌탈사 $code3 = $rental; // 고객명 $name = trim(addslashes($name)); // 생년월일 //$jumin = my_simple_crypt( $jumin, 'e' ); if (Null_Chk($jumin) == false) $en_base64_jumin = ""; else $en_base64_jumin = my_simple_crypt( $jumin, 'e' ); // 휴대폰 $hp1 = trim($orderPhone); $hp_str = explode("-", $orderPhoneNum); $hp2 = trim($hp_str[0]); $hp3 = trim($hp_str[1]); // 추가 연락처 $tel1 = trim($orderTel); $tel_str = explode("-", $orderTelNum); $tel2 = trim($tel_str[0]); $tel3 = trim($tel_str[1]); // 주소 $address1 = trim(addslashes($address1)); $address2 = trim(addslashes($address2)); // 비고사항 $content = addslashes($content); // 날짜 $date = nDate(2); // 아이피 $userip = $_SERVER['REMOTE_ADDR']; // 진행상태 - 접수요청 $status = "008"; // 그룹 넘버생성 $max_gno = time() . rand(100000, 999999); $code6 = "001"; //파일 체크 $agent_attach_upload_url = null; if ($_FILES['attachment_file'] && $_FILES['attachment_file']['size'] > 0) { $max_upload_size = 20; //MB $allowed = array("zip"); $filename = $_FILES['attachment_file']['name']; $ext = pathinfo($filename, PATHINFO_EXTENSION); $icon = ""; if ($max_upload_size * 1048576 < $_FILES['attachment_file']['size'] || !in_array($ext, $allowed)) { $msg = "업로드 실패"; $icon = "error"; $msg_sub = "파일첨부는 압축파일(zip)만 첨부가능합니다. (최대 20MB)"; echo "<script>alert('파일첨부는 압축파일(zip)만 첨부가능합니다. (최대 20MB)'); history.back();</script>"; exit; } } ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // 파일 업로드 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// if ($mode == 'fileUpload') { if(isset($_FILES['attachment_file'])) { if (!empty($_POST["order_id"])) {$order_id = $_POST["order_id"];} if (!empty($_POST["order_group_id"])) {$order_group_id = $_POST["order_group_id"];} if ($icon != "error") { //실제 파일 업로드 $extension = pathinfo($_FILES['attachment_file']['name'], PATHINFO_EXTENSION); $new_name = time() . '.' . $extension; move_uploaded_file($_FILES['attachment_file']['tmp_name'], 'upload/agent/' . $new_name); $savefile = 'upload/agent/' . $new_name; //DB에 경로 저장 $object->query = " INSERT INTO green_order_gigan_files SET order_id = '$order_id' ,order_group_id = '$order_group_id' ,type = 'ZIP' ,file_url = '" . $savefile . "' ,date = '$date' ";; $object->execute(); $msg = "업로드 성공"; $icon = "success"; $msg_sub = "파일이 업로드 되었습니다"; } $output = array( 'msg' => $msg, 'icon' => $icon, 'msg_sub' => $msg_sub ); echo json_encode($output); exit; } } ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // 파일 삭제 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// if ($mode == 'removeFile') { $object->query = "SELECT * FROM green_order_gigan_files where no = {$id} "; $fileSelect = $object->get_result(); foreach ($fileSelect as $row) { $file_url = $row['file_url']; } if (!empty($file_url) || file_exists($_SERVER['DOCUMENT_ROOT'].'/'.$file_url)) { $object->query = "DELETE FROM green_order_gigan_files where no = {$id} "; $object->execute(); @unlink($_SERVER['DOCUMENT_ROOT'].'/'.$file_url); } $data = array( ); echo json_encode($data); exit; } ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // 문서 삭제 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// if ($mode == 'customerDelete') { //첨부파일 존재 검색 $object->query = "SELECT * FROM green_notice_agent WHERE bbs_no = {$id} "; $fileSelect = $object->get_result(); foreach ($fileSelect as $row) { $del_file1 = $row['bbs_file1_micro']; $del_file2 = $row['bbs_file2_micro']; $del_file3 = $row['bbs_file3_micro']; $del_file4 = $row['bbs_file4_micro']; $del_file5 = $row['bbs_file5_micro']; } //파일 삭제 if(!empty($del_file1)){@unlink($_SERVER['DOCUMENT_ROOT'].'/upload/notice_agent/'.$del_file1);} if(!empty($del_file2)){@unlink($_SERVER['DOCUMENT_ROOT'].'/upload/notice_agent/'.$del_file2);} if(!empty($del_file3)){@unlink($_SERVER['DOCUMENT_ROOT'].'/upload/notice_agent/'.$del_file3);} if(!empty($del_file4)){@unlink($_SERVER['DOCUMENT_ROOT'].'/upload/notice_agent/'.$del_file4);} if(!empty($del_file5)){@unlink($_SERVER['DOCUMENT_ROOT'].'/upload/notice_agent/'.$del_file5);} $object->query = "DELETE FROM green_notice_agent where bbs_no = {$id} "; $object->execute(); $msg = "ok"; $data = array( 'status' => $msg, ); echo json_encode($data); exit; } if ($mode == 'customerModDelete') { //첨부파일 존재 검색 $object->query = "SELECT * FROM green_notice_agent WHERE bbs_no = {$id} "; $fileSelect = $object->get_result(); foreach ($fileSelect as $row) { $del_file1 = $row['bbs_file1_micro']; $del_file2 = $row['bbs_file2_micro']; $del_file3 = $row['bbs_file3_micro']; $del_file4 = $row['bbs_file4_micro']; $del_file5 = $row['bbs_file5_micro']; } foreach ($fileSelect as $row) { $del_file1 = $row['bbs_file1_micro']; $del_file2 = $row['bbs_file2_micro']; $del_file3 = $row['bbs_file3_micro']; $del_file4 = $row['bbs_file4_micro']; $del_file5 = $row['bbs_file5_micro']; } //파일 삭제 if($id == "bbs_file1") { if (!empty($del_file1)) { @unlink($_SERVER['DOCUMENT_ROOT'] . '/upload/notice_agent/' . $del_file1); } } //파일 삭제 if($id == "bbs_file2") { if (!empty($del_file2)) { @unlink($_SERVER['DOCUMENT_ROOT'] . '/upload/notice_agent/' . $del_file2); } } //파일 삭제 if($id == "bbs_file3") { if (!empty($del_file3)) { @unlink($_SERVER['DOCUMENT_ROOT'] . '/upload/notice_agent/' . $del_file3); } } //파일 삭제 if($id == "bbs_file4") { if (!empty($del_file4)) { @unlink($_SERVER['DOCUMENT_ROOT'] . '/upload/notice_agent/' . $del_file4); } } //파일 삭제 if($id == "bbs_file5") { if (!empty($del_file5)) { @unlink($_SERVER['DOCUMENT_ROOT'] . '/upload/notice_agent/' . $del_file5); } } $object->query = "UPDATE green_notice_agent SET {$id} = '' and {$id}_micro = '' and {$id}_size = '' WHERE bbs_no={$bbs_no} "; $object->execute(); $msg = "ok"; $data = array( 'status' => $msg, ); echo json_encode($data); //echo "<script>opener.location.href='customer.php'; self.close();</script>"; exit; } if ($mode == 'notice_update') { $object->query = "SELECT * FROM green_member WHERE admin_id = '".$_SESSION['AGENT_ID']."'"; $result = $object->get_result(); foreach($result as $row){ //비밀번호는 일단 임시로 입력 $admin_pass = $row['admin_en_pass']; } //비밀번호 암호화 if (Null_Chk($_POST['bbs_pass']) == false) $bbs_pass = ""; else $bbs_pass = my_simple_crypt( $_POST['bbs_pass'], 'e' ); $z = 1; for($i=0; $i<=4; $i=$i+1){ $file_name = ""; $filesize = ""; $new_name = ""; $extension = ""; $save_filetmp = ""; $file_tmpname = ""; $fileAttach = "attachment_file".$i; $bbs_fileSelect = "bbs_file".$z; if(isset($_FILES[$fileAttach])) { if(!empty($_FILES[$fileAttach]['size'])){$filesize = $_FILES[$fileAttach]['size'];} if(!empty($_FILES[$fileAttach]['name'])){$file_name = $_FILES[$fileAttach]['name'];} if(!empty($_FILES[$fileAttach]['tmp_name'])){$file_tmpname = $_FILES[$fileAttach]['tmp_name'];} $extension = pathinfo($_FILES[$fileAttach]['name'], PATHINFO_EXTENSION); $new_name = time() . '.' . $extension; move_uploaded_file($_FILES[$fileAttach]['tmp_name'], 'upload/notice_agent/' . $file_name); $save_filetmp = $new_name; $savefile_url[$i] = $file_name; $savefile_size[$i] = $filesize; $savefile_nane[$i] = $file_name; //공지사항 첨부파일 업데이트 $object->query = " UPDATE green_notice_agent SET {$bbs_fileSelect} = '$savefile_url[$i]' ,{$bbs_fileSelect}_size = '$savefile_size[$i]' ,{$bbs_fileSelect}_micro = '$savefile_nane[$i]' WHERE bbs_no='{$bbs_no}' "; $object->execute(); } $z++; } //exit; //공지사항 내용업데이트 $object->query = " UPDATE green_notice_agent SET bbs_name = '$_POST[bbs_name]' ,bbs_subject = '$_POST[bbs_subject]' ,bbs_content = '$_POST[bbs_content]' ,bbs_notice = '$_POST[bbs_notice]' WHERE bbs_no='{$bbs_no}' "; $object->execute(); echo "<script>alert('정상적으로 수정되었습니다'); opener.location.href='customer.php'; self.close();</script>"; exit; } ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // 글쓰기 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// if ($mode == 'write') { foreach ($product as $key => $value) { if (in_array($_SESSION['AGENT_ID'], array("vuumtech1", "vuumtech2"))) { $code3 = "006"; $code4 = "001"; $code5 = "039"; $code6 = (empty($gigan)) ? "002" : $gigan; $status = "001"; array_push($alimTalk, array( "name" => $name, "receiveNo" => $hp1 . $hp2 . $hp3 )); } else { $code4 = "001"; $code5 = $value; $code6 = $gigan[$key]; } // 상품등록 $object->query = " INSERT INTO green_order_gigan SET gno = '$max_gno' ,code1 = '01' ,code2 = '026' ,code3 = '$code3' ,code4 = '$code4' ,code5 = '$code5' ,code6 = '$code6' ,name = '$name' ,jumin = '$en_base64_jumin' ,hp1 = '$hp1' ,hp2 = '$hp2' ,hp3 = '$hp3' ,tel1 = '$tel1' ,tel2 = '$tel2' ,tel3 = '$tel3' ,address1 = '$address1' ,address2 = '$address2' ,content = '$content' ,susuryo = '0' ,gift_money_status = '0' ,status = '$status' ,jungsan_status = '001' ,partner = '000' ,group_id = '001' ,write_id = '$_SESSION[AGENT_ID]' ,userip = '$userip' ,date = '$date' "; $object->execute(); } //렌탈 신청 팝업에서 첨부파일 선택시 if(!empty($_FILES['attachment_file']['name'])) { //위에 insert 된 no 구하기 $object->query = "SELECT * FROM green_order_gigan where gno = {$max_gno} and name = '{$name}' "; $fileSelect = $object->get_result(); foreach ($fileSelect as $row) { $order_id = $row['no']; } $extension = pathinfo($_FILES['attachment_file']['name'], PATHINFO_EXTENSION); $new_name = time() . '.' . $extension; move_uploaded_file($_FILES['attachment_file']['tmp_name'], 'upload/agent/' . $new_name); $savefile = 'upload/agent/' . $new_name; $object->query = " INSERT INTO green_order_gigan_files SET order_id = '$order_id' ,order_group_id = '$max_gno' ,type = 'ZIP' ,file_url = '" . $savefile . "' ,date = '$date' ";; $object->execute(); } echo "<script>alert('정상적으로 신청되었습니다'); opener.location.href='orderList.php'; self.close();</script>"; exit; } ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // 공지사항 글쓰기 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// if ($mode == 'notice_write') { $object->query = "SELECT * FROM green_member WHERE admin_id = '".$_SESSION['AGENT_ID']."'"; $result = $object->get_result(); foreach($result as $row){ //비밀번호는 일단 임시로 입력 $admin_pass = $row['admin_en_pass']; } //var_dump($_FILES['attachment_file1']); //exit; for($i=0; $i<=4; $i=$i+1){ $file_name = ""; $filesize = ""; $new_name = ""; $extension = ""; $save_filetmp = ""; $file_tmpname = ""; $fileAttach = "attachment_file".$i; if(isset($_FILES[$fileAttach])) { if(!empty($_FILES[$fileAttach]['size'])){$filesize = $_FILES[$fileAttach]['size'];} if(!empty($_FILES[$fileAttach]['name'])){$file_name = $_FILES[$fileAttach]['name'];} if(!empty($_FILES[$fileAttach]['tmp_name'])){$file_tmpname = $_FILES[$fileAttach]['tmp_name'];} $extension = pathinfo($_FILES[$fileAttach]['name'], PATHINFO_EXTENSION); $new_name = time() . '.' . $extension; move_uploaded_file($_FILES[$fileAttach]['tmp_name'], 'upload/notice_agent/' . $file_name); $save_filetmp = $new_name; $savefile_url[$i] = $file_name; $savefile_size[$i] = $filesize; $savefile_nane[$i] = $file_name; } } //비밀번호 암호화 if (Null_Chk($_POST['bbs_pass']) == false) $bbs_pass = ""; else $bbs_pass = my_simple_crypt( $_POST['bbs_pass'], 'e' ); //공지사항 인서트 $object->query = " INSERT INTO green_notice_agent SET bbs_thread = 'A' ,bbs_name = '$_POST[bbs_name]' ,bbs_subject = '$_POST[bbs_subject]' ,bbs_content = '$_POST[bbs_content]' ,bbs_pass = '$admin_pass' ,bbs_owner = '$admin_pass' ,bbs_notice = '$_POST[bbs_notice]' ,bbs_adminid = '$_SESSION[bbs_adminid]' ,bbs_file1 = '$savefile_url[0]' ,bbs_file1_size = '$savefile_size[0]' ,bbs_file1_micro = '$savefile_nane[0]' ,bbs_file2 = '$savefile_url[1]' ,bbs_file2_size = '$savefile_size[1]' ,bbs_file2_micro = '$savefile_nane[1]' ,bbs_file3 = '$savefile_url[2]' ,bbs_file3_size = '$savefile_size[2]' ,bbs_file3_micro = '$savefile_nane[2]' ,bbs_file4 = '$savefile_url[3]' ,bbs_file4_size = '$savefile_size[3]' ,bbs_file4_micro = '$savefile_nane[3]' ,bbs_file5 = '$savefile_url[4]' ,bbs_file5_size = '$savefile_size[4]' ,bbs_file5_micro = '$savefile_nane[4]' ,bbs_ip = '$userip' ,bbs_date = '$date' ";; $object->execute(); echo "<script>alert('정상적으로 추가되었습니다'); opener.location.href='customer.php'; self.close();</script>"; exit; } ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // 회원추가 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// if ($mode == 'memberWrite') { $key = get_security_key(1); $admin_en_pass = php_compat_hash_hmac('sha256', $_POST["admin_pass"], $key) ; //공지사항 인서트 $object->query = " INSERT INTO green_member SET admin_group = '$_POST[admin_group]' ,admin_company = '$_POST[admin_company]' ,admin_company_name = '$_POST[admin_name]]' ,admin_name = '$_POST[admin_name]' ,admin_id = '$_POST[admin_id]' ,admin_email = '$_POST[admin_email]' ,admin_en_pass = '$admin_en_pass' ,admin_hp = '$_POST[admin_hp]' ,admin_telegram_id = '$_POST[admin_telegram_id]' ,admin_level = '$_POST[admin_level]' ,admin_status = '$_POST[admin_status]' ,admin_login_fail_cnt = '0' ,admin_pass_modify_date = '$_POST[admin_join]' ,admin_sort = '0' ,admin_join = '$_POST[admin_join]' ,admin_memo = '$_POST[admin_memo]' ";; $object->execute(); echo "<script>alert('정상적으로 추가되었습니다'); opener.location.href='memberList.php'; self.close();</script>"; exit; } ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // 회원수정 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// if ($mode == 'memberMod') { //비밀번호 암호화 if(empty($_POST["admin_pass"])){ $object->query = " UPDATE green_member SET admin_group = '$_POST[admin_group]' ,admin_company = '$_POST[admin_company]' ,admin_company_name = '$_POST[admin_name]' ,admin_name = '$_POST[admin_name]' ,admin_id = '$_POST[admin_id]' ,admin_email = '$_POST[admin_email]' ,admin_hp = '$_POST[admin_hp]' ,admin_level = '$_POST[admin_level]' ,admin_status = '$_POST[admin_status]' ,admin_memo = '$_POST[admin_memo]' ,admin_pass_modify_date = '$_POST[admin_join]' WHERE admin_no='{$admin_no}' "; } else { $key = get_security_key(1); $admin_en_pass = php_compat_hash_hmac('sha256', $_POST["admin_pass"], $key); $object->query = " UPDATE green_member SET admin_group = '$_POST[admin_group]' ,admin_company = '$_POST[admin_company]' ,admin_company_name = '$_POST[admin_name]' ,admin_name = '$_POST[admin_name]' ,admin_id = '$_POST[admin_id]' ,admin_email = '$_POST[admin_email]' ,admin_en_pass = '$admin_en_pass' ,admin_hp = '$_POST[admin_hp]' ,admin_level = '$_POST[admin_level]' ,admin_status = '$_POST[admin_status]' ,admin_memo = '$_POST[admin_memo]' ,admin_pass_modify_date = '$_POST[admin_join]' WHERE admin_no='{$admin_no}' "; } $object->execute(); $object->query = " INSERT INTO green_member_log VALUES( '', '$_SESSION[AGENT_ID]', '$_POST[admin_id]', '$_POST[admin_level]', '$_POST[admin_status]', '$date' )"; $object->execute(); echo "<script>alert('정상적으로 수정되었습니다'); opener.location.href='memberList.php'; self.close();</script>"; exit; }
<div class="inquiry_bar animated bounceInUp"> <div class="call"> <i class="ico phone"></i> <h3>쉽고, 빠른 상조 상담</h3> <p class="ff_Cabin">1566-0702</p> </div> <div class="form"> <form name="easyCallFrm" id="easyCallFrm" method="post"> <input type="hidden" name="site" value="http://kyowon-life.com/"> <div class="inputType_1"> <input type="text" name="cust_name" id="cust_name" title="이름" placeholder="이름"> </div> <div class="inputType_1 tel"> <input type="text" name="cust_tel" id="cust_tel" class="phoneNumber" title="연락처" placeholder="연락처 (-없이)" maxlength="14"> </div> <div class="checksType_1 checks on"> <input type="checkbox" id="chk_agree" name="chk_agree" checked="checked"> <label for="chk_agree"> <p><em class="btn_agree">개인정보 수집·이용</em>에<br>동의합니다.</p> </label> <div class="agree_info box rnd20 animated fadeInDownShort" style="display: none;"> <h3 class="ff_NSR">개인정보 수집·이용 동의</h3> <p>교원라이프의 가입상품 신청을 받기 위해 개인정보를 수집/이용하는 것에 동의 합니다.</p> <ol> <li><span class="num">1.</span>수집항목 : 이름, 연락처</li> <li><span class="num">2.</span>수집 및 이용목적 : 교원라이프 상품 가입 상담을 위한 정보 제공</li> <li><span class="num">3.</span>보유 및 이용기간 : 이용목적이 달성된 후 지체없이 파기</li> </ol> </div> </div> <button type="button" class="btn teal h50 arr_rt" onclick="customerRequests(this);"><span>신청하기</span></button> </form> </div> </div>
// Customer Requests function customerRequests(obj) { var f = document.easyCallFrm; if(!f.cust_name.value) { alert('이름을 입력해 주세요'); f.cust_name.focus(); return false; } if(!f.cust_tel.value) { alert('연락처를 입력해 주세요'); f.cust_tel.focus(); return false; } /* 연락처 유효성 검사 강화 */ if (!isValidPhoneNumber(f.cust_tel.value)) { f.cust_tel.focus(); return false; } if(f.chk_agree.checked == false) { alert('[개인정보 수집동의] 체크를 해주셔야 상담신청이 가능합니다.'); f.chk_agree.focus(); return false; } $(obj).attr("onclick", ""); $(obj).find("span").html("신청중 입니다."); var Parameters = $(obj.form).serialize(); var ResponseData = ""; //Ajax call var AjaxUrl = "//younghun.xyz/dev/partner_admin/api/request_quick.php"; var AjaxParameter = Parameters; var AjaxType = "POST"; var AjaxDataType = "JSON"; var AjaxAsync = true; var AjaxError = ""; var AjaxComplete = ""; var AjaxGlobal = true; var AjaxSuccess = function(data) { if(data.status === true) { try { gtag('event', 'counseling'); }catch (e) { console.log(e); } alert("정상적으로 신청 되었습니다.\n빠르게 연락드리도록 하겠습니다."); location.reload(); } //ResponseData = data; }; AjaxLoad(AjaxUrl, AjaxParameter, AjaxType, AjaxDataType, AjaxAsync, AjaxSuccess, AjaxError, AjaxComplete, AjaxGlobal); return ResponseData ? ResponseData : ""; } function onlyNumber(str,field) { if(isNaN(str)) { //alert('숫자만 입력해 주세요'); field.value = ""; field.focus(); return false; } }