0

需要一个小的基本帮助,我正在使用用户在表单中提交的参数动态创建一个 XML 文件。提交表单后,我将跳转到 PHP 代码,并且我想提供一个 href 链接以下载/显示创建的 XML 文件。

这是我的示例代码:

<?php

$outputForm = 1;   

if(isset($_POST['submit'])){
$outputForm = 0

//Function to generate XML file which works as expected, so that XML file is there
createXML($folderPath, $albumName, $dateOfEntry);

//My XML file is named as albumName.xml and stored in the folderPath as specified
echo '<a href = "' .  $folderPath . $albumName. '.xml' . '">XML FILE</a>';
}
 else{
            $outputForm = 1;
        }
        if($outputForm == 1)
        {     
       //Here follows my input form
     <?php
       }
     ?>

FYI: 
$folderPath = 'c:/htdocs/output/';
Therefore:
$folderPath . $albumName = 'c:/htdocs/output/jessi';
In this example xml file name:
jessi.xml

我可以在输出中看到 href 链接,但是当我单击它时它什么也没做。当我将光标移到“XML 文件”链接上时,我还可以看到 xml 文件的完整路径。

任何想法如何在 php 脚本中嵌入 href 链接以下载/显示 XML 文件。

谢谢

4

1 回答 1

0

问题是,您正在通过使用 http 协议(无论是在本地服务器还是远程)访问代码来运行代码,并且您尝试访问的文件是本地的,并且您正在使用文件 URI 方案访问本地 xml 文件所以,浏览器是可能出于某种安全原因,限制您访问该文件。如果您尝试通过直接在浏览器中打开 html 文件(而不是通过从本地主机运行它)来访问文件,您将能够使用该链接访问该文件位置,浏览器不会限制您。但是您将无法执行 php 代码。

因此,您可以使用相对路径或从本地主机的相对路径引用文件,为此使用 http URI 方案,浏览器不会限制您打开本地文件。

于 2012-06-27T10:49:13.990 回答