반복문 시작 이전에 값 출력하는 방법이 있을까요..?

반복문 시작 이전에 값 출력하는 방법이 있을까요..?

QA

반복문 시작 이전에 값 출력하는 방법이 있을까요..?

답변 5

본문

안녕하세요.
아래처럼 코드를 짰는데 반복문 사이나 아래에 $total_cnt값을 출력하면 잘나오는데
반복문 시작되기 이전인 곳에 값을 출력하고 싶어서 여러시도를 해봤지만 안되네요..
혹시 방법이 있을까요..?
아래는 코드중 일부를 간략하게 넣어놨습니다 ㅠㅠ

코드는 sql로 불러온 쿼리 개수를 전부 합산해서 출력하려고 만든 코드입니다..!

 


<div>
    <h2><?php echo $total_cnt; ?></h2> //출력안됨
</div>
<?php
for문...
$cnt = sql_fetch("SELECT COUNT(*) cnt FROM TABLE");
$total_cnt += $cnt['cnt'] // 총 결과 개수 저장
echo $total_cnt //출력됨
?>

<?php
echo $total_cnt //출력됨
?>

이 질문에 댓글 쓰기 :

답변 5

이런경우 JavaScript 로 해결하는 방법이 있습니다.


<div>
    <h2 id="total_cnt"></h2> //출력안됨
</div>
<?php
$total_cnt = 0;
// for문...
// $cnt = sql_fetch("SELECT COUNT(*) cnt FROM TABLE");
$cnt = ['cnt' => 3];
$total_cnt += $cnt['cnt']; // 총 결과 개수 저장
echo $total_cnt; //출력됨
?>
<script>
document.getElementById('total_cnt').innerHTML = <?php echo $total_cnt; ?>;
</script>

당연히 안되는게 맞습니다.

최상위에서 $total_cnt를 불러와서 사용하시고,

아래에서도 같은 루프를 한번 더 사용하셔야합니다.

즉 for문을 최상위에서도 1개
지금 기존에 있는 부분에서도 1개 각각 사용하셔야합니다.

순차적으로 읽고 실행해서

for 문 이전에 생성되지 않은 변수는 로드 할수 없습니다.

 

아직 문제가 출제가 안되었는데 답을 맞출수 없는것처럼요

 

주기적으로 사용되는 변수라면 common.lib.php 참조하셔서 스크립트로 구현해두시면

언제든지 원하는곳에 사용할 수 있습니다.

 

잘 이해를 한건진 모르겠습니다만..

for문에서 출력되는 필드값으로 카운트 조건을 걸려고 하시는건가요?

그런거라면


$sql_count = '';
// for 안에
$cnt = sql_fetch("select count(*) cnt from table where 필드");
$sql_count = 'where 조건';
// for end
 
$sql = "select count(*) cnt from table {$sql_count}";
$res = sql_fetch($sql);
echo $res['cnt']; // 총합

혹은 별다른 조건이 있는게 아니면 그냥 echo sql_num_rows(반복될 쿼리문 ex:$sql);

하시면 총 갯수 출력이 됩니다

 

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 2,710
© SIRSOFT
현재 페이지 제일 처음으로