我不知道该怎么做。从我在这里找到的答案,我认为可能使用jquery / ajax。我需要得到我的变量$ i的值并在顶部回显它,但它必须通过我的逻辑来获得值。这是我的代码:
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查询,所以不知道怎么做。
答案 0 :(得分:0)
如果$ i是返回结果的总数,您可以这样做:
echo mysqli_num_rows($result)
...并在页面顶部执行查询。
理想情况下,这将完全在模型中并由控制器在视图中设置。这样你就可以将表现与功能逻辑分开了。
我建议您阅读有关MVC的内容:
答案 1 :(得分: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>";
答案 2 :(得分:0)
您应该从结果集中获取行数并显示i
所在的行数,因为它基本上是相同的。
$num_rows = mysql_num_rows($result);
将代码移到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);
并添加
$num_rows = mysql_num_rows($result);
echo "<div id='records'><h1 align='center'>Today's Transfers (" . $num_rows . ") </h1>
并像以前一样使用其余代码。如果您不需要其他内容,可以考虑删除i
。
答案 3 :(得分: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>";