Excel にエクスポートしようとすると、スプレッドシートの最後の部分が表示されません。Web サイトでは 5003 レコードを取得できますが、Excel にエクスポートしようとすると 3700 行 (レコード) しか取得できません。したがって、最後の部分は表示されません。次のヘッダーを使用して、ページを Excel としてダウンロードし、ajax を介してページを呼び出します。
header("Pragma: public");
header("Cache-Control: no-store, no-cache, must-revalidate"); // HTTP/1.1
header("Cache-Control: post-check=0, pre-check=0", false);
header("Cache-Control: maxage=3600"); //Adjust maxage appropriately
header('Content-type: application/vnd.ms-excel');
header("Content-Disposition: attachment; filename=\"".$title.".xls\"");
header("Content-transfer-encoding: binary");
編集:次のコードを使用しています
$sql = "select * from transactions";
$rs = $cn->Execute($sql);
while(!$rs->EOF){
echo "<tr><td>".$rs->fields['transid'];."</td></tr>";
//other fields here
$rs->MoveNext();
}
//even if i put something here it will not be displayed.
echo "<tr><td>something here</td></tr>";
これにより、合計トランザクションが 5003 であるすべてのトランザクションが表示された Excel ファイルが出力されます。