我能够在本地服务器上以excel格式下载文件,但是当我在实时服务器上使用相同的代码时,它将带我到另一个文件,并在浏览器中显示输出,但未导出。
我已经尝试了header(“ Content-Type:”)的多个值,例如application / xls,text / xls,application / csv等,但均无用。
我还将实时服务器上php上的版本从5.6更改为7,但没有更改。
下面是我的文件 export.php ,单击导出按钮时将调用该文件**
<?php
include ('../dbcon.php');
$filename = "excelfilename.xls";
header("Content-Type: application/xls");
header("Content-Disposition: attachment; filename=$filename");
header("Pragma: no-cache");
header("Expires: 0");
$sql = "Select * from contact";
$result = mysqli_query($con,$sql) or die("Couldn't execute query:<br>" . mysqli_error($con). "<br>" . mysqli_errno($con));
$sep = "\t";
$fieldinfo=mysqli_fetch_fields($result);
foreach ($fieldinfo as $val)
{
echo $val->name."\t";
}
print("\n");
while($row = mysqli_fetch_row($result))
{
$schema_insert = "";
for($j=0; $j<mysqli_num_fields($result);$j++)
{
if(!isset($row[$j]))
$schema_insert .= "NULL".$sep;
elseif ($row[$j] != "")
$schema_insert .= "$row[$j]".$sep;
else
$schema_insert .= "".$sep;
}
$schema_insert = str_replace($sep."$", "", $schema_insert);
$schema_insert = preg_replace("/\r\n|\n\r|\n|\r/", " ", $schema_insert);
$schema_insert .= "\t";
print(trim($schema_insert));
print "\n";
}
?>
有人请帮忙,因为我已经尝试了很多事情并进行了很多研究,但是我没有得到可以解决我的查询的答案。