2015-02-09 62 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

相關問題