alert()의 알림창이 실행되지 않고 넘어갑니다.
본문
QR 코드를 통해 들어온 후 처리하는 코드의 일부입니다.
<?php
include_once('./_common.php');
$event_key = $_GET['event_key'] ? $_GET['event_key'] : '';
$booth_key = $_GET['booth_key'] ? $_GET['booth_key'] : '';
if($event_key == '') {
alert('잘못된 QR 코드입니다.');
echo '잘못된 QR 코드입니다.';
exit;
}
// 로그인된 사용자가 없다면 사용자 등록 페이지로 이동
if (!isset($member['mb_id']) && !$member['mb_id']) {
echo "사용자 등록을 먼저 진행해주세요.";
alert("사용자 등록을 먼저 진행해주세요.", G5_URL.'/page/event_register.php?event_key='.$event_key);
}
else if($event_key && $booth_key) {
$sql = "SELECT * FROM qr_stamp WHERE user_id = '{$member['mb_id']}' AND booth_key = '{$booth_key}'";
$result = sql_query($sql);
if(mysqli_num_rows($result) > 0) {
alert('이미 인증된 스탬프입니다.', G5_URL.'/page/qr_stamp_list.php?event_key='.$event_key);
} else {
$sql = "INSERT INTO qr_stamp
SET user_id = '{$member['mb_id']}',
event_key = '{$event_key}',
booth_key = '{$booth_key}',
qr_datetime = '".G5_TIME_YMDHIS."'";
sql_query($sql);
// 처리 완료 후 스탬프 페이지 이동
alert('QR 스탬프 등록이 완료되었습니다.', G5_URL.'/page/qr_stamp_list.php?event_key='.$event_key);
}
}
?>
위 코드에서 마지막에 alert() 띄운 후 확인을 누른 후에 다음 페이지로 이동이 되야 합니다.
하지만 QR 코드를 통해 이 링크로 들어오고 처리가 완료 및 페이지 이동은 되는데 그 중간에 alert 알림창은 나오지 않습니다.
alert 없이 그냥 다음 페이지로 넘어가지네요. update쿼리는 잘처리된 상태입니다.
이 소스코드 외 그누보드에 기본적으로 있는 소스코드에서의 alert은 문제가 없습니다.
혹시 여기서 alert()의 팝업이 나오지 않는 이유에 대해 알 수 있을까요?
!-->
답변 2
아래와 같이 수정해보세요.
$sql = "SELECT * FROM qr_stamp WHERE user_id = '{$member['mb_id']}' AND booth_key = '{$booth_key}'";
$row = sql_fetch($sql);
if($row['user_id']) {
계속 테스트해보니
http://qrstamp.gwj.co.kr/bbs/qr_stamp.php?event_key=1&booth_key=1
여기서 booth_key에 따라 alert()이 출력됐다 안됐다 합니다.
booth_key가 1일 때는 그냥 넘어가고, 4일 때는 출력되고...
이렇게 파라미터값에 따라 alert()이 출력됐다 안됐다 하는데 이 문제에 대해 의심되는 부분이 있는지 아시는 분이 계실까요?
답변을 작성하시기 전에 로그인 해주세요.