亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在不存儲的情況下將剛剛上傳的圖像發送到 php?

如何在不存儲的情況下將剛剛上傳的圖像發送到 php?

翻閱古今 2021-07-02 10:50:31
我將直接在用例中介紹我的問題:我正在開發一種配置器,我有一個網頁(我們稱之為 page1),用戶可以在其中上傳圖像。圖像通常顯示在img標簽中。當用戶上傳圖像后,他可以前進到下一頁(我們稱之為 page2)?,F在,在這個 page2 我想顯示用戶上傳的圖像而不存儲圖像。這是我迄今為止嘗試過的:在執行此操作之前,我已直接在 json 中插入了圖像的src屬性。但是瀏覽器給了我 GET 請求太長或類似的錯誤。因此,我找到了使用 base64 轉換圖像的解決方案:function getBase64Image(img) {  var canvas = document.createElement("canvas");  canvas.width = img.width;  canvas.height = img.height;  var ctx = canvas.getContext("2d");  ctx.drawImage(img, 0, 0);  var dataURL = canvas.toDataURL("image/png");  return dataURL.replace(/^data:image\/(png|jpg);base64,/, "");}function sendSelectedProducts(){   var logo = document.getElementsByName('logo-container')[0];   var base64 = getBase64Image(logo);   console.log(base64);   var json_string = '{"img": "' + base64 + '" }';   console.log(json_string);   window.location.replace('riepilogo.php?prodotti=' + json_string);}所以,我用這段代碼做的是發送一個帶有 base64 轉換圖像的 Json。在 PHP 端,這是嘗試轉換回圖像的代碼:function base64ToImage($base64_string, $output_file) {   $file = fopen($output_file, "wb");   $data = explode(',', $base64_string);   fwrite($file, base64_decode($base64_decode));   fclose($file);   return $output_file;}echo '<p>'.$img.'</p>';echo '<a class="cart-image" href="#"><img src="'.base64ToImage($img, 'logo_file.jpg').'" alt="logo"></a>'?>此代碼不起作用,我正在尋找不在服務器上存儲圖像的解決方案。我能怎么做?
查看完整描述

3 回答

?
qq_花開花謝_0

TA貢獻1835條經驗 獲得超7個贊

您不需要從 base64 解碼圖像,只需執行以下操作:

echo '<a class="cart-image" href="#"><img src="data:'.$img.'" alt="logo"></a>'?>

$imgbase64 格式的圖像在哪里。


查看完整回答
反對 回復 2021-07-08
?
慕慕森

TA貢獻1856條經驗 獲得超17個贊

您可以保存所選文件(例如在 awindow var或 中local storage)并使用canvas在下一頁中渲染圖像。


請參閱以下示例:


function saveImage(img) {

    window.file = img.files[0];

}


function loadImage() {

    let ctx = document.getElementById('canvas').getContext('2d');

    let url = URL.createObjectURL(window.file);

    let img = new Image();

    img.onload = function() {

        ctx.drawImage(img, 20, 20);    

    }

    img.src = url;

}

<input type="file" id="imgFile" onchange="saveImage(this);" />


<button onclick="loadImage()">Load image</button>


<canvas width="400" height="300" id="canvas"/>

你應該放在saveImage第一頁和loadImage第二頁。


我希望很清楚。再見。


查看完整回答
反對 回復 2021-07-08
  • 3 回答
  • 0 關注
  • 178 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號