Im HTML5-Canvas habe ich ein Drittanbieter-Steuerelement zum Erstellen von Emoticon-Paketen verwendet und möchte nun das fertige Emoticon-Paket in die MySQL-Datenbank hochladen. Egal, ob Sie es auf einen lokalen Server hochladen und dann die Dateiadresse in der Datenbank speichern oder es in Blob-Form verwenden, Sie können es tun. Bitte sagen Sie mir, wie es geht. Ich verwende „canvas.todataurl“, um das Bild in die Base64-Kodierung zu konvertieren, verwende dann Ajax, um die Kodierung an die gespeicherte Seite zu senden, und verwende $_POST[„image“], um die Base64-Kodierung zu erhalten. Ich möchte die Base64-Kodierung nicht direkt in die Datenbank eingeben, da sie zu groß ist, aber ich weiß nicht, wie ich PHP verwenden kann, um die BASE64-Kodierung des Bildes in ein BLOB umzuwandeln und dann das Bild direkt in die Datenbank hochladen? Aber ich erinnere mich, dass file_get_content nur lokal und nicht auf dem Server verfügbar zu sein scheint. Das Folgende ist der Base64-Codierungscode, den ich derzeit verwende, um das Bild zu erhalten
$data = $_POST["image"];
$data = str_replace('data:image/png;base64,', '', $data);
$data = str_replace(' ','+',$ Daten);
$data = base64_decode($data);
Egal welche Methode Sie verwenden, solange Sie das Base64-codierte Bild in die Datenbank eingeben können
文件一般都是存地址的吧,解码保存为文件,数据库存文件路径不行吗
一般都是先本地生成,直接存地址。
file_get_contents()可以用吧,我都是用这个的
一般来说会把文件上传到七牛,拿到一个网络路径,保存该路径到数据库就好了