특정 파일이 특정 상황에서만 include 가 안되는 경우
본문
국문 / 영문 사이트를 적응형 작업중에 영문 모바일 에서만 파일 하나가 include 되지 않고 있어서 질문드려봅니다...;; 원인을 모르겠네요...
국문PC/MO, 영문PC 에서는 include 가 다 잘되는데 영문 MO 에서만 안되니... 코드도 똑같은데 희한하네요;;
국문PC 경로 root /products/plaster/
국문MO 경로 root /mobile/products/plaster/
영문PC 경로 root /en/products/plaster/
영문MO 경로 root /mobile/en/products/plaster/
안에 index.php, tab1.php, tab2.php, tab3.php, tab4.php, tab5.php, tab6.php 이렇게 7개 파일이 똑같이 있습니다.
영문 PC 의 index.php 에는
$tabList = array(
array('tab'=>'tab1', 'title'=>'탭1 영문'),
array('tab'=>'tab2', 'title'=>'탭2 영문'),
array('tab'=>'tab6', 'title'=>'탭3 영문'),
array('tab'=>'tab3', 'title'=>'탭4 영문'),
array('tab'=>'tab4', 'title'=>'탭5 영문'),
array('tab'=>'tab5', 'title'=>'탭6 영문')
);
if(G5_IS_MOBILE){
include_once(G5_MOBILE_PATH.'/en/products/plaster/index.php');
return;
}
include_once('../_head.php');
?>
<div id="productTab">
<?php
for($i=0; $i<count($tabList); $i++):
if( $i == 0 )
echo '<div role="tablist" aria-label="'.$g5['title'].'" class="tab-ui">'.PHP_EOL;
?>
<button role="tab" aria-selected="true" aria-controls="tabpanel<?php echo $i+1; ?>" id="tab<?php echo $i+1; ?>" tabindex="0" onclick="changePanel(<?php echo $i; ?>);" class="btn btn-tab<?php echo $i == 0 ? ' selected' : ''; ?>"><?php echo $tabList[$i]['title']; ?></button>
<?php
endfor;
if( $i > 0 )
echo '</div>'.PHP_EOL;
for($i=0; $i<count($tabList); $i++):
include G5_PATH."/en/products/{$pageName}/{$tabList[$i]['tab']}.php";
endfor;
?>
</div>
상단에 $tabList 를 만들어서 탭UI 를 돌렸습니다.
PC 에서는 탭버튼 6개 출력 잘 되고, 각 버튼 클릭시 탭패널도 잘 바뀝니다.
영문 MO 이 말썽인데요;;
영문 MO 의 index.php
<div id="productTab">
<div class="inner">
<?php
for($i=0; $i<count($tabList); $i++):
if( $i == 0 )
echo '<div role="tablist" aria-label="'.$g5['title'].'" class="tab-ui">'.PHP_EOL;
?>
<button role="tab" aria-selected="true" aria-controls="tabpanel<?php echo $i+1; ?>" id="tab<?php echo $i+1; ?>" tabindex="0" onclick="changePanel(<?php echo $i; ?>);" class="btn btn-tab<?php echo $i == 0 ? ' selected' : ''; ?>"><?php echo $tabList[$i]['title']; ?></button>
<?php
endfor;
if( $i > 0 )
echo '</div>'.PHP_EOL;
?>
</div>
<?php
for($i=0; $i<count($tabList); $i++):
include G5_MOBILE_PATH."/en/products/{$pageName}/{$tabList[$i]['tab']}.php";
endfor;
?>
</div>
경로만 mobile 꺼로 바꿔서 불러오는데... tab2.php 파일만 include 가 안되고 있습니다...
tab 파일들은 html 마크업된 파일들입니다.
// tab1.php
<article role="tabpanel" aria-labelledby="tab1" id="tabpanel1" class="tab-panel active">
</article>
//tab2.php
<article role="tabpanel" aria-labelledby="tab2" id="tabpanel2" class="tab-panel">
</article>
이런식으로 각 파일마다 article 하나씩 담고 있습니다...
국문을 먼저 만들어서 영문PC는 국문PC 껄 가져와서 경로만 /en 추가한거고,
모바일도 동일하게 국문MO 껄 가져와서 경로만 /en 추가한건데...
왜 영문 모바일에서 tab2.php 파일만 안불러와지는지 알 수 있을까요??
print_r2($tabList) 찍어보면 tab2가 있는데 for문에서 돌면 없어지는 것 같아요...
버튼은 6개 출력 되는데 tab2 파일 include 가 안돼서 해당 버튼 클릭하면 패널페이지가 없이 버튼만 활성화 되고 있습니다;;
!-->!-->!-->