0

私はdownload.phpファイルを持っています:

 $file = // path to file 


    if ( file_exists($file) ) {
        header('Content-Description: File Transfer');
        header('Content-Type: application/vnd.ms-excel'); 
        header('Content-Disposition: attachment; filename=myfile.csv'); 
        header('Content-Transfer-Encoding: binary');
        header('Expires: 0');
        header('Cache-Control: must-revalidate');
        header('Pragma: public');
        header('Content-Length: ' . filesize($file));
        readfile($file);


        exit;
    }

したがって、 open の場合http://mysite.com/download.phpcsvファイルがダウンロードされます。

この URL をメールで送信したいのですが、そのために次のことを行います。

    $to = // recipient
    $title = // msg title
    $download_url = 'http://mysite.com/download.php';
    $msg = 'some text <a href="'.$download_url.'" target="_self">download file</a>';

    $headers  = 'MIME-Version: 1.0' . "\r\n";
    $headers .= 'Content-type: text/html; charset=utf-8' . "\r\n";

    mail($to, $title, $msg, $headers);

私の問題は次のとおりです。「ファイルのダウンロード」リンク (電子メール メッセージ内) をクリックすると、ブラウザで別のウィンドウが開きます。

質問: 別のウィンドウを開かずに、同じウィンドウのままでファイルをダウンロードすることは可能ですか?

4

1 に答える 1

0

これはあなたのウェブクライアント(Outlookなど)によって処理されると思います。訪問者のメールクライアントの影響はありません。

于 2013-05-26T19:02:30.563 に答える