我正在尝试查询mysql数据库并在表中显示数据。我现在想要获取表并创建一个按钮,允许您将其导出到excel文件。现在您可以导出到excel,但是它显示error Notice: Undefined variable: data
以下是我的代码:
<?php
$mysql_hostname = "localhost";
$mysql_user = "root";
$mysql_password = "";
$mysql_database = "export";
$bd = mysql_connect($mysql_hostname, $mysql_user, $mysql_password) or die("Could not connect database");
mysql_select_db($mysql_database, $bd) or die("Could not select database");
$values =mysql_query( "SELECT name,email,phone,nationality,dob FROM users order by id");
$header = "Name" . "\t";
$header .= "Email" . "\t";
$header .= "Phone" . "\t";
$header .= "Nationality" . "\t";
$header .= "DOB" . "\t";
while( $row = mysql_fetch_assoc($values)){
$row1 = array();
$row1[] = $row['name'];
$row1[] = $row['email'];
$row1[] = $row['phone'];
$row1[] = $row['nationality'];
$row1[] = $row['dob'];
$data .= join("\t", $row1)."\n";
}
header("Content-type: application/x-msdownload");
header("Content-Disposition: attachment; filename=expot.xls");
header("Pragma: no-cache");
header("Expires: 0");
print "$header\n$data";
exit();
?>
答案 0 :(得分:3)
因为您从不初始化$data
变量。
把:
$data = '';
在代码的开头,在while循环之前。
答案 1 :(得分:2)
您的代码包含声明:
$data .= join("\t", $row1)."\n";
这是您将字符串连接到现有变量$data
的位置。但是,不存在这样的变量。您应该在代码顶部附近添加一些内容:
$data = "";
初始化$data
变量。