作者red0whale (red whale)
看板PHP
標題Re: [請益] PHP中scr的指定位置網頁跟實際中不一樣
時間Mon May 22 13:42:01 2017
※ 引述《chingyue (ChingYue)》之銘言:
: 問題圖:http://i.imgur.com/NJNG3gJ.jpg
: 小弟寫了一個PHP的網頁
: 當中有使用圖片超連接
: 語法:<img src="圖片網址">
: 問題是 我想要在圖片網址這邊改成我電腦中其他槽
: 例如改成:D\圖片庫\ABC.jpg
: 可是網頁中卻讀不到
: 檢視原始碼中的位址變成http://127.0.0.1/life/D\圖片庫\ABC.jpg
: 想請問各位前輩
: 要怎麼做 才能讓PHP去我電腦的其他槽裡面讀取圖片及影片等
: 而不是讀取www目錄底下的檔案
: 麻煩各位前輩幫小弟解惑 謝謝!
你不能這樣做,
Google Chrome基於安全因素不准在http(https)協定下讀取file URI,
除非是使用者主動按下file瀏覽視窗來選擇本機上的檔案,
否則是不允許載入的。
如果要實現載入file URI裡頭的資料
只能用FileReader來讀取圖片內容:
<script>
function readImg(e) {
var file = e.files[0];
var fReader = new FileReader();
fReader.onload = function(event) {
document.getElementById('fileImg').src = event.target.result;
};
fReader.readAsDataURL(file);
}
</script>
<input type="file" onchange="readImg(this);">
<img id="fileImg">
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.42.227.14
※ 文章網址: https://www.ptt.cc/bbs/PHP/M.1495431723.A.001.html
→ MOONRAKER: 噗 為了新手到蛋疼的問題 教他一個超難的功能05/22 14:12
→ MOONRAKER: 而且他如果真的拿去用又會出別的問題05/22 14:13
→ MOONRAKER: 只能說真是天才 I服了YOU05/22 14:14
→ MOONRAKER: 而且這樣會看到誰的檔案你真的知道嗎?05/22 14:20
推 chingyue: 謝謝! 我剛剛有試了一下 可是這跟我想要的功能不太一樣05/22 14:28
→ chingyue: 我是想要讀其他裝置的圖片 然後顯示到網頁上05/22 14:31
→ chingyue: 而不是自己選個圖檔顯示在網頁 不過還是謝謝您!05/22 14:31
那是絕對不可能的
因為安全問題
你想想嘛…
如果今天Google Chrome開放你直接讀取使用者電腦的檔案(讀取Local file path)
那「有心人士」是不是就可以透過這種方式將你電腦裡的檔案全部竊取?
假設本肥在D巢存了一堆A片
那我今天如果不小心掉進他的網頁裡面
我的A片不就可以透過這管道流進他的伺服器主機裡頭了? (他只要有辦法讀取使用者電腦
裡的檔案,透過AJAX方式就可能有辦法把你電腦裡的資料竊取)
所以基於安全及隱私問題
不封鎖這功能不可
※ 編輯: red0whale (163.13.253.128), 05/22/2017 14:40:40
→ chingyue: 謝謝您! 那看樣子我只能把檔案都放到網頁資料夾內了... 05/22 14:57
推 Dinjang: 當然只能自己放進網頁資料夾 05/22 15:44