你好,我的PHP脚本已经通过html表单设置了上传文件。
我希望在上传后显示下载链接/打开文件链接,但问题是我使用的PHP脚本的一部分在上传时重命名了文件
//Create full filename including path
if ($random_name_enable = true) {
// Generate random filename
$tmp = str_replace(array('.', ' '), array('', ''), microtime());
if (!$tmp || $tmp == '') {
$out['error'][] = "File must have a name";
}
$newname = $tmp . '.' . $ext;
} else {
$newname = $name . '.' . $ext;
}
enter code here
这导致我不知道如何通过下面的php解决方案显示带有重命名上传文件的下载链接
上传网页/站点位于https://beta.filez.ml
正如你所看到的,如果你尝试上传一个基本的图片,它没有显示重命名后的下载链接,我需要想办法让PHP脚本在上传后显示一个链接,如下所示。
完整的PHP文件在这里为任何感兴趣的人挑选
https://gist.github.com/burnsyboo/b9a9512807fc031dc9a7
为什么不使用Ajax?上传完成后,回显您生成的新文件名,ajax使用该名称,然后用从php获得的文件名用href附加anchor,并向anchor添加下载属性,以便在按下时下载文件
http://www.w3schools.com/tags/att_a_download.asp
解决方案是在$newname变量上方添加全局$newname;然后在页面的顶部,我做了$newname";
然后在显示成功消息的地方,我做了这个
$message = "<style>.php-success { color: darkgreen; font-weight: 400; font-size: 20px; }</style><p class='php-success'>File successfully Uploaded<br><br><a href='"https://" . $_SERVER["SERVER_NAME"] . "/uploads/" . $newname . "'">Click here to open</a></p>";