我正在制作一个手机应用程序,用户从相机中提交照片,我以Base64编码形式获取。
.form-wrapper h1 + form > label:first-child {
/* some stuff */
}
服务器端将代码保存到数据库中,但选中后用作div后台;无论如何它都行不通!
var posData=extImage1;
$.ajax({
type: 'POST',
data: posData,
timeout:50000,
url: 'http://192.168.137.1/bee/services/add_photo.php',
success: function(data){
alert(data);
addToList();
},
error: function(){
alert('Please check your internet connection');
}
});
为什么会这样?我的猜测是,在发布数据时,它会以某种方式加扰。
我尝试使用此question中的代码将图像保存在服务器上,但它只是提供了损坏的图像。
更新
使用此decoder我提交了已发布的64位代码,并且还提供了损坏的图像。我认为这意味着我的post方法有问题。有什么建议?
答案 0 :(得分:0)
如果使用Dropzone.js
查看 Dropzone.js Implementation 。这很容易
这是你可以实例化的方法
var myDropzone = new Dropzone("div#myId", { url: "/file/post"});
您还可以收听很多活动,例如Adding a file
,Removing a file
对于Ex:
Dropzone.options.myAwesomeDropzone = {
init: function() {
this.on("addedfile", function(file) { alert("Added file."); });
}
};
编辑:如果您将image
存储在磁盘中,而只存储数据库中的image location
,则上述解决方案将起作用。事实上,如果你这样做会更好。
现在谈谈您处理图片的方法,您可以通过此链接how-can-i-store-and-retrieve-images-from-a-mysql-database-using-php进行直接回答
另外,检查您正在使用的datatype
,可能是它截断了您存储在数据库中的编码数据,因此您可能会收到损坏的图像。另请参阅上述将图像存储在链接中提到的数据库中的方法。
希望这能解决您的问题