首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将MYSQL结果导出为CSV

将MYSQL结果导出为CSV
EN

Stack Overflow用户
提问于 2017-09-27 20:36:11
回答 1查看 189关注 0票数 0

我一直在建立一个数据库来计算解约费。

下面的代码(termination.php)接受从上一页的复选框中选择的多个行,处理查询,然后循环输出到一个简单的HTML表。这是按要求工作的。

代码语言:javascript
运行
复制
<?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循环把我搞糊涂了。

EN

回答 1

Stack Overflow用户

发布于 2017-09-29 00:22:17

尝试如下所示:

代码语言:javascript
运行
复制
<?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>"; 

}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46448056

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档