2013-12-20 9 views
0

我想創建一個php腳本,它從MySQL數據庫獲取值,顯示帶有來自數組的time_stamp的標題,以及名爲「working_ra」的子標題「與這些類別下的價值。兩個類別下面的值都顯示在表格中。我正在排序查詢中working_ra的值,以便我可以運行一個while循環,說如果他們不一樣顯示下一個working_ra並繼續回顯值。這是我的代碼:一切都沒有順序:Php - MySQL

foreach ($date as $i) { 
    echo "<pre>"."<h2>".$i."</h2>"."</pre>"; 
    $result = mysqli_query ($con, "SELECT * FROM Signing WHERE value1 = 'Ings' AND time_stamp = '$i' ORDER BY working_ra"); 

    $num_results = mysqli_num_rows($result); 

    $row = mysqli_fetch_array($result); 

    $desk = $row["working_ra"]; 

    echo "var_desk starting value ","<b>", $desk,"</b>"; 

    echo "<table border='1'>"; 
    echo "<tr>"; 
    echo "<td>", $row["first"],"</td>"; 
    echo "</tr>"; 

    while ($row = mysqli_fetch_array($result)) { 

     if ((string)$desk != (string)$row["working_ra"]) { 
      echo "</table>"; 

      $desk = $row["working_ra"]; 

      echo "var_desk next value ","<b>",$desk,"</b>"; 
      echo "<br />"; 
      echo "<table border='1'>"; 
     } 

     echo "<tr>"; 
     echo "<td>", $row["first"],"</td>"; 
     echo "</tr>"; 
    } 

    $result->free(); 
} 

$con->close(); 

一切正常,直到它命中第二個「桌面」名稱。然後應該與下一個值的表被轉移到下一個日期。下面是它看起來像在頁面上:

php script output

aSFashagh,傑里米,傑里米和約翰尼都應該是下(腓,2013年1月10),但向下移動到下一個日期和working_ra (菲爾,2013年1月20日)。 zffaA和sdfdsggsdhj都應該在(Phil,2013年1月20日)之下,但是(Phil,2013年2月25日)而不是。奇怪的是,該方法沒有工作沒有試圖把所有的值放在表中。

我的假設是,它可能是表標籤結束和開始的順序,但我已經嘗試了大量的東西,仍然無法弄清楚什麼是錯的。

編輯

對不起它非常混亂地說。但即時通訊試圖讓它到達一切都按照它應有的方式向上移動的地方。其中「first」的值與其對應的time_stamp和working_ra一起。例如,MySQL數據庫中Johnny的值有working_ra - Phil值和time_stamp值 - 2013年1月10日。但是,正如您所看到的,Johnny不在2013年1月20日的Phil(2013年1月10日)它不是查詢這個問題,它與while循環和表有關,我只是無法弄清楚。

只有兩個值是正確的扎克和爲什麼它具有(working_ra =「鮑勃」,TIME_STAMP =「2013年1月10日」)

+4

你無法正常工作。整個瘋狂的系統壞了。你想要真相嗎?你想要真相嗎?你不能處理事實! – Kermit

+0

我們將循環查詢日期... – bfavaretto

+0

@bfavaretto我應該能夠按日期循環查詢,然後爲每個與該日期對應的行打印出值? – Zack

回答

0

找出問題所在。當while循環中斷時,我需要添加一個「/ table」標籤。

0

的對應值,我相信你的問題是與MySQL行指針。您已經在while循環之前使用過一次mysqli_fetch_array,因此將當前的mysql行移動到下一行。

此代碼 mysqli_data_seek($result, 0); 將重置指針。

將它放在while循環之前。

+0

我認爲這可能工作,但它仍然保持相同的值下移一個:/ – Zack