【发布时间】:2015-01-01 07:40:01
【问题描述】:
如何显示当月的所有日期和每天的总收入。我觉得我的monthlyreport.php 错得很厉害。我不知道该怎么做。请帮我解决问题。这对我很重要。谢谢您的帮助。
我的输出是这样的:
Month November
No Date Total earning
1 1/11/2014 100
2 2/11/2014 200
3 3/11/2014 400
我的数据库是这样的:
//tblvisit
Id VisitDate PatientId PatientName DoctorName Symptom Test Diagnosis TotalPrice
1 2014-11-05 123 John mr wong flu checking panadol 31
我的monthlyreport.php:
<tr>
<td>No</td>
<td>Date</td>
<td>Total Earned</td>
</tr>
<?php
for($i=0;$i<mysql_num_rows($SearchResult); $i++)
{
$visitRec = mysql_fetch_array($SearchResult);
echo "<tr> ";
echo "<td>".($i+1)."</td>";
echo "<td>".$visitRec['VisitDate']."</td>";
$total = 0;
$id = $visitRec['Id'];
$date = $_POST['txtSMonth'];
$data = mysql_query("SELECT * FROM tblvisit WHERE VisitDate ='$date'") or die(mysql_error());
while($row= mysql_fetch_array( $data ))
{
$total += $row['TotalPrice'];
}
echo "<td>".$total."</td>";
echo "</tr>";
}?>
【问题讨论】:
-
您在 sql 上尝试过的内容也会发布。不要使用mysql_函数代替这个使用PDO php.net/pdo并且不要使用$_POST全局数组直接在这里读取example1 in1.php.net/manual/en/function.filter-input.php
-
@gvgvgvijayan 对于熟悉它的人来说,说“使用 PDO”很容易。但是 IMO mysqli 对于使用 mysql 的人来说是一个更好的过渡。
-
@EternalHour 一开始没有人熟悉。持续学习只会让我们变得更好。让我说一下为什么我坚持 PDO 而不是 mysqli 1。迁移很容易,因为所有 12 个驱动程序的相同功能只是连接值不同。 2. API 是完整的 oop,因此在团队项目中,无论其他人编写程序还是 oop,都不会混淆 3. 客户端(php)端的准备好的语句是可能的,不支持的 db 也可以模拟它。另外我没有强迫他必须使用 PDO。我只是通过查看他的代码来提出建议。并随时欢迎对我的评论和帖子提出建议。谢谢朋友!!!
-
4.Mysqli 不支持命名参数。
-
我明白你的观点,但我要说的是从 mysql 到 mysqli 的学习曲线要少得多。有人可以从 mysql 迁移到 mysqli API 并转换为 OOP,一旦熟悉,然后转换到 PDO 就不会那么痛苦了。