Проблемы при загрузке pdf с помощью Chrome PHP
при выборе pdf браузер chrome отображает его нормально, но если я хочу загрузить его, он не работает для меня, он загружает файл с именем страницы, которая ver.php
Index.php
var listar = function(year) {
var table = $("#dt_cliente").DataTable({
"order": [
[0, "desc"]
],
"destroy": true,
"ajax": {
"method": "POST",
"url": "inc/listar.php?anno=" + year //Año
},
"columns": [{
"data": "decreto"
}, {
"data": "anno"
}, {
"data": "materia",
"searchable": true,
"sortable": false
}, {
"data": "pdf",
"searchable": false,
"sortable": false,
"render": function(pdf) {
if (!pdf) {
return "";
} else {
return '<a href="ver.php?pdf=' + pdf + '" target="_blank"><img src="img/pdf-icon.png"> Ver decreto</a>'
}
}
}]
Ver.php
<?php
header('Content-Description: File Transfer');
header("Content-type: application/pdf");
readfile('file/'.$_GET['pdf']);
?>
Если я использую mozilla работает просто отлично, что может быть? С наилучшими пожеланиями
Http://transparencia.villalemana.cl/decreto / здесь я пытаюсь загрузить pdf-файлы в Chrome
2
1 answers
1 с get: ver.php?pdf=nombre.pdf
Определение inline для выхода браузером и filename для получения исходного имени
<?php
$nombreDeArchivo = $_GET['pdf'];
$nombreDeArchivo = end(explode('/',$nombreDeArchivo));
header('Content-Description: File Transfer');
header("Content-type: application/pdf");
header('Content-Disposition: inline; filename='.$nombreDeArchivo);
readfile('file/'.$nombreDeArchivo);
?>
2 Использование path info: ver.php/nombre.pdf
<?php
$nombreDeArchivo = ltrim(isset($_SERVER['PATH_INFO'])?$_SERVER['PATH_INFO']:'ERROR','/');
$nombreDeArchivo = end(explode('/',$nombreDeArchivo));
header('Content-Description: File Transfer');
header("Content-type: application/pdf");
header('Content-Disposition: inline; filename='.$nombreDeArchivo);
readfile('file/'.$nombreDeArchivo);
?>
В примерах минимально фильтр имени файла, в вашем случае, если это только pdf, вы должны проверить расширение, если файл существует и прочее, чтобы не было никаких дыр в безопасности или странных ошибок.
1
Author: alo Malbarez, 2018-04-30 22:29:12