림스모바일 로그인시 pc버전 메인으로 넘어가는 현상 문의 드립니다. 정보
림스모바일 로그인시 pc버전 메인으로 넘어가는 현상 문의 드립니다.본문
오류가 나는곳의 주소를 알려주시면 더 빠르고 정확하게 답변 받을 수 있습니다.
오류 주소 :
모바일에서 로그인하면 로그인은 잘 되는데
첫화면이 pc버전 메인으로 넘어가더라고요~
모바일에서 로그인시 그냥 모바일버전 메인으로 넘어가게끔 어떻게 해야할까요?
그누보드 설치한 ftp내에 m이라는 폴더로 만들어서 그 안에 림스모바일 빌더를 다 넣었습니다.
(모바일 버전 예를들면 www.test.com/m 이런식으로 뒤에 m을 붙여야 모바일버전으로 가게끔 되있습니다.)
아래는 www.test.com/m/login.php 파일 소스입니다~
<?
include_once("./_common.php");
define("__LOGIN__", true);
$g4[title] = "로그인";
include_once($g4[path]."/head.php");
// 이미 로그인 중이라면
if ($member[mb_id])
{
if ($url)
goto_url($url);
else
goto_url($g4[path]);
}
if ($url)
$urlencode = urlencode($url);
else
$urlencode = urlencode($_SERVER[REQUEST_URI]);
if ($g4['https_url']) {
$outlogin_url = $_GET['url'];
if ($outlogin_url) {
if (preg_match("/^\.\.\//", $outlogin_url)) {
$outlogin_url = urlencode($g4[url]."/".preg_replace("/^\.\.\//", "", $outlogin_url));
}
else {
$purl = parse_url($g4[url]);
if ($purl[path]) {
$path = urlencode($purl[path]);
$urlencode = preg_replace("/".$path."/", "", $urlencode);
}
$outlogin_url = $g4[url].$urlencode;
}
}
else {
$outlogin_url = $g4[url];
}
}
else {
$outlogin_url = $urlencode;
}
?>
<script type="text/javascript" src="<?=$g4[path]?>/js/capslock.js"></script>
<form name="fhead" method="post" onsubmit="return fhead_submit(this);" autocomplete="off" style="margin:0px;">
<input type="hidden" name="url" value="<?=$outlogin_url?>">
<input type="hidden" name="from" value="<?=$from?>">
<div id="m_login">
<ul>
<li><input name="mb_id" type="text" class="m_input_text" size="10" tabindex="1" maxlength="20" required="required" placeholder='아이디' onFocus="this.placeholder=''"></li>
<li><input name="mb_password" id="outlogin_mb_password" type="password" tabindex="2" class="m_input_text" size="10" maxlength="20" placeholder='패스워드' onFocus="this.placeholder=''"></li>
<li><input type="checkbox" name="auto_login" value="1" onclick="if (this.checked) { if (confirm('자동로그인을 사용하시면 다음부터 회원아이디와 패스워드를 입력하실 필요가 없습니다.\n\n\공공장소에서는 개인정보가 유출될 수 있으니 사용을 자제하여 주십시오.\n\n자동로그인을 사용하시겠습니까?')) { this.checked = true; } else { this.checked = false; } }"> 자동로그인</li>
<li class="center"><span class="button black xLarge strong"><input type="submit" tabindex="3" value="로그인"></span></li>
</ul>
</div>
</form>
<script type="text/javascript">
function fhead_submit(f)
{
if (!f.mb_id.value) {
alert("회원아이디를 입력하십시오.");
f.mb_id.focus();
return false;
}
if (!f.mb_password.value) {
alert("패스워드를 입력하십시오.");
f.mb_password.focus();
return false;
}
f.action = g4_path+'/bbs/login_check.php';
return true;
}
</script>
<!-- 로그인 전 외부로그인 끝 -->
<?
include_once($g4[path]."/tail.php");
?>
오류 주소 :
모바일에서 로그인하면 로그인은 잘 되는데
첫화면이 pc버전 메인으로 넘어가더라고요~
모바일에서 로그인시 그냥 모바일버전 메인으로 넘어가게끔 어떻게 해야할까요?
그누보드 설치한 ftp내에 m이라는 폴더로 만들어서 그 안에 림스모바일 빌더를 다 넣었습니다.
(모바일 버전 예를들면 www.test.com/m 이런식으로 뒤에 m을 붙여야 모바일버전으로 가게끔 되있습니다.)
아래는 www.test.com/m/login.php 파일 소스입니다~
<?
include_once("./_common.php");
define("__LOGIN__", true);
$g4[title] = "로그인";
include_once($g4[path]."/head.php");
// 이미 로그인 중이라면
if ($member[mb_id])
{
if ($url)
goto_url($url);
else
goto_url($g4[path]);
}
if ($url)
$urlencode = urlencode($url);
else
$urlencode = urlencode($_SERVER[REQUEST_URI]);
if ($g4['https_url']) {
$outlogin_url = $_GET['url'];
if ($outlogin_url) {
if (preg_match("/^\.\.\//", $outlogin_url)) {
$outlogin_url = urlencode($g4[url]."/".preg_replace("/^\.\.\//", "", $outlogin_url));
}
else {
$purl = parse_url($g4[url]);
if ($purl[path]) {
$path = urlencode($purl[path]);
$urlencode = preg_replace("/".$path."/", "", $urlencode);
}
$outlogin_url = $g4[url].$urlencode;
}
}
else {
$outlogin_url = $g4[url];
}
}
else {
$outlogin_url = $urlencode;
}
?>
<script type="text/javascript" src="<?=$g4[path]?>/js/capslock.js"></script>
<form name="fhead" method="post" onsubmit="return fhead_submit(this);" autocomplete="off" style="margin:0px;">
<input type="hidden" name="url" value="<?=$outlogin_url?>">
<input type="hidden" name="from" value="<?=$from?>">
<div id="m_login">
<ul>
<li><input name="mb_id" type="text" class="m_input_text" size="10" tabindex="1" maxlength="20" required="required" placeholder='아이디' onFocus="this.placeholder=''"></li>
<li><input name="mb_password" id="outlogin_mb_password" type="password" tabindex="2" class="m_input_text" size="10" maxlength="20" placeholder='패스워드' onFocus="this.placeholder=''"></li>
<li><input type="checkbox" name="auto_login" value="1" onclick="if (this.checked) { if (confirm('자동로그인을 사용하시면 다음부터 회원아이디와 패스워드를 입력하실 필요가 없습니다.\n\n\공공장소에서는 개인정보가 유출될 수 있으니 사용을 자제하여 주십시오.\n\n자동로그인을 사용하시겠습니까?')) { this.checked = true; } else { this.checked = false; } }"> 자동로그인</li>
<li class="center"><span class="button black xLarge strong"><input type="submit" tabindex="3" value="로그인"></span></li>
</ul>
</div>
</form>
<script type="text/javascript">
function fhead_submit(f)
{
if (!f.mb_id.value) {
alert("회원아이디를 입력하십시오.");
f.mb_id.focus();
return false;
}
if (!f.mb_password.value) {
alert("패스워드를 입력하십시오.");
f.mb_password.focus();
return false;
}
f.action = g4_path+'/bbs/login_check.php';
return true;
}
</script>
<!-- 로그인 전 외부로그인 끝 -->
<?
include_once($g4[path]."/tail.php");
?>
댓글 전체
접속 기기가 모바일인지 PC인지 인식하는 루틴이 안보이네요..
좀 만 더 자세히 설명해 주시면 감사드립니다 ㅠㅜ 어떤 소스를 어느 부분에 넣어야 해야할까요?
head.sub.php에
if (!defined("_GNUBOARD_")) exit;
$mobile_agent = '/(iPod|iPhone|Android|BlackBerry|SymbianOS|SCH-M\d+|Opera Mini|Windows CE|Nokia|SonyEricsson|webOS|PalmOS)/';
if (preg_match($mobile_agent, $_SERVER['HTTP_USER_AGENT'])) {
header('Location: http://m.caldera.co.kr');
exit;
}
이렇게 넣고 Location 부분에 가고 싶은 url을 넣어 주심되요
if (!defined("_GNUBOARD_")) exit;
$mobile_agent = '/(iPod|iPhone|Android|BlackBerry|SymbianOS|SCH-M\d+|Opera Mini|Windows CE|Nokia|SonyEricsson|webOS|PalmOS)/';
if (preg_match($mobile_agent, $_SERVER['HTTP_USER_AGENT'])) {
header('Location: http://m.caldera.co.kr');
exit;
}
이렇게 넣고 Location 부분에 가고 싶은 url을 넣어 주심되요
답변 너무 감사드립니다. 위의 소스대로 하니 로그인후에도 모바일버전으로 잘 됩니다~ 그런데 한가지 아쉬운점이 모바일에 있는 "pc버전" 버튼을 클릭해도 모바일버전으로 유지되는... 이것까지 바라면 제가 도둑놈이죠 ㅎ 신경써서 답변 주셔서 감사드립니다 콩주삼님^^
이런 방법이 있었군요~~ 한번 해봐야겠네요 감사합니다 어드반님^^
pc 버전에 있는 php에다가
$mobile_agent = '/(iPod|iPhone|Android|BlackBerry|SymbianOS|SCH-M\d+|Opera Mini|Windows CE|Nokia|SonyEricsson|webOS|PalmOS)/';
if (preg_match($mobile_agent, $_SERVER['HTTP_USER_AGENT'])) {
header('Location: http://m.caldera.co.kr');
exit;
} else {
//pc버전 으로
header('Location: http://www.caldera.co.kr');
exit;
}
만 넣어 주시면 되겟네요
$mobile_agent = '/(iPod|iPhone|Android|BlackBerry|SymbianOS|SCH-M\d+|Opera Mini|Windows CE|Nokia|SonyEricsson|webOS|PalmOS)/';
if (preg_match($mobile_agent, $_SERVER['HTTP_USER_AGENT'])) {
header('Location: http://m.caldera.co.kr');
exit;
} else {
//pc버전 으로
header('Location: http://www.caldera.co.kr');
exit;
}
만 넣어 주시면 되겟네요
크윽 위 소스로 head.sub.php에 넣으니깐 계속 리로딩되면서 다 액박이 나더라고요^^;
$mobile_agent = '/(iPod|iPhone|Android|BlackBerry|SymbianOS|SCH-M\d+|Opera Mini|Windows CE|Nokia|SonyEricsson|webOS|PalmOS)/';
if (!preg_match($mobile_agent, $_SERVER['HTTP_USER_AGENT'])) {
header('Location: http://www.test.co.kr');
exit;
}
아니면 모바일 버전에 이것을 심어보삼
if (!preg_match($mobile_agent, $_SERVER['HTTP_USER_AGENT'])) {
header('Location: http://www.test.co.kr');
exit;
}
아니면 모바일 버전에 이것을 심어보삼
이것도 해봤지만 아쉽게도 모바일버전에서 로그인하면 피시버전메인으로 넘어가더라고요^^: