我不会放弃确定怎么说这个。我有一个数据库,存储与客户发票有关的数据。在数据库中是客户“日期”(程序数据)他们的“Due_Date”(他们的付款到期日期)和“Aging”(这是他们所需的天数)
我要做的就是把他们的“Due_Date”减去当前日期,然后改变他们的老化值。我希望在按下“刷新”按钮时完成此操作,因为我正在使用php将数据库添加到表中。
Home.php
<button class="btn btn-primary" id="RefreshBtn">Refresh</button>
</div>
</div>
<div class="row">
<div class="col-md-12">
<table class="table table-bordered table-striped table-responsive sortable" id="MyTable">
<tr class="header">
<td>id</td>
<td>Rep</td>
<td>Date</td>
<td>Name</td>
<td>P_O</td>
<td>Due Date</td>
<td>Terms</td>
<td>Aging</td>
<td>Open Balance</td>
<td>remove</td>
</tr>
<?php
while($row = mysql_fetch_array($query)) {
$className ="";
if ($row['Aging'] >= 45)
{
$className="danger";
}
else if($row['Aging'] >= 25 && $row['Aging'] <= 44)
{
$className="warning";
}
echo "<tr class='$className'>";
echo "<td>".$row['id']."</td>";
echo "<td>".$row['Rep']."</td>";
echo "<td>".$row['Date']."</td>";
echo "<td>".$row['Name']."</td>";
echo "<td>".$row['P_O']."</td>";
echo "<td>".$row['Due_Date']."</td>";
echo "<td>".$row['Terms']."</td>";
echo "<td>".$row['Aging']."</td>";
echo "<td>".$row['Open_Balance']."</td>";
echo "<td><a href='deletepage.php?id=" .$row['id']. "' value='" .$row['id']. "' class='btn btn-success'> Paid</a></td>";
}
?>
</table>
我将如何完成此操作?我被困住了,我甚至没有开始。
答案 0 :(得分:1)
当这是一个甚至不需要存储的计算字段时,我不会经历所有这些麻烦。
为什么不从数据库中完全删除Aging字段,并通过查询计算其值(注意DATEDIFF):
$query = mysql_query("SELECT id, rep, Date, Name, P_O, Due_Date, " .
"Terms, GREATEST(DATEDIFF(NOW(), Due_Date), 0) AS Aging, " .
"Open_Balance from Book1");
这样,每当刷新页面时,SQL都会实时进行计算,为您提供Aging值而无需更新。
如果您需要Aging字段以在数据库中进行更多处理,请考虑使用此Aging表达式创建数据库视图。
答案 1 :(得分:0)