我想知道是否可以將所有$行中的日期從while循環與今天的日期進行比較。讓我解釋。
我已經通過連接幾個表中創建這個表,居然有一個while循環while循環(這是我得到了多個遊戲展示但每次只有一個投注金額
我想要做的就是將每個單獨遊戲的日期與今天的日期進行比較,以列出parlay是否活動(在這張圖片中,他們都不會活躍,但那不是重點)。
I wan t取今天的日期,如果它小於遊戲的所有日期,那麼Active =='Future',或者如果今天的日期介於一組日期之間,那麼Active =='In Progress',如果今天日期已經過去了所有的日期,然後Active =='過去'。使這個具有挑戰性的部分是,我不知道有多少個別遊戲會出現,所以我想這樣的事情可能工作:
/* fetch row */
$firstrow = $result2->fetch_row();
$date1=date_create("$firstrow[0]");
$date2=date_create(date("Y-m-d"));
$diff=date_diff($date1,$date2);
但我不知道有多少行做出測試我的最後日期,或許還有一個
$row_count = $result->num_rows;
$datelast=date_create("$lastrow[$row-count-1]");
不知道如何再實施和使用這個,如果它是正確的邏輯!
那麼有誰知道我可以如何比較每個日期行到今天的當前日期?
這是我最初的選擇查詢: 我省略了從我的形象的一些信息,要儘量使問題更容易的核心邏輯,這就是爲什麼有一些額外的字段這裏
//Create parlay select query
$query = "SELECT
u.first_name AS 'User First Name',
u.last_name AS 'User Last Name',
b.betting_site_name AS 'Betting Site',
p.id AS 'Parlay ID',
p.wager AS 'Wager',
p.odds AS 'Odds',
p.success AS 'Success',
DATE_FORMAT(p.creationdate, '%d-%m-%Y') AS 'Date',
pg.parlayid AS 'PG Parlay ID',
SUM(p.wager * p.odds) AS Winnings
FROM parlays p
JOIN parlaygames pg ON pg.parlayid = p.id
JOIN bonuses b ON p.bettingsiteid = b.id
JOIN users u ON p.userid = u.id
WHERE userid=$id
GROUP BY p.id
ORDER BY p.id DESC
LIMIT 5";
$result = $mysqli->query($query) or die($mysqli->error.__LINE__);
這是我的表創建代碼(和第二while循環得到個別遊戲):
<h2>Betting History</h2>
<table class="table table-striped userwinnings">
<tr>
<th>Parlay Information</th>
<th>Wager</th>
<th>Active</th>
</tr>
<?php
while($row = $result->fetch_assoc()) {
$output = '<tr>';
$output .= '<td><table><tr><th>Date</th><th>Game</th><th>Bet Info</th></tr>';
$parlayid = $row['Parlay ID'];
$query3 = "SELECT
pg.parlayid AS ParlayID,
g.date AS GameDate,
ht.name AS HomeTeam,
away.name AS AwayTeam,
pg.betinfo AS BetInfo
FROM parlaygames pg
JOIN parlays p ON pg.parlayid = p.id
JOIN games g ON pg.gameid = g.id
JOIN teams ht ON g.home_team = ht.id
JOIN teams away ON g.away_team = away.id
JOIN users u ON u.id = p.userid
WHERE p.id = $parlayid";
$result3 = $mysqli->query($query3) or die($mysqli->error.__LINE__);
while($row3 = $result3->fetch_assoc()) {
$gamescount = $result3->num_rows;
$output .= '<tr>';
$output .= '<td>'.$row3['GameDate'].'</td>';
$output .= '<td>'.$row3['HomeTeam'].' vs '.$row3['AwayTeam'].'</td>';
$output .= '<td>'.$row3['BetInfo'].'</td>';
$output .= '</tr>';
}
$output .= '</table>';
$output .= '</td>';
$output .= '<td>'.$row['Wager'].'</td>';
$output .= '<td>'.$row['Active'].'</td>';
$output .= '</tr>';
echo $output;
}
?>
</table>
什麼是遊戲開始日期和結束日期意味着字段名稱以及可以輕鬆創建示例查詢的字段名稱。 –
我沒有特定的開始日期和結束日期字段名稱....它來自我的代碼,其中有一個while循環在我的其他while循環內的部分。我不確定在parlay中會有多少場比賽,那麼我該如何創建這些場?有沒有辦法? –
好的。你需要把條件放在「g.date AS GameDate」上。或任何其他? –