我有一个网页,可创建到本地服务器上Excel和PDF文件的链接。我可以成功打开Excel文件,但是不能打开PDF。请考虑以下代码:
$fileLink = sefs1/Standards/Cable Trays.pdf
$fileName = Cable Trays
} else if($fileType == "pdf") {
echo "<td><a href='file://".$fileLink."'>".$fileName."</a></td>";
}
如何在用户的默认PDF应用程序中打开PDF?
编辑:请查看下面代码的扩展:
// Print table
while($queryTableInfo->fetch()){
$fileType = pathinfo($fileLink, PATHINFO_EXTENSION);
echo "<tr>";
// Format the link depending on file type
if(!empty($fileLink)) {
if($fileType == "xls" || $fileType == "xlsx" || $fileType == "xlsm") {
echo "<td><a href='ms-excel:ofe|u|file:///".$fileLink."'>".$standardNum."</a></td>";
//STACK OVERFLOW ISSUE BEGIN
} else if($fileType == "pdf") {
echo "<td><a href='".$fileLink."'>".$standardNum."</a></td>";
//STACK OVERFLOW ISSUE END
} else {
echo "<td>".$standardNum."</td>";
}
} else {
echo "<td>".$standardNum."</td>";
}
$filename = 'filename.html';
//Additional Information
echo "<td>".$description."</td>";
echo "<td>".$revNum."</td>";
echo "<td>".$issueDate."</td>";
echo "</tr>";
}
$queryTableInfo->close();
href中的file://和file:///对我不起作用
Excel链接有效。 PDF链接没有。我还想在用户的默认PDF应用程序而不是Web浏览器中打开它。希望这更清楚
答案 0 :(得分:0)
发现UNC链接到PDF的正确href结构为:
echo "<td><a href='file://///".$fileLink."'>".$standardNum."</a></td>"
这是文件:五(5)个斜杠。这解决了Internet Explorer和Edge的问题。但是,对于Chrome,您必须让用户在其计算机上安装此插件或类似的软件:
在Firefox上,我发现没有有效的解决方案可以通过“一步安装”将其部署,并且不会牺牲网站的设计。就我而言,这是一个Intranet,因此我对用户计算机有一定的控制权,可以要求IT在新计算机的下一个OS映像上将此插件烘烤到Chrome中。
对于现有计算机,Chrome插件的安装非常简单,任何经验的用户都可以遵循。