$value) { echo "$value"; } echo-6ren">
gpt4 book ai didi

javascript - PHP - 如何给出阅读pdf的路径?

转载 作者:行者123 更新时间:2023-11-28 06:02:39 25 4
gpt4 key购买 nike

选择文件名并重定向..

index.php

<?php
$book_name = ["Jenkins_Essentials","Asterisk","phalcon"];
echo "<select><option selected>Book Name</option>";
foreach ($book_name as $key => $value) {
echo "<option name='$key'>$value</option>";
}
echo "</select>";
?>
<script type="text/javascript">
$(document).ready(function(){
$("select").on("change",function(){
location.href = "reading.php?title="+$(this).val();

});
});
</script>

reading.php

$title = $_GET["title"];
header("Content-type: application/pdf");
header('Content-Disposition: inline; filename="$title.pdf"');
@readfile('D:\Learning\$title.pdf');//this is my issue

当我重定向时,它显示无法加载 PDF 文档..我的运行脚本文件位置是我们所知的 C:\xampp\htdocs 但 pdf 文件位置如上面的 D: 驱动器所示!如何给出它的路径?

最佳答案

在最后两行中,PHP 不包含 $title 变量,因为您使用单引号并且使用反斜杠。尝试以下其中一项:

header('Content-Disposition: inline; filename="'.$title.'.pdf"');
@readfile('D:/Learning/'.$title.'.pdf');

或者:

readfile("D:/Learning/$title.pdf");

反斜杠用于转义字符,因此请尽可能使用正斜杠。在 Windows 上,您可以在文件路径中使用两者。另外,为了输出文件,请尝试使用它而不是@readfile:

$pdf = file_get_contents('D:/Learning/'.$title.'.pdf');
echo $pdf;

另一个注意事项 - 您应该在访问文件之前检查该文件是否存在。放在脚本的顶部:

if(!file_exists('D:/Learning/'.$title.'.pdf')) {
echo "File doesn't exist.";
exit();
}

希望这有帮助。祝你一切顺利。

关于javascript - PHP - 如何给出阅读pdf的路径?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37152550/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com