我正在尝试下载从数据库获取内容的csv文件,但我想从数据库中获取它的名称以及来自单个表(文件名)的单个字段(名称)。
这是我的代码:
// Connecting to Database
$mysqli = new mysqli('servername.ipagemysql.com', 'username', 'pass', 'reportconverter');
$filename = array_values(mysqli_fetch_array($mysqli->query("SELECT name FROM filename")))[0];
//Downloading the file
header('Content-type: application/csv');
header('Content-Disposition: attachment; filename='.$filename);
echo $output;
exit;
我收到以下错误:
内部服务器错误 服务器遇到内部错误或配置错误,无法完成您的请求。
服务器名称,用户名,密码和数据库名称都是准确的,因为它们正在处理其他页面。该代码也适用于本地主机。但是,如果我将服务器登录详细信息放在localhost文件中,我会收到此错误:
Warning: mysqli_connect(): (HY000/2002): No connection could be made because the target machine actively refused it.
有什么想法吗?或者我可以向我的托管服务寻求帮助吗?
答案 0 :(得分:1)
最后我解决了这个问题。导致问题的是[0],因为我的服务器上的php版本不支持该语句,所以我不得不改变它:
$filename = array_values(mysqli_fetch_array($mysqli->query("SELECT name FROM filename")));
$filename = $filename[0];