【发布时间】:2019-10-22 10:12:22
【问题描述】:
我正在尝试获取我的数据库文件,该文件格式为 csv(excel 文件),但它甚至没有将数据发送到浏览器。
我还没有尝试过,因为我害怕我会做得比现在更糟......
我的 PHP 代码(我已经连接到数据库,但我不想公开显示我的信息):
<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
// Create connection
$db = new mysqli($dbhost, $dbusername, $dbpassword, $dbname);
$allData = "";
$query = 'SELECT * FROM members';
$retval = mysqli_query( $db,$query );
if(! $retval ) {
die('Could not get data.');
}
while($row = mysqli_fetch_array($retval)) {
$allData .= $row['Id'] . ',' . $row['Email'] . ',' . $row['Condition'] . ',' . $row['isEmailConfirmed'] . ',' . $row['Name'] . ',' . $row['LastName'] . ',' . $row['Token'] . ',' .$row['Type'] . ',' . $row['extra_privileges'] . ',' . $row['access-to-ftp'] . ',' .$row['access- to-panel'] . ',' . $row['Birthdate'] . ',' . $row['Password'] . ',' . $row['Description'] . "\n";
//$retval = "data:text/csv;charset=utf- 8,ID,EMAIL,CONDITION,ISEMAILCONFIRMED,NAME,LASTNAME,TOKEN,TYPE,EXTRA_PRIVIL EGES,ACCESS-TO-FTP,ACCESS-TO-PANEL,BIRTHDATE,PASSWORD,DESCRIPTION\n";
$retval .= $allData;
echo $retval;
}
?>
它只是告诉我无法获取数据,我将其作为一个死解决方案。
【问题讨论】:
-
Die 不是调试的好方法。启用异常模式和 php 错误报告。 How to enable MySQLi exception mode?
-
我会试试.....
-
@Dharman 注意:未定义变量:第 15 行 /var/www/vhosts/photoshare.ga/database.photoshare.ga/backup/confirmed/index.php 中的 db 警告:mysqli_query() 需要参数 1 为 mysqli,在第 15 行的 /var/www/vhosts/photoshare.ga/database.photoshare.ga/backup/confirmed/index.php 中给出 null 无法获取数据。
-
那是因为你已经用 MySQLi 连接命名你的变量
$conn,但是你尝试使用$db。这是一个错字。 -
Hmmmmmm 你能看看这个吗?