我有以下代碼來輸入職位等。我有兩個問題:
- 位置編號顯示為 1, 2, 2, 2, 2 而不是 1, 2, 3, 4, 5
- 即使天數為 1,它也會是“天”。我正在上傳螢屏截圖。
非常感謝您的意見。 https://postimg.cc/mhQHqqyk
if (isset($_GET['boardcount']) && is_numeric($_GET['boardcount']) && $_GET['boardcount'] > 0) {
$boardcount = $_GET['boardcount'];
} else {
$boardcount = 20;
}
$getleaderboard = lfmsql_query("SELECT a.days AS days, b.firstname AS firstname, b.lastname AS lastname, b.email AS email FROM `".$prefix."surftarget_logs` a LEFT JOIN `".$prefix."members` b ON (a.userid=b.Id) WHERE a.date='".$todaydate."' OR a.date='".$yesterdate."' ORDER BY a.days DESC") or die(lfmsql_error());
$position = 1;
$lastdays = 0;
$boardoutput = '';
while ($position <= $boardcount && $leaderlist = lfmsql_fetch_assoc($getleaderboard)) {
$gravatarimg = "https://www.gravatar.com/avatar/".md5($leaderlist['email'])."?d=mm";
if (isset($_GET['usetable']) && $_GET['usetable'] > 0) {
$boardoutput .= '<tr><td style="background-color:#15aa00; padding: 15px; width:360px; color:#fff; border:solid; border-width: 1px 0; border-color:#fff;">
<h5>#'.$position.' <img style="max-height:50px; max-width:50px;" src="'.$gravatarimg.'"> '.$leaderlist['firstname'].' '.$leaderlist['lastname'].'</h5>
<span>'.$leaderlist['days'].' days</span>
</td></tr>';
} else {
$boardoutput .= '<li style="background-color:#15aa00; color:#fff;">
<div >
<h5 >#'.$position.' <img style="max-height:50px; max-width:50px;" src="'.$gravatarimg.'"> '.$leaderlist['firstname'].' '.$leaderlist['lastname'].'</h5>
<p>'.$leaderlist['days'].' days</p>
</div>
</li>';
}
if ($leaderlist['days'] > $lastdays) {
$position = $position 1;
$lastdays = $leaderlist['days'];
}
}
uj5u.com熱心網友回復:
這似乎是您代碼中的邏輯錯誤。根據螢屏截圖,它似乎不會第二次進入 if 塊。如果您真的想增加它們,則必須將 >= 保持在 if 條件下。
修改此代碼:-
if ($leaderlist['days'] > $lastdays) {
$position = $position 1;
$lastdays = $leaderlist['days'];
}
到:-
if ($leaderlist['days'] >= $lastdays) {
$position = $position 1;
$lastdays = $leaderlist['days'];
}
Note:- >= symbol.
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/368473.html
標籤:php
