채택완료

게시판 여분필드 쪼개기로 파일 인클루드중에 문제가 있어 질문올립니다

아래는 main_head2.php  파일의 내용입니다.

Copy
<div class="row g-0">

<?php

$module_name = "main_head";{?>

<!--게시판 최신글--{-->

<?php for($i=1;$i<=10;$i++){?>

<?php if(${"latest_out_0".$i} == "{$module_name}"){?>

<div id="<?php echo $module_name;?>">

<?php echo latest('theme/'.${"latest_skin_0".$i}, ${"latest_board_id_0".$i}, ${"latest_line_number_0".$i}, ${"latest_text_length_0".$i}); ?>

</div>

<?php }?>

<?php }?>

<!--게시판 최신글--}-->

<?php } ?>

</div>

 

아래는 main_top2.php 파일내용입니다.

 

Copy
<div class="row g-0">

<?php

$module_name = "main_top";{?>

 

<!--게시판 최신글--{-->

<?php for($i=1;$i<=10;$i++){?>

<?php if(${"latest_out_0".$i} == "{$module_name}"){?>

<div id="<?php echo $module_name;?>">

<?php echo latest('theme/'.${"latest_skin_0".$i}, ${"latest_board_id_0".$i}, ${"latest_line_number_0".$i}, ${"latest_text_length_0".$i}); ?>

</div>

<?php }?>

<?php }?>

<!--게시판 최신글--}-->

<?php } ?>

</div>

 

위의 두 파일을 아래와 같이 불러들이면 잘 출력 됩니다

<?php include_once(G5_THEME_PATH.'/include/layout/main_top2.php'); ?>

<?php include_once(G5_THEME_PATH.'/include/layout/main_head2.php'); ?>

 

그런데 위의 파일의 내용이 동일하여 내용을 include_main.php 만들었고 내용은 다음과 같습니다

Copy
<!--게시판 최신글--{-->

<?php for($i=1;$i<=10;$i++){?>

<?php if(${"latest_out_0".$i} == "{$module_name}"){?>

<div id="<?php echo $module_name;?>">

<?php echo latest('theme/'.${"latest_skin_0".$i}, ${"latest_board_id_0".$i}, ${"latest_line_number_0".$i}, ${"latest_text_length_0".$i}); ?>

</div>

<?php }?>

<?php }?>

<!--게시판 최신글--}-->

 

아래는 main_main3.php 파일내용입니다.

Copy
<?php

$module_name = "main_head";{?>

<!--게시판 최신글--{-->

<?php include_once(G5_THEME_PATH.'/include/layout/include_main.php'); ?>

<!--게시판 최신글--}-->

<?php } ?>

 

아래는 main_top3.php 파일내용입니다.

Copy
<?php

$module_name = "main_top";{?>

<!--게시판 최신글--{-->

<?php include_once(G5_THEME_PATH.'/include/layout/include_main.php'); ?>

<!--게시판 최신글--}-->

<?php } ?>

 

위의 main_head3 main_top3 를 아래와 같이 불러들이면 하나만 출력되고 하나는 출력이 안됩니다.

<?php include_once(G5_THEME_PATH.'/include/layout/main_head3.php'); ?>

<?php include_once(G5_THEME_PATH.'/include/layout/main_top3.php'); ?>

 

질문내용을 글로 설명하는 것이 많이 힘들지만 내용은 반복되는 부분을 파일로 별로 만들어서 인클루드하면 출력이 안되고 반복부분을 파일에 직접삽입하여 인클루드하면 출력이 됩니다

 

위내용중 $module_name  는 출력위치를 나타내고 있습니다

어디가 문제인지 도통 이해가 되질 않아 질문올립니다~~

 

게시판 관리 페이지에서 최신글을 제어하고 싶어서 게시판 관리 여분필드를 쪼개기하여 하고 있는데 반복부분이 너무 많아 인클루드 파일을 만들어서 하려는데 되질 않네여~~

 

 

 

 

 

|

답변 1개

채택된 답변
+20 포인트

♠ $module_name 값이  독립적이여야 할 듯 ~

 

 include_main.php 파일 수정

Copy
<?php
function display_latest_posts($module_name) {
    for($i=1;$i<=10;$i++){
        if(${"latest_out_0".$i} == "{$module_name}") {
            echo '<div id="'.$module_name.'">';
            echo latest('theme/'.${"latest_skin_0".$i}, ${"latest_board_id_0".$i}, ${"latest_line_number_0".$i}, ${"latest_text_length_0".$i});
            echo '</div>';
        }
    }
}
?>

 

※ main_head3.php 파일 수정

Copy
<?php
$module_name = "main_head";
display_latest_posts($module_name);
?>

 

 main_top3.php 파일 수정

Copy
<?php
$module_name = "main_top";
display_latest_posts($module_name);
?>

답변을 작성하려면 로그인이 필요합니다.