* RFC 6266: Use of the Content-Disposition Header Field in the Hypertext Transfer Protocol
- http://www.ietf.org/rfc/rfc6266.txt
* RFC2231: MIME Parameter Value and Encoded Word Extensions: Character Sets, Languages, and Continuations
- http://www.ietf.org/rfc/rfc2231.txt
* RFC 5987: Character Set and Language Encoding for Hypertext Transfer Protocol (HTTP) Header Field Parameters
- http://www.ietf.org/rfc/rfc5987.txt
break;
}
}
- $filename = htmlsc($filename);
+ $utf8filename = mb_convert_encoding($filename, 'UTF-8', 'auto');
ini_set('default_charset', '');
mb_http_output('pass');
pkwk_common_headers();
- header('Content-Disposition: inline; filename="' . $filename . '"');
+ header('Content-Disposition: inline; filename="' . $filename . '"; filename*=utf-8\'\'' . rawurlencode($utf8filename));
header('Content-Length: ' . $this->size);
header('Content-Type: ' . $this->type);
break;
}
}
- $file = htmlsc($filename);
+ $utf8filename = mb_convert_encoding($filename, 'UTF-8', 'auto');
$size = filesize($ref);
// Output
pkwk_common_headers();
- header('Content-Disposition: inline; filename="' . $filename . '"');
+ header('Content-Disposition: inline; filename="' . $filename . '"; filename*=utf-8\'\'' . rawurlencode($utf8filename));
header('Content-Length: ' . $size);
header('Content-Type: ' . $type);
@readfile($ref);