圖片存儲 - php mysql 儲存base64的圖片
問題描述
在html5 的canvas 中我使用了一個表情包制作的第三方控件,現在想要把制作完成的表情包上傳到mysql的數據庫里。無論是上傳到本地服務器然后再數據庫里存儲文件地址,或者是用blob形式,都可以。請各位大牛告訴我怎么做。我用canvas.todataurl 把圖片變成base64的編碼,然后用ajax 把編碼發到儲存的頁面,用 $_POST['image']獲得base64的編碼。我不想直接把base64的編碼輸入到數據庫里因為太大了,但是我不知道怎么樣用php 把圖片的BASE64編碼變成BLOB.能不能把編碼變成圖片然后直接上傳圖片到數據庫? 但是我記得file_get_content好像只能在本地用不能在服務器上用。以下是我目前獲得圖片的base64編碼代碼
$data = $_POST['image'];$data = str_replace(’data:image/png;base64,’, ’’, $data);$data = str_replace(’ ’,’+’,$data);
$data = base64_decode($data);
無論用什么方法只要能把base64編碼的圖片輸入數據庫就可以了
問題解答
回答1:文件一般都是存地址的吧,解碼保存為文件,數據庫存文件路徑不行嗎
回答2:一般都是先本地生成,直接存地址。
回答3:file_get_contents()可以用吧,我都是用這個的
回答4:一般來說會把文件上傳到七牛,拿到一個網絡路徑,保存該路徑到數據庫就好了
相關文章:
1. Docker for Mac 創建的dnsmasq容器連不上/不工作的問題2. javascript - 求賜教:網易郵箱Web端模擬登錄看信的加密參數_ntes_nnid、_ntes_nuid3. javascript - 使用angular 的ui-sref 中出現了中文參數,點擊跳轉后瀏覽器的地址欄里出現轉義后的%AE....%a%44. java - ConcurrentHashMap中的get()方法為什么可以不加鎖?5. javascript - QWebEngineView 如何爬 angular 的動態數據?6. html5 - 這個代碼顯示功能如何實現?7. javascript - 用JS 七牛上傳圖片出現文件已存在的錯誤(file exists)8. 工作近5年,3年Java Web ,近2年前端,未來何去何從?9. css3 - 圖片等比例縮放10. java - 字節流轉成字符串之后,在通過字符串轉成字節流后的文件為什么會不一樣?
