특정 컬럼의 값 중 제일 큰 값을 중심으로 다른 컬럼들의 값 출력 채택완료
안녕하세요.
출력 할려는 값의 조건은
1. php mysql에 있는 로그인 된 id 값
2. 오늘부터 30일 전까지의 mb_point 컬럼의 값 중 5 보다 큰 숫자 중 제일 큰 값으로 가장 최근의 값
3. 2번의 값을 중심으로 컬럼 product_a, product_b, used_minutes의 값을 가져와 html 테이블이 출력
4. 만약 a 컬럼의 값이 모두 5 이하일 경우 product_a는 '선택함', product_b는 '선택하지 않음', used_minutes는 '계속 사용함' 로 출력
이렇게 출력할려고 합니다.
그런데 잘 안되네요.
여러가지 방법을 해 보았는데...
이 방법이 제일 비슷하게 한 것 같은데 역시나 출력이 안되네요. ㅠㅠ
특히, 조건 4 번인 것은 어떻게 해야 하는지도 모르겠네요. ㅠㅠ
고수님들의 감사한 조언 부탁드립니다.
</strong></p>
<p><table class="hdrf-a02">
<tr>
<th class="hdrf-a01">a 조건</th>
<th class="hdrf-a01">b 조건</th>
<th class="hdrf-a01">지속성</th>
</tr>
<?php
$today = date('Y-m-d');
$ninetyDaysAgo = date('Y-m-d', strtotime('-90 days'));
$mb_id = $member['mb_id'];
$sql = "SELECT mb_date, product_a, product_b, used_minutes, mb_point
FROM g5_member_prodcut
WHERE mb_id = ? mb_point > 5 AND mb_point <= (SELECT MAX(mb_point) FROM g5_member_prodcut WHERE mb_date BETWEEN '$ninetyDaysAgo' AND '$today')";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
while ($row = $result->fetch_assoc()) {
echo "<tr>";
echo "<td class='hdrf-a02'>" . $row['product_a'] . "</td>";
echo "<td class='hdrf-a02'>" . $row['product_b'] . "</td>";
echo "<td class='hdrf-a02'>" . $row['used_minutes'] . "</td>";
echo "</tr>";
}
} </p>
<p> </p>
<p> else {</p>
<p> echo "<tr><td colspan='3'>No results found</td></tr>";</p>
<p> }</p>
<p> ?>
</table></p>
<p><strong>
답변 3개
1. php mysql에 있는 로그인 된 id 값
== 로그인한 회원 일까요
2. 오늘부터 30일 전까지의 mb_point 컬럼의 값 중 5 보다 큰 숫자 중 제일 큰 값으로 가장 최근의 값
== 어떤 테이블에 있는 mb_point 인가요
g5_member.mb_point에는 날짜 정보가 없습니다.
답변에 대한 댓글 2개
if( $row[] <=5)
Echo"product_a는 '선택함', product_b는 '선택하지 않음', used_minutes는 '계속 사용함' 로 출력";
Else {
echo "<tr>";
echo "<td class='hdrf-a02'>" . $row['product_a'] . "</td>";
echo "<td class='hdrf-a02'>" . $row['product_b'] . "</td>";
echo "<td class='hdrf-a02'>" . $row['used_minutes'] . "</td>";
echo "</tr>";
}
댓글을 작성하려면 로그인이 필요합니다.
조건을 하나씩 보시고 출력할때 배열을 다시 정의해서 다시넣는 방법을 해보세요.
1~3번까지는 where 절과 order by 를 통해 정렬하고
순서대로 출력하면서
배열을 다시 만들어 조건에 담아 넣는 방식을 쓰면 해결될거 같아요
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
FROM g5_member_prodcut
WHERE mb_id = ?
And mb_point > 5
AND mb_date >= '$ninetyDaysAgo'
4.만약 a 컬럼의 값이 모두 5 이하일 경우 product_a는 '선택함', product_b는 '선택하지 않음', used_minutes는 '계속 사용함' 로 출력
=
a 컬럼이 무엇인가요?
5 이상이면 어떻게 하나요?