簡體   English   中英

PHP循環通過mysql語句

[英]Php loop through mysql statement

因此,我有一個頁面,該頁面是已填寫表格的確認頁面。 我已經檢查了我的sql語句,它工作正常。 我遇到的問題是使php循環輸出結果而不轉儲查詢的其余部分。

所以我的代碼是這樣的:

$mysql-statement......
$total_rows... etc.

  $i = $total_rows;
    if($i > 1) { 
    echo "i = ". $i. "<br />";

    for($x=1; $x< ($i+1); $x++){
    echo "This is from the for loop Office location is " .$row_rs_myquery['Office_Name'] ."<br />"; 
        mysql_fetch_assoc($rs_myquery);
    }
      }?>

現在,以上內容中的一些用於測試目的,而我想要其中的一些,主要是我只希望它輸出此人與之關聯的多個Office名稱。 基本上,我只是得到第一個辦公室名稱,並且沒有排序到與該人相關的下一個辦公室位置。 它只是重復相同的辦公地點,我可能會添加正確的次數。

我還嘗試了do while循環,由於某種原因,該循環中斷了頁面的其余部分。 我僅遍歷這部分,但是頁面的其余部分將顯示人員聯系信息,以及數據庫中與他們相關的任何其他信息。 只是出於理智起見,這就是我使用的do while語句。 我讓它在其他頁面上運行,並且此設置可以在該頁面上運行,所以不確定為什么它不能在該頁面上運行。

    do{
       echo "This is from the do while loop Office location is " .$row_rs_myquery['Office_Name'] ."<br />"; 
    }while($row_rs_myquery = mysql_fetch_assoc($rs_myquery));

我正在工作的當前人員在他們的名字下有3個辦公地點。 因此,它應輸出如下三行代碼:

    This is from the for loop Office location is St. Paul

    This is from the for loop Office location is New York

    This is from the for loop Office location is Los Angeles

但是我得到的是如果我運行for循環

    This is from the for loop Office location is St. Paul

    This is from the for loop Office location is St. Paul

    This is from the for loop Office location is St. Paul

但是我得到的是如果我運行do while循環

    This is from the for loop Office location is St. Paul

如果我將其放置在其余請求之前的任何位置,則會在我的確認頁面中留出空白區域。

為什么要這樣做的任何想法都會有所幫助。 提前致謝。

對於do {} while循環,僅在第一次迭代后才設置條件。 您只需要一個while循環,該循環會在變量運行之前對其進行設置。

while($row_rs_myquery = mysql_fetch_assoc($rs_myquery)){
    echo "This is from the do while loop Office location is " .$row_rs_myquery['Office_Name'] ."<br />";
}

如果要使用if循環(IMO,雖然while循環工作得更好,尤其是因為您沒有使用X),那么您想要在嘗試使用變量之前先獲取數組:

for($x=1; $x<=$total_rows; $x++){
    $row_rs_myquery = mysql_fetch_assoc($rs_myquery);
    echo "This is from the for loop Office location is " .$row_rs_myquery['Office_Name'] ."<br />"; 

}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM