mysql 中的记录未出现在文本文件中

Records are not coming in textfile from mysql

在这里,我想从 mysql 中获取记录到我正在写入文本文件的文本文件中。
位文本文件创建为空白。
问题出在哪里?

我的代码:

$myFile = 'abctest.txt';
//echo $myFile;exit;
$fo = fopen('com_order/order_textfile/'.$myFile, 'w+') or die("can't open file");

$data_query=mysql_query("SELECT order_id from tbl_order") or die(mysql_error());

while($data=mysql_fetch_array($data_query))
{
    $stringData = fwrite($fo, "Order: ".$data['order_id']."\n");
}
fwrite($fo, $stringData);
fclose($fo);

header('Content-type: text/plain');
header('Content-disposition: attachment; filename='.$myFile);

readfile() 调用丢失:

readfile($myFile);

所以它应该是这样的:

header('Content-type: text/plain');
header('Content-disposition: attachment; filename='.$myFile);
readfile($myFile);

这里的 readfile() 是实际执行所有艰苦工作(读取文件、写入输出)的函数。

有关该主题的更多信息:

readfile()

Force download

更新

你还有一个文件路径问题

请注意,您在 com_order/order_textfile/'.$myFile 中创建文件,但随后使用不带路径的 $myFile。引用文件时,您应该改用路径:

$myFile = 'abctest.txt';
$filePath = 'com_order/order_textfile/'.$myFile;
$fo = fopen($filePath, 'w+') or die("can't open file");

$data_query=mysql_query("SELECT order_id from tbl_order") or die(mysql_error());

while($data=mysql_fetch_array($data_query))
{
    $stringData = fwrite($fo, "Order: ".$data['order_id']."\n");
}
fwrite($fo, $stringData);
fclose($fo);

header('Content-type: text/plain');
header('Content-disposition: attachment; filename='.$filePath);
readfile($filePath);

您执行查询的方式似乎有问题,但请尝试使用下面的代码。

$link = mysqli_connect("localhost", "username", "password", "database name") or die("error unable to connect to database". mysqli_error($link)); 

$myFile = 'abctest.txt';
//echo $myFile;exit;
$fo = fopen('com_order/order_textfile/'.$myFile, 'w+') or die("can't open file");

$data_query=$link->query("SELECT order_id from tbl_order") or die(mysql_error());

while($data=mysqli_fetch_array($data_query))
{
    $stringData = fwrite($fo, "Order: ".$data['order_id']."\n");
    //echo("$stringData");
}
fwrite($fo, $stringData);
fclose($fo);

header('Content-type: text/plain');
header('Content-disposition: attachment; filename='.$myFile);