2010-11-18 109 views
0

我搜索並搜索到了無法找到任何具有類似問題的人。無法將值從數組中移入數組while while循環

我有一個do ... while循環用代碼將每個記錄的值推送到四個不同的數組中。除了數組是空的(給出Warning:除以零)之外,一切似乎都很好。

我能夠回顯每個記錄的四個值以及循環內每個訂單日期的unix時間戳,所以這些值對於每條記錄都是正確的,但數組是空的。我嘗試在循環中註釋圍繞數組[]代碼塊的條件語句,但沒有區別。

也嘗試array_push而不是隻看到;再次,沒有區別。

我是一個新手,對於我的生活看不出爲什麼數組沒有得到填充。

這是外循環代碼:

// set timezone and $one_year and $year_limit variables (used in the do-while loop) 
ini_set('date.timezone', 'America/Los_Angeles'); 
     $one_year = 60 * 60 * 24 * 365; 
     $year_limit = strtotime("-1 year"); 

// create the empty arrays for each rating 
$total_vals = array(); 
$food_vals = array(); 
$service_vals = array(); 
$atmo_vals = array(); 

// get the average for each rating 
$total_avg = round((array_sum($total_vals))/(count($total_vals))); 
$food_avg = round((array_sum($food_vals))/(count($food_vals))); 
$service_avg = round((array_sum($service_vals))/(count($service_vals))); 
$atmo_avg = round((array_sum($atmo_vals))/(count($atmo_vals))); 

這是循環:

<?php do { ?> 
    <?php 
    // create unix timestamp from order_date 
    $pub_date = strtotime($row_getReviews['order_date']); 

    // add rate values from each record to the arrays if less than 1 year old 
    if($pub_date - $one_year < $year_limit) { // tried commenting the condition out 
$total_vals[] = $row_getReviews['total_rate']; 
$food_vals[] = $row_getReviews['food_rate']; 
$service_vals[] = $row_getReviews['service_rate']; 
$atmo_vals[] = $row_getReviews['atmo_rate']; 
} 
    ?>  

<!-- html, css, etc here to display text and more --> 

<?php } while ($row_getReviews = mysql_fetch_assoc($getReviews)); ?> 

任何幫助,不勝感激!

回答

0

嘗試

Create empty arrays 

Loop 

Get averages 

的順序。確保循環發生在獲得平均值之前。

並使用除do ...以外的任何類型的循環,以便您在Mayhem所述的第一次迭代中獲得數據。 OK!

+0

OK!在循環工作之後(外部)移動平均代碼塊。放置在do ... while循環的while語句之後,並從數組中獲得平均值(按預期填充)。因爲我想在頁面頂部顯示平均值,所以我需要遍歷記錄兩次,首先是平均值,然後是單個記錄的詳細值(文本等)。我試圖只使用一個循環。但看起來我確實需要do ... while循環,至少要顯示個人記錄。謝謝! – tjkampa 2010-11-18 08:16:06

+0

當然泰德。對不起,我第一次在這裏問一個問題。一個告誡,雖然,... ... while循環一切都是正確的。我移動了頭頂的所有代碼:set arrays;做... while循環來獲取值;計算平均值;倒帶記錄集。一切都很好。 (而且這個梅姆姆說要把它搬走,我只是沒有理解。) – tjkampa 2010-11-18 19:58:51