ここの情報は古いです。ご理解頂いた上でお取り扱いください。

Changeset 2928


Ignore:
Timestamp:
May 16, 2007, 8:25:26 PM (12 years ago)
Author:
ogawa
Message:

#628:特定のファイル名でファイルダウンロード時に文字化けする場合がある

File:
1 edited

Legend:

Unmodified
Added
Removed
  • OpenPNE/branches/2.8.x/public_html/download.php

    r2533 r2928  
    66
    77require_once './config.inc.php';
     8
     9// エラー出力を抑制
     10ini_set('display_errors', false);
     11ob_start();
     12
    813require_once OPENPNE_WEBAPP_DIR . '/init.inc';
    914
     
    3843
    3944$file = db_file_c_file4filename($_GET['filename']);
    40 $original_filename = preg_replace("/\r|\n/", '', $file['original_filename']);
    41 header('Content-Disposition: attachment ; filename="' . mb_convert_encoding($original_filename, 'SJIS', 'UTF-8') . '"');
     45
     46// オリジナルファイル名
     47$original_filename = $file['original_filename'];
     48if (strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE') !== false) {
     49    // IE の場合のみ、ファイル名を SJIS に変換
     50    $original_filename = mb_convert_encoding($original_filename, 'SJIS', 'UTF-8');
     51}
     52$original_filename = str_replace(array("\r", "\n"), '', $original_filename);
     53
     54while (@ob_end_clean());
     55
     56header('Content-Disposition: attachment; filename="' . $original_filename . '"');
    4257header('Content-Length: '. strlen($file['bin']));
    4358header('Content-Type: application/octet-stream');
    4459echo $file['bin'];
     60exit;
    4561
    4662?>
Note: See TracChangeset for help on using the changeset viewer.