我正在构建评估工具。逻辑是:
在每个问题中,一旦我单击“上传/查看文件”,它将弹出一个模态;
在模式中,有一个部分可以选择要上传的图片/文档/视频。代码如下: Html code
单击提交后,它将触发jquery,如下所示:
$(document).ready(function(){ $('#upload_file_attachment').submit(function(event){ event.preventDefault(); var formData = new FormData($(this)[0]); $.ajax({ url: "ajax/upload-attachment.ajax.php", type: "POST", data: formData, async: false, cache: false, contentType: false, processData: false, 'success': function(data){ $('#upload_success_msg').fadeIn().html(data); setTimeout(function(){ $('#upload_success_msg').fadeOut("Slow"); },5000); } }); //End of ajax})})//End of submit
以下是ajax php代码:
mysqli_query($db, "INSERT INTO `files` VALUES('$assess_id','$quest_ref','$fileName','$fileType','$fileData', NOW(), '$email', '')");
echo "Success";
但是,当我在上传文件后检查数据库时,它仅将“ C:xampp mpphpFE6F.tmp”之类的名称上传到Blob中,显然$ fileData不正确。你能帮我怎么做吗?
谢谢
答案 0 :(得分:1)
另一种方法是将图像保存到服务器或cloudinary之类,并将创建的链接保存到SQL。
答案 1 :(得分:1)
最简单的解决方案,请使用此插件:
http://hayageek.com/docs/jquery-upload-file.php#doc
Ravishanker Kusuma做得非常好,以至于没有意义。 (我与RK无关,甚至没有与他交流,但已经使用了多年了。)
或者,您可以将他的插件用作学习工具/模板,并查看他的代码以了解他的操作方式。