从网页(UNC路径)在应用程序中打开本地PDF

时间:2019-12-17 16:29:52

标签: php html

我有一个网页,可创建到本地服务器上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浏览器中打开它。希望这更清楚

1 个答案:

答案 0 :(得分:0)

发现UNC链接到PDF的正确href结构为:

echo "<td><a href='file://///".$fileLink."'>".$standardNum."</a></td>"

这是文件:五(5)个斜杠。这解决了Internet Explorer和Edge的问题。但是,对于Chrome,您必须让用户在其计算机上安装此插件或类似的软件:

https://chrome.google.com/webstore/detail/enable-local-file-links/nikfmfgobenbhmocjaaboihbeocackld?hl=en

在Firefox上,我发现没有有效的解决方案可以通过“一步安装”将其部署,并且不会牺牲网站的设计。就我而言,这是一个Intranet,因此我对用户计算机有一定的控制权,可以要求IT在新计算机的下一个OS映像上将此插件烘烤到Chrome中。

对于现有计算机,Chrome插件的安装非常简单,任何经验的用户都可以遵循。