for문 관련 질문입니다.
본문
아래 그림과 같이 순위 란에 for문을 사용해서 최대 15개까지의 정보만 표시게되도록 하고싶습니다.
정렬기준은 승점을 기준으로 정렬이 될 예정이고, 팀 순위가 변동되어도 순위의 1~15순서는 항상 고정되도록 하고싶습니다.. php초보라 머리속에서 상상은되는데 입력이 안되네요. 처리단에서 작업해야하는지, 뿌려주는부분에서 작업해야하는지 잘 모르겠습니다.
for문은 어떤식으로 작성하면 좋을지 힌트좀 부탁드리겠습니다.
답변 4
<?php
$sql = "SELECT * FROM g5_record order by r_winP desc limit 15";
$result = $db->query($sql);
$i = 1;
while ($row = $result->fetch_assoc()) {
//말씀해주신부분// 이곳에 for문을 작성하면 될까요?
?>
<tr style="height:40px;">
<td><?php echo $i ?>위</td>
<td><?php echo $row['r_team'] ?></td>
<td><?php echo $row['r_match'] ?></td>
<td><?php echo $row['r_winP'] ?></td>
<td><?php echo $row['r_win'] ?></td>
<td><?php echo $row['r_draw'] ?></td>
<td><?php echo $row['r_defeat'] ?></td>
<td><?php echo $row['r_getP'] ?></td>
<td><?php echo $row['r_lossP'] ?></td>
<td><?php echo $row['r_diff'] ?></td>
</tr>
<?php
$i ++;
}
?>
이렇게하시면 됩니다
!-->처리부에서 정렬기준으로 db에서 쿼리를 통해 15개 가져와서 ,
출력부분에서 fetch 해서 사용해도 되고,
처리부에서 배열로 만들어서 출력부분에서 반복문으로 출력만 해도 될것같습니다
만약 포인트 높은순으로 회원정보 가져온다 치면
$sql = "select * from g5_member order by mb_point desc limit 15;";
$result = sql_query($sql);
while ($row = sql_fetch($result)) {
//여기서 출력 or 여기서 배열에 저장하고 따로 출력
}
정렬기준은 승점을 기준으로 정렬이 될 예정이고,
팀 순위가 변동되어도 순위의 1~15순서는 항상 고정되도록 하고싶습니다.
===
어떤 상황인지 잘 이해가 안 가네요.
위 댓글에 소스를 보니 이미 구현하신거 같은데요?
<tr>부분만 while문 밖으로 빼면 될거 같네요
답변을 작성하시기 전에 로그인 해주세요.