-1

ファイルを強制的にダウンロードしています。xmlファイルです。問題は、ダウンロードしているときに、ダウンロードが開始された現在のページのhtmlダンプがファイルに含まれていることです。これがスニペットです。

ファイル:/bitrix/modules/export/admin/export.php

 $name='market'.date('Y-m-d-H-i-s').'.yml';
 $file='/bitrix/modules/export/export/'.$name;
 $filename=$_SERVER["DOCUMENT_ROOT"].$file;
 $fp=fopen($filename,"wb");
 /*
 *
 * Here goes some generating script
 *
 */
 fclose($fp);
 header('Content-disposition:attachment;filename="'.$name.'"');
 header('Content-type: application/svg+xml');
 readfile(realpath($file));
4

1 に答える 1

1

空白行や別のコードなどが含まれている場合、ダウンロードスクリプトを機能させるのは困難です。ファイルの生成後にファイル名を投稿すると、機能するはずです。スクリプトの例をダウンロードします。

<?php
if ( isset ( $_REQUEST[ 'filename' ] ) ) {
  $FileName       = $_REQUEST[ 'filename' ];
  $DownloadFolder = "MyDowloads";
  status_header( 200 );
  header( "Content-type: application/force-download" );
  header( 'Content-type: application/svg+xml' );
  $saveas = $FileName;
  header( "Content-Disposition: attachment; filename=\"$saveas\"" );
  readfile( $DownloadFolder . $FileName );
}
?>

お役に立てれば。

于 2012-09-18T02:13:29.387 に答える