2016-12-13 72 views
-2

我有以下其中我試圖各組後,使單獨的HTML表格:獨立MYSQL結果轉換成單獨的HTML表

$query = "SELECT * FROM NonBillableTime WHERE TimeIn LIKE '$MondayP2%' ORDER BY CreatedUser ASC"; 
$members = mysql_query($query) or die($query."<br/><br/>".mysql_error()); 
while ($row = mysql_fetch_assoc($members)) { 

例 HTML表1將與CreatedUser號碼返回一切5 然後該表將結束和一個新表將啓動,並與CreatedUser 6號

我面臨兩個問題返回的一切: -

  1. 我不知道有多少用戶,因爲它發生了變化。
  2. 它需要,因爲我在飛行

是的,我想用MYSQL和我知道加入注射預防的做其他計算從while ($row = mysql_fetch_assoc($members)) {執行。

enter image description here

+0

因此,檢查while循環中的結果...如果CreatedUser = 5,則添加到表A中,否則,添加到表B中。 mysql_已被棄用。 –

+0

我不知道CreatedUsers的數字......它不是靜態的,因爲它發生了變化 –

+0

我想象一下,只要檢測到新的'CreatedUser'值,輸出循環就會關閉並打開HTML表格。如果新值與當前值不同,只需跟蹤「當前」值並檢查循環的每次迭代。 – David

回答

2

保持代碼相當通用在這裏,但想必你現在正在做這樣的事情:

// output a table header 
while ($row = mysql_fetch_assoc($members)) { 
    // output a table row 
} 
// output a table footer 

如果你想在這個循環週期開始一個新的表,你會需要添加一個條件來確定何時做到這一點。因此,結構會更喜歡這樣的:

$currentUser = 1; 
// output a table header 
while ($row = mysql_fetch_assoc($members)) { 
    // output a table row 
    if ($row["CurrentUser"] != $currentUser) { 
     // output a table footer 
     // output a table header 
     $currentUser = $row["CurrentUser"]; 
    } 
} 
// output a table footer 

這是很現成的,袖口,所以有可能是一個合乎邏輯的錯誤在這裏由該部分表在一定條件下或類似這種事情顯示,無可否認。但希望這個想法的主旨正在傳達。基本上,在循環內,您可以根據條件關閉並重新打開表格(將所擁有的數據中的任何信息放入這些頁眉/頁腳)。你只需要跟蹤在這種情況下使用的數據。在這種情況下,「當前」CurrentUser值的結果。

+0

謝謝大衛,我不得不玩弄它,但這是一個很好的開始。謝謝! –