for문과 쿼리문에 대해서 다시한번 질문드리겟습니다
본문
제가 휴가게시판을 만들고싶어서? 소스를 이렇게 짰는데용
<?
$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>";
$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> ".$row2['wr_3']."</font>";
}
echo "</td></tr>";
}
?>
이렇게 소스를 짜서
이런 화면을 구현을 해냈는데요 등록을 하게되면 소스를 보시는것처럼
이름 밑을 쭉 있고 옆으로는 등록한 날짜 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 값이 찍힙니다ㅠ
그래서 제가 쿼리문을 이용해 보려고
<?
$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>";
$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> ".$row2['wr_3'].$row2['wrsum']."</font>";
}
echo "</td></tr>";
}
?>
로 바꿔줬는데
이렇게 wr_1, wr_3 값이 1개만 나오는데 위에처럼 나열되고
저 합계를 이름 옆에다가 둘수있는 방법이 없을까요?
!-->!-->답변 2
<? $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> ".$row2['wr_3']."</font>"; } echo "</td></tr>"; } ?>
이렇게요?
$result 값들을 row 형태에서 돌리지 마시고
다른 3차 배열 형태로 저장해두셨다가 for문을 이용해서 사용하시면 됩니다.
답변을 작성하시기 전에 로그인 해주세요.