iT邦幫忙

0

html 上傳大量圖片

  • 分享至 

  • xImage

我自己架站,想放400張照片上供瀏覽,但是寫 400 次 <img> 很麻煩,所以想問有沒有更快的方法?

看更多先前的討論...收起先前的討論...
看不懂耶,重點是大量上傳嗎?
html似乎不是重點?
就是說我要在html中放入約400張的圖片,但是用<img> 一張一張放會花很多時間,我想知道有沒有其他辦法?
淺水員 iT邦大師 6 級 ‧ 2023-01-20 10:20:12 檢舉
我猜他想問的是,客戶端用 <input type="file"> 一張一張選很麻煩
有沒有一次選擇 400 張圖片後,自動依序上傳到伺服器的方式
wiseguy iT邦超人 1 級 ‧ 2023-01-20 11:25:25 檢舉
問題問得不清不楚,幫友也就一頭霧水的斷斷續續回答 ....
先弄清楚你的需求是:
1. 你自己架站,想要做一個網頁,擺放 400 張的照片上去供瀏覽。你想問,有沒有迅速產生 400 張圖片連結的方法?
2. 你想把 400 張照片,上傳到某個像是 Google 相簿的現成網站,但是它只能一張一張傳。你想問,能不能一次上傳 400 張,不要一張一張選?

以上 1,2 哪個是你的問題?
是1
我自己架站,想放400張照片上供瀏覽,但是寫 400 次 <img> 很麻煩,所以想問有沒有更快的方法,不好意思表達不清
@wiseguy 雖然說他是一選項 但是我覺得二選項比較值得回答欸XD
例如要實作imgur的批次上傳 應該滿有挑戰的d(`・∀・)b
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中
3

我就先不討論,一個頁面上放超過100張以上的圖片。是找死的行為這件事。

一般比較快的方式是利用編寫工具。最好是找能匯出html的為主,或是本身就是編寫html的工具
如果用現成的WORD,也是可以先將圖片全COPY貼上到文件上後。再匯出成html處理。

基本上這些工具都會有支援拷貝/貼上。
可以先將圖片貼上後再做整理。

另外一招則是圖片重新命名數位化。之後再利用一些後端語言來處理。
不過因為你是想要用 html 所以這部份我就跳過不提了。

那請問有辦法可以匯入整個資料夾嗎?這樣的話如果以後資料夾的圖片有增減就不用再調(其實不限於用html,如果有其他程式的方法也OK)

如果是可以利用後端程式來處理的話。
是可以利用後端的檔案相關函式來幫你處理列表檔案這件事。

如果你對這方面並不是很了解。
建議您直接找找「檔案管理系統」的PHP、.NET....等等後端應用的程式套件。
因為大多數的「檔案管理系統」本身就有支援直接幫你將資料夾中的圖片顯示出來。

如果想自定義自已的列表。那就研究一下後端語言的「檔案函式」
都可以很單純的做到你想要的事。

幾乎所有的後端語言一定都會有「檔案函式、物件」可直接給你利用 。
剩下的就給你自行尋求了。這方面的資源並不困難,很好找的。

當然了,我一開始就有先說一件事了。
但圖片量少倒是不會。圖片量多的話,你要考量其它方式做就是了。

好的,謝謝你!

1
aaron3399
iT邦好手 1 級 ‧ 2023-01-20 13:26:52

用php or asp寫程式
1.取得資料夾內所有圖檔名稱
2.迴圈400次,依序將檔名寫入

然後打開網頁時,就會自動依照程式碼產生400張圖的對應連結。
大概十幾行程式碼就可以搞定吧.....

的確是後端問題

0
Oo_花之舞__oO
iT邦新手 1 級 ‧ 2023-01-20 23:22:36

給你個建議 發文要講清楚內容 你補充的跟你原本發問的一樣模糊
還要別人繼續問你才知道你到底要幹嘛
不要一直重複你模糊的發問 寫三次貼三次還是一樣不清楚

提問的藝術:為什麼你該這樣問
一本書兩百塊買來省下你幾萬元的時間
提問的藝術:每個提問者都應該要注意的提問流程
線上文章至少讀過一次知道怎麼問 這也是禮貌問題
提問的智慧 - GitHub
----------------以上幹話結束

這樣的需求 跟html應該無關
你只是想要迴圈寫出img裡面的src而已
用隨便一個有迴圈的語言 然後批次把圖片檔名改成xxxx1.jpg
之後用迴圈去遍歷生成
xxxx1.jpg
xxxx2.jpg
xxxx3.jpg

至於外面要包一個img也就只是修一下 跟是不是html沒啥關係

至於如果不想批次修改檔名 那麼你需要的就只是python
用python針對資料夾去獲取一個檔案名稱的json也行 再隨便用個語言寫迴圈即可
不要想著什麼匯入資料夾 你想太多 花錢就有
沒錢就自己學迴圈 學腳本語言 學後端

還有這無關快不快 如果你不懂程式的迴圈 可能要花你十五個小時去了解
那麼你還是手動貼400張比較快

好的,感謝你的指教!

1
JamesDoge
iT邦高手 1 級 ‧ 2023-01-24 04:25:19

PHP 的範例

<?php
$folderPath = "path/to/image/folder/";
$imgElements = "";
$imgLinks = scandir($folderPath);
foreach($imgLinks as $link) {
    if (strpos($link, '.jpg') !== false) {
        $imgElements .= '<img src="' . $folderPath . $link . '">';
    }
}
echo $imgElements;
?>

太佛了 可惜我看不懂php 酷

0
凱恩Kane
iT邦新手 5 級 ‧ 2023-01-24 11:35:53

可以先寫個簡單的 NodeJS 腳本把檔名拉出來之後加些字就可以了
如果要動態的可以嘗試 webpack 等方式比較省力

const {readdirSync} = require("fs")

const files = readdirSync("資料夾")

console.log(files.map(x => `<img src="${x}"/>`).join("\n"))

這好酷喔 資料夾那邊是怎麼改 看不懂(?
可以寫稍微清楚一點嗎 感恩

如果要簡單一點可以直接塞資料夾的絕對路徑進去
C:/path/to/folder

我要發表回答

立即登入回答