gpt4 book ai didi

PHP 未将 MySQL 写入 CSV

转载 作者:行者123 更新时间:2023-11-29 10:24:43 25 4
gpt4 key购买 nike

我试图通过单击按钮将网页上显示的 mysql 数据库导出到 csv,但它没有按预期运行。我试图在单击“导出”按钮时执行以下操作,但是当您单击“导出 CSV”按钮时,它会转到“url/export.php”页面并给出“错误页面不存在网页”

导出按钮定义:

     <div class="topnav">
<form method="post" action="export.php">
<input type="submit" name="export" value="CSV Export" class="btn btn-i"
<a class="active" href="#export">Export to CSV</a>
</form>
<div class="search-container">
<form action="/action_page.php">
<input type="text" placeholder="Search.." name="search">
<button type="submit"><i class="fa fa-search"></i></button>
</form>
</div>
</div>

export.php代码:

    <?php
//export.php
if(isset($_POST["export"])) {
$connect = mysqli_connect("localhost", "root", "password", "dbName");
header('Content-Type: text/csv; charset=utf-8');
header('Content-Disposition: attachment; filename=data.csv');
$output = fopen("php://output", "w");
fputcsv($output, array('Username', 'Password', 'PhysicianID'));
$query = "SELECT * FROM Users";
$result = mysql_query($connect, $query);
while($row = mysqli_fetch_assoc($result)) {
fputcsv($output, $row);
}
fclose($output);
}
?>

最佳答案

您从根本上误解了服务器端和客户端代码如何交互。

PHP 脚本只会输出它遇到的所有内容,直到遇到 PHP 开始标记 ( <?php )。然后代码被解释为 PHP。处理完成,也许会产生更多输出。在关闭 PHP 标签 ( ?> ) 之后,内容会再次输出(受流量控制结构等影响)。

PHP 不知道 Javascript 是什么,反之亦然。

您的 PHP 脚本在请求页面时运行。它输出 HTML <script>标签和一些Javascript。在生成此 HTML 的同时,您的 <?php 中的所有代码delimiters 正在服务器上运行。不在点击事件上——当页面生成时。

如果您希望服务器端代码运行以响应客户端事件,则需要向服务器端脚本发出请求(通过 Javascript 或通过新页面获取)。该脚本就是数据库访问代码所在的位置。

例如,该按钮可能位于如下 HTML 页面上:

<form action="get-csv.php" method="POST">
<button class="active">Export to CSV</button>
</form>

这可以位于纯 HTML 页面上,也可以由另一个 PHP 脚本输出。

现在将代码从 get-csv.php 中的数据库导出数据.

关于PHP 未将 MySQL 写入 CSV,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48514471/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com