我开始使用PHP与Oracle使用ODBC命令。我使用odbc_exec来查询数据库,这似乎有效。
我正在尝试将数据集打印到文本文件中。我可以写入文本文件,但出于某种原因,我只能从表中返回1条记录/行。
特别是一个查询返回超过100条记录。我希望能够在文本文件中打印所有100条记录。
我已经在网上进行过研究,我已经接近完成这项工作了。实际上,我可以将所有记录打印到网页上。我无法将所有记录都记录到文本文件中。
请参阅下面的代码并告知我缺少的内容。
<?php
$voyage = $_POST['voyage'];
$query = "SELECT * FROM voyageTable WHERE voyage = '".$voyage."'";
$result = odbc_exec($connect, $query);
while($row = odbc_fetch_array($result)) // have tried odbc_fetch_row already
{
$fullName = odbc_result($result, 1);
}
$dateFile = "CMDU-".$voyage."-".date('dmY').".txt";
$dataString = $fullName . "\n";
$fWrite = fopen($dateFile, "a");
$wrote = fwrite($fWrite, $dataString);
fclose($fWrite);
?>
我知道我接近这个。
我已经多次改变了while循环。我也尝试过这样做:
<?php
while(odbc_fetch_array($result))
// ...
?>
请帮忙。 那也不成功。
答案 0 :(得分:0)
而不是
$fullName = odbc_result($result, 1);
你需要像这样回应:
echo odbc_result($result, 1);
或者将结果存储在如下数组中:
$fullName[] = odbc_result($result, 1);
将$ fullname中每行的值存储为变量将覆盖该值,并为您提供结果集中最后一行的最后一个值。
扩大ಠ_ಠ的评论。