EUC-KR에서 중복로그인 방지 성공하신 분? 정보
EUC-KR에서 중복로그인 방지 성공하신 분?
본문
[활용팁]게시판 PhotoFly님의 '중복로그인 방지'글을 보고 해보았습니다.
그런데 첨부파일이 모두 UTF-8 로 코딩 되어있어서,
login_check.php 파일에서
read())) { $temp = file($session_dir . '/' . $entry);
if (preg_match("`ss_mb_id\|[^;]*\"" . $mb[mb_id] . "\";`", $temp[0])) {
// alert("회원님은 접속중이십니다.\\n\\n중복으로 접속 하실수 없습니다.", "$member_skin_path/login_double.php?_POST[mb_id]=$_POST[mb_id]");//본창
글이 그대로 화면에 출력되면서 에러가 나고 새창에서도 에러가 나더군요.
그래서 에디트플러스로 EUC-KR로 변경후 업로드했습니다.
그런데, 그 후에는 에러는 없는데 아무런 변화도 없이 그냥 중복로그인이 되네요.
혹시 EUC-KR에서 중복로그인 방지 성공하신 분이 계신가요?ㅜㅜ
그런데 첨부파일이 모두 UTF-8 로 코딩 되어있어서,
login_check.php 파일에서
read())) { $temp = file($session_dir . '/' . $entry);
if (preg_match("`ss_mb_id\|[^;]*\"" . $mb[mb_id] . "\";`", $temp[0])) {
// alert("회원님은 접속중이십니다.\\n\\n중복으로 접속 하실수 없습니다.", "$member_skin_path/login_double.php?_POST[mb_id]=$_POST[mb_id]");//본창
글이 그대로 화면에 출력되면서 에러가 나고 새창에서도 에러가 나더군요.
그래서 에디트플러스로 EUC-KR로 변경후 업로드했습니다.
그런데, 그 후에는 에러는 없는데 아무런 변화도 없이 그냥 중복로그인이 되네요.
혹시 EUC-KR에서 중복로그인 방지 성공하신 분이 계신가요?ㅜㅜ
댓글 전체
인코딩을 변경하시면서 사용하시는 에디터에서 오류가 있는 모양입니다..
login_check.php 파일의 소스를 아래 소스를 복사해서 교체해보세요...
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
// 자신만의 코드를 넣어주세요.
//중복로그인 방지 추가
//세션디렉토리 설정
$member_skin_path = "$g4[path]/skin/member/$config[cf_member_skin]";
$session_dir = $g4['path'] . "/data/session";
$d = dir($session_dir);
while (false != ($entry = $d->read())) {
$temp = file($session_dir . '/' . $entry);
if (preg_match("`ss_mb_id\|[^;]*\"" . $mb[mb_id] . "\";`", $temp[0])) {
// alert("회원님은 접속중이십니다.\\n\\n중복으로 접속 하실수 없습니다.", "$member_skin_path/login_double.php?_POST[mb_id]=$_POST[mb_id]");//본창
echo "<script language='javascript'>window.open('$member_skin_path/login_double.php?_POST[mb_id]=$_POST[mb_id]','','scrollbars=no,width=250,height=250,top=100,left=100');</script>";//팝업창
echo "<script language='javascript'>history.go(-1);</script>";
exit;
}
}
?>
login_check.php 파일의 소스를 아래 소스를 복사해서 교체해보세요...
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
// 자신만의 코드를 넣어주세요.
//중복로그인 방지 추가
//세션디렉토리 설정
$member_skin_path = "$g4[path]/skin/member/$config[cf_member_skin]";
$session_dir = $g4['path'] . "/data/session";
$d = dir($session_dir);
while (false != ($entry = $d->read())) {
$temp = file($session_dir . '/' . $entry);
if (preg_match("`ss_mb_id\|[^;]*\"" . $mb[mb_id] . "\";`", $temp[0])) {
// alert("회원님은 접속중이십니다.\\n\\n중복으로 접속 하실수 없습니다.", "$member_skin_path/login_double.php?_POST[mb_id]=$_POST[mb_id]");//본창
echo "<script language='javascript'>window.open('$member_skin_path/login_double.php?_POST[mb_id]=$_POST[mb_id]','','scrollbars=no,width=250,height=250,top=100,left=100');</script>";//팝업창
echo "<script language='javascript'>history.go(-1);</script>";
exit;
}
}
?>
또 한가지 중요한것은 이용자가 사용하는 브라우저에 팝업제한이 걸려 있으면,
팝업창이 뜨지 않으므로 중복로그인 팁을 사용할수 없으므로,
팁에 올려져 있는 파일3개 모두를 주석부분을 변경하셔서
본창으로 사용하는 방식으로 사용해야 합니다...^^
팝업창이 뜨지 않으므로 중복로그인 팁을 사용할수 없으므로,
팁에 올려져 있는 파일3개 모두를 주석부분을 변경하셔서
본창으로 사용하는 방식으로 사용해야 합니다...^^
아직 해결하지 못했어요.
세션디렉토리 설정부분에서 걸리는듯...
세션디렉토리 설정부분에서 걸리는듯...