我正在尝试下载名称中包含空格的文件。该脚本适用于没有空格的名称,但如果有空格则不行。我理解为什么会这样,但不知道如何解决这个问题。到目前为止,我已经花了一天的时间在网上寻找答案。 所以这是我的问题。如何更改此文件以使其能够读取包含空格的名称。
echo"<a href=http://www.site.com/uploads/".$row['att'] ." download=".$row['att'].">Download attachment</a>";
答案 0 :(得分:3)
您需要引用该属性。此外,因为它进入html,它应该被转义。
echo '<a href="' . htmlspecialchars($url) . '">Link</a>';
答案 1 :(得分:2)
HTML属性需要引用。否则它们会被空间划分。
echo "<a href=\"http://......../\">Download</a>";
或者,您可以将其正确编码为%20
,但仍然可以在您的属性周围添加引号...
答案 2 :(得分:0)
我不确定“下载”属性的用途,但您应该查看urlencode和htmlspecialchars:
echo '<a href="http://www.site.com/uploads/'. urlencode($row['att']) .'" download="'.urlencode($row['att']).'">Download attachment</a>";
答案 3 :(得分:0)
感谢大家现在工作得很好的答案。 这里的参考是它之前和之后的样子。
在
echo"<a href=http://www.site.com/uploads/".$row['att'] ." download=".$row['att'].">Download attachment</a>";
在
echo'<a href="http://www.sire.com/uploads/'.$row['att'] .'" download="'.$row['att'].'">Download attachment</a>"';
我把报价全部混淆在错误的地方。