제가 휴가게시판을 만들고싶어서? 소스를 이렇게 짰는데용
Copy
<?
$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 값이 찍힙니다ㅠ
그래서 제가 쿼리문을 이용해 보려고
Copy
<?
$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개 / 댓글 3개
채택된 답변
+20 포인트
2018-11-16 (금) 11:48:42
Copy
<?
$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>";
}
?>
이렇게요?
답변에 대한 댓글 2개
2018-11-16 (금) 11:56:06
아!!!!!!!!!!!!!!!! 이런방법이!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
2018-11-16 (금) 11:57:03
요새 질문을 많이 올렸는데 유찬아빠님때문에 많이 배워가는거같아요 정말 감사합니다
제 질문에 댓글 달아주신분들도 모두 감사합니다 (--)(__)꾸벅
제 질문에 댓글 달아주신분들도 모두 감사합니다 (--)(__)꾸벅
2018-11-16 (금) 11:49:31
$result 값들을 row 형태에서 돌리지 마시고
다른 3차 배열 형태로 저장해두셨다가 for문을 이용해서 사용하시면 됩니다.
답변에 대한 댓글 1개
답변을 작성하려면 로그인이 필요합니다.