簡體   English   中英

如何通過唯一的php文件下載多個圖像?

[英]How to download multiple images through an unique php file?

我需要一個能夠從服務器上的文件夾本身下載多個圖像的php文件,每個圖像具有唯一的ID。

例如

我的服務器上有一個圖像:/home/example/public_html/multipleimage/2.png

我想通過唯一的php文件下載該圖像: http : //example.com/file.php

我將鍵入以下URL: http : //example.com/file.php?id=2並且瀏覽器將必須返回圖像。

但是... php文件應該如何? 無需通過數據庫就能完成嗎?

謝謝。

<?php
header("Content-Type: image/png");
readfile(
    sprintf(
        '/home/example/public_html/multipleimage/%d.png', 
        $_GET['id']
    )
);

請參閱PHP手冊中的以下條目:

請注意,我正在將sprintf%d配合使用,因此它將無提示地將任何非數字id值轉換為0,因此, ../../etc/passwd類的惡意輸入將嘗試讀取0.png 如果要使用除數字以外的其他任何東西,則需要清理輸入,以防止目錄遍歷攻擊空字節中毒(在PHP 5.3.4之前)

我仍然不確定我是否知道你想要什么,但是事情就這樣了:

<?php
if (array_key_exists('id', $_GET) && is_numeric($_GET['id'])) {
    header("Content-Type: image/png");
    echo file_get_contents("/home/example/public_html/multipleimage/".$_GET['id'].".png");
}

?>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM