如何使用链接在php中下载文件


how to use a link to download a file in php

我使用以下代码填充下拉框,选择一个文件并下载它。它的工作非常完美。但我尝试使用每个文件显示为链接,并在点击链接时下载。

echo "<form id='"form'" name='"psform'" action='"download_logic.php'" method='"post'"><label>Select File:&nbsp</label><select name='"file'" >";
            while ($row = mysql_fetch_array($result)) {
             echo "<option  value='" . $row['location'] . "'>"  . $row['location'] . "</option>";
            }
            echo "</select></label>";
        echo"<br>";
            echo "<input id='"submit'" type='"submit'"  name='"filesubmit'" value='"Download'" />  </form>";

它给了我错误。。。。请帮忙。。。。

我正在使用以下代码:

while ($row = mysql_fetch_array($result)) {
    echo "<a  href='"download_logic.php?f='". $row['location'] .'". $row['fileshare'] .'">"  . $row['fileshare'] . "</a>";
}

这是<a>标记中的错误***错误(意外的T_ENCAPSED_AND_WHITESPACE)*

这应该有效:

echo '<a  href="download_logic.php?f='. $row['location'] .'/'. $row['fileshare'] .'">'  . $row['fileshare'] . '</a>';

我真的很抱歉,我不能告诉你为什么会发生这种情况,但如果你将''"全部更改为',它应该对你有效。

echo "<form id='form' name='psform' action='download_logic.php' method='post'><label>Select File:&nbsp</label><select name='file' >";
            while ($row = mysql_fetch_array($result)) {
             echo "<option  value='" . $row['location'] . "'>"  . $row['location'] . "</option>";
            }
            echo "</select></label>";
        echo"<br>";
            echo "<input id='submit' type='submit'  name='filesubmit' value='Download' />  </form>";

至于下一部分,您不能仅通过编写就将变量添加到字符串中

"variable: . $take['variable']" 

如果您希望将变量添加到字符串中,请关闭字符串的writen部分,然后添加变量,如下所示:

"variable: ". $take['variable']

以下是它的外观:

    while ($row = mysql_fetch_array($result)) {
    echo "<a  href='download_logic.php?f=". $row['location'] . $row['fileshare'] ."'>"  . $row['fileshare'] . "</a>";
}