我一直在建立一个数据库来计算终止费用。
以下代码(termination.php)从前一页的复选框中选择多行,处理查询,并在循环中输出到简单的HTML表。这是按要求工作的。
<?php
require_once '.\Includes\dbcon.php';
$rowCount = count($_POST["select"]);
for ($i = 0; $i < $rowCount; $i++)
{
$sql = "UPDATE `{$_POST['customer']}` SET `DateOfCancellation`='{$_POST['dateofcancellation']} WHERE ServiceID={$_POST['select'][$i]}'";
if ($con->query($sql) === TRUE)
{
echo "";
}
else
{
echo "Error: " . $sql . "<br />" . $con->error;
}
}
?>
<a href = ".\index.php">Back to Index</a></p>
<strong>Termination for <?php echo ucwords($_POST['customer']) ?> Based on Cancellation Date <?php echo $_POST['dateofcancellation'] ?></strong></p>
<table>
<tr>
<th>Service Name</th>
<th>License Start Date</th>
<th>License End Date</th>
<th>Cost Per Calendar Month</th>
<th>Balance on Termination</th>
<?php
$rowCount = count($_POST["select"]);
for ($i = 0; $i < $rowCount; $i++)
{
$sql = mysqli_query($con, "$select FROM `{$_POST['customer']}` WHERE ServiceID={$_POST['select'][$i]}");
$row[$i] = mysqli_fetch_array($sql); ?>
<tr>
<td><?php
echo $row[$i]['ServiceName']; ?></td>
<td><?php
echo $row[$i]['LicenseStart']; ?></td>
<td><?php
echo $row[$i]['LicenseEND']; ?></td>
<td>£<?php
echo $row[$i]['CostPCM']; ?></td>
<td>£<?php
echo $row[$i]['CostOfTermination']; ?></td>
<?php
}
$sql = "UPDATE `{$_POST['customer']}` SET `DateOfCancellation`='0000-00-00'";
if ($con->query($sql) === TRUE)
{
echo "";
}
else
{
echo "Error: " . $sql . "<br />" . $con->error;
}
$sum = 0;
for ($i = 0; $i < $rowCount; $i++)
{
$sum = $sum + $row[$i]['CostOfTermination'];
}
echo "<strong>The Total Balance of Termination is: </strong>£" . $sum;
echo "<p>";
$sum = 0;
for ($i = 0; $i < $rowCount; $i++)
{
$sum = $sum + $row[$i]['CostPCM'];
}
echo "<strong>Balance of Termination per Month: </strong>£" . $sum;
echo "<p>";
?>
</tr>
如何将表格中的数据导出到Excel文件(理想情况下)或CSV文件,我需要做什么。我尝试了一些不同的方法,可以得到标题,但不是实际的数据。我认为for循环是让我失望的原因。
答案 0 :(得分:0)
尝试这样的事情:
<?php
$titles = "Service Name,License Start Date,License End Date,Cost Per Calendar Month,Balance on Termination";
$rowCount = count($_POST["select"]);
echo $titles;
for ($i = 0; $i < $rowCount; $i++)
{
$sql = mysqli_query($con, "$select FROM `{$_POST['customer']}` WHERE ServiceID={$_POST['select'][$i]}");
$row[$i] = mysqli_fetch_array($sql);
echo
$row[$i]['ServiceName'] . "," .
$row[$i]['LicenseStart'] . "," .
$row[$i]['LicenseEND'] . "," .
$row[$i]['CostPCM'] . "," .
$row[$i]['CostOfTermination'] ."<br>";
}