2013-10-15 138 views
0

我不知道如何執行此操作。從我在這裏找到的答案中,我認爲可能使用jquery/ajax。我需要得到我的變量$ i的值並在頂部回顯它,但它必須通過我的邏輯來獲得值。這裏是我的代碼:從底部獲取PHP變量頂部

echo "<div id='records'><h1 align='center'>Today's Transfers (" . $i . ") </h1> 
<table cellspacing='0' cellpadding='0'> 
<tr> 
<th>Customer Name</th><th>Phone Number</th><th>Disposition</th><th>User</th><th>Date Called</th> 
</tr> 
"; 

$i=0; 
$sql = "SELECT * FROM vicidial_closer_log WHERE DATE(call_date) = DATE(NOW()) ORDER BY call_date DESC"; 
$result = mysqli_query($link, $sql, MYSQLI_STORE_RESULT); 
    while($row = $result->fetch_assoc()){ 
     $i++; 
     $phone_number = $row['phone_number']; 
     $lead_id = $row['lead_id']; 
     $disposition = $row['status']; 
     ...then echo those variable in my columns and rows... 
    } 
echo "</table> </div>"; 
echo $i; 

也許有另一種方式來寫我的代碼邏輯來之前我的一切輸出?不知道如何做到這一點,因爲我正在使用MySQL查詢。

+2

這就是爲什麼我們的代碼輸出分開,你可以運行所有的代碼,然後處理其輸出\演示 – 2013-10-15 19:16:23

+0

使用mysqli_num_rows獲得總記錄數和在查詢後移動回顯 – Ronnie

+0

'mysqli_num_rows($ result)'可以評估結果中有多少行。 –

回答

0

你應該得到的行從結果集數,顯示這些地方的i是,因爲它本質上是一回事。

$num_rows = mysql_num_rows($result); 

移動你的代碼回聲上述聲明:

$i=0; 
$sql = "SELECT * FROM vicidial_closer_log WHERE DATE(call_date) = DATE(NOW()) ORDER BY call_date DESC"; 

$result = mysqli_query($link, $sql, MYSQLI_STORE_RESULT); 

,並添加

$num_rows = mysql_num_rows($result); 
echo "<div id='records'><h1 align='center'>Today's Transfers (" . $num_rows . ") </h1> 


和以前一樣使用你的代碼的其餘部分..不妨考慮一下,如果除去i你不需要它別的東西。

0

如果$ i是返回結果的總數,你可以這樣做:

echo mysqli_num_rows($result) 

...和你的查詢頁面的頂部執行。

這將理想情況下全部在模型中,然後由控制器設置在視圖中。這樣你就可以將演示文稿和功能邏輯分開。

我建議你有一個關於MVC讀:

0

當然,你可以只移動echo你的邏輯之上。但最好做的是將邏輯與演示分開。你可以創建一個類來處理這個或者也許只是另一個文件,這取決於你的需求。

$i=0; 
$sql = "SELECT * FROM vicidial_closer_log WHERE DATE(call_date) = DATE(NOW()) ORDER BY call_date DESC"; 
$result = mysqli_query($link, $sql, MYSQLI_STORE_RESULT); 
    while($row = $result->fetch_assoc()){ 
     $i++; 
     $phone_number = $row['phone_number']; 
     $lead_id = $row['lead_id']; 
     $disposition = $row['status']; 


echo "<div id='records'><h1 align='center'>Today's Transfers (" . $i . ") </h1> 
<table cellspacing='0' cellpadding='0'> 
<tr> 
<th>Customer Name</th><th>Phone Number</th><th>Disposition</th><th>User</th><th>Date Called</th> 
</tr>"; 
0

做你的計算第一個,然後顯示你的數據。

已過砍得血肉模糊的示例代碼:

$count = 0; 
$output = ''; 
$res = mysqli_query("SELECT * FROM..."); 

while($row = mysql_fetch($res)) { 
    $output .= "<tr><td>..." . $row['somevar'] . "</td></tr>"; 
    $count++; 
} 

echo "<h1>Yadda yadda $count</h1>"; 
echo "<table>"; 
echo $output 
echo "</table>";