테스트 사이트 - 개발 중인 베타 버전입니다

for문과 쿼리문에 대해서 다시한번 질문드리겟습니다 채택완료

aaab 7년 전 조회 2,551

제가 휴가게시판을 만들고싶어서? 소스를 이렇게 짰는데용

</p>

<p><?

$query = " SELECT * FROM g5_member WHERE mb_10='1' ";

$result = sql_query($query);

for($i=0; $row = sql_fetch_array($result); $i++) {

 echo "<tr class='tr'>";

 echo "<td class='td' align='center'>".$row['mb_name']."</td>";</p>

<p>

$query2 = " SELECT *  FROM g5_write_work WHERE wr_subject = '".$row['mb_name']."' ";

$result2 = sql_query($query2);

for($j=0; $row2 = sql_fetch_array($result2); $j++) {

 

 echo "<td>";

 echo "".$row2['wr_1'].":<font color=#0080ff>&nbsp".$row2['wr_3']."</font>";</p>

<p> }

 echo "</td></tr>";

}

?></p>

<p>

이렇게 소스를 짜서

이런 화면을 구현을 해냈는데요 등록을 하게되면 소스를 보시는것처럼

이름 밑을 쭉 있고 옆으로는 등록한 날짜 wr_1 과 wr_3 값이 찍힙니다

연차 = 1 (wr_5에 입력) , 반차 = 0.5(wr_6에 입력) , 외출 = 0.25(wr_7에 입력)이 되게끔하고

 

저거 다 더하면 1.75니까  예를드렁  1.75  / 10 이렇게 표현하고 싶은데

많은분들이 답글을 달아준것처럼

$row2[wr_5]+$row2[wr_6]+$row2[wr_7] 하면된다고했는데 그럼 각각 wr_5, wr_6 wr_7 값이 찍힙니다ㅠ

그래서 제가 쿼리문을 이용해 보려고

</p>

<p><?

$query = " SELECT * FROM g5_member WHERE mb_10='1' ";

$result = sql_query($query);

for($i=0; $row = sql_fetch_array($result); $i++) {

 echo "<tr class='tr'>";

 echo "<td class='td' align='center'>".$row['mb_name']."</td>";</p>

<p>

$query2 = " SELECT wr_1,wr_3, sum(wr_5+wr_6+wr_7) as wrsum FROM g5_write_work_table_181115 WHERE wr_subject = '".$row['mb_name']."' ";

$result2 = sql_query($query2);

for($j=0; $row2 = sql_fetch_array($result2); $j++) {

 

 echo "<td>";

 echo "".$row2['wr_1'].":<font color=#0080ff>&nbsp".$row2['wr_3'].$row2['wrsum']."</font>";</p>

<p> }

 echo "</td></tr>";

}

?></p>

<p>

로 바꿔줬는데

 이렇게 wr_1, wr_3 값이 1개만 나오는데 위에처럼 나열되고

 

저 합계를 이름 옆에다가 둘수있는 방법이 없을까요?

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

답변 2개

채택된 답변
+20 포인트
유찬아빠
<?
$query = " SELECT * FROM g5_member WHERE mb_10='1' ";
$result = sql_query($query);
for($i=0; $row = sql_fetch_array($result); $i++) {

$rs = sql_fetch(" SELECT sum(wr_5+wr_6+wr_7) as wrsum FROM g5_write_work_table_181115 WHERE wr_subject = '".$row['mb_name']."' ");

 echo "<tr class='tr'>";
 echo "<td class='td' align='center'>".$row['mb_name'].$rs[wrsum]."</td>";

$query2 = " SELECT wr_1,wr_3 FROM g5_write_work_table_181115 WHERE wr_subject = '".$row['mb_name']."' ";
$result2 = sql_query($query2);
for($j=0; $row2 = sql_fetch_array($result2); $j++) {
 
 echo "<td>";
 echo "".$row2['wr_1'].":<font color=#0080ff>&nbsp".$row2['wr_3']."</font>";
 }
 echo "</td></tr>";
}
?></pre>

<p>

 

이렇게요?

로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

a
aaab
7년 전
아!!!!!!!!!!!!!!!! 이런방법이!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
a
aaab
7년 전
요새 질문을 많이 올렸는데 유찬아빠님때문에 많이 배워가는거같아요 정말 감사합니다

제 질문에 댓글 달아주신분들도 모두 감사합니다 (--)(__)꾸벅

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

7년 전

$result 값들을 row 형태에서 돌리지 마시고

 

다른 3차 배열 형태로 저장해두셨다가 for문을 이용해서 사용하시면 됩니다.

 

 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

a
aaab
7년 전
감사합니다 ㅎㅎ

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

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

로그인