2015-02-09 55 views
0

我有一个图像被上传到我的服务器上的一个名为“uploads”的目录,无论如何,我可以在HTML页面上显示该图像,而无需指定图像的文件名?假设我想在目录中显示唯一的png图像,有没有像通配符可以用来扫描符合标准的图像?如何从HTML文件夹中获取未知图像?

+0

这会有什么用?如果你正在上传文件,你应该知道它的名字。如果随机人员正在上传文件,则可以存储该名称。如果您尝试随机化图片,您可以(以其他方式)将文件名称更改为数字并显示一个随机数字。 – SRing 2015-02-09 20:51:08

+0

直接获取所有图像名称,然后过滤出你想要的图像(在这种情况下,请检查一个'.png'扩展名)。 – 2015-02-09 20:54:53

回答

0

使用像下面的伪代码可以让你从你的/uploads文件夹中拉出所有的.png文件,因此如果你只有一个文件有问题,它应该可以正常工作。但它涉及JQuery。

var dir = "S/uploads/"; 
var fileextension = ".png"; 
$.ajax({ 
    url: dir, 
    success: function (data) { 
     $(data).find("a:contains(" + fileextension + ")").each(function() { 
      var filename = this.href.replace(window.location.host, "").replace("http:///", ""); 
      $("body").append($("<img src=" + dir + filename + "></img>")); 
     }); 
    } 
}); 
+0

小心,你只是想检查文件的结尾,否则''hello.png.jpg''会通过。 – 2015-02-09 20:59:57

+0

我真的没有想到这一点。我会暂时调整我的代码,谢谢。 – HavelTheGreat 2015-02-09 21:03:14

+0

这假定对目录的请求返回所述目录中所有文件的数组? – Tom 2015-02-09 21:06:33

0

不,它不会直接产生漏洞。如果你不关心安全性,你可以像其他人一样回答它。

另一种方法是用SCANDIR()(PHP)

$dir = '/your-directory-here/'; 
$files1 = scandir($dir); 

此输出在$dir文件的阵列,并且可以再排序/然而隔离你想要的。查看更多:http://php.net/manual/en/function.scandir.php

相关问题