如何通过ajax将图像从html传递给php

时间:2017-02-17 10:01:07

标签: php ajax image

select *
from table2
inner join table1
on conditions2
where conditions3 and conditions1

以上是我的代码,它从html表单中获取值,然后发送到update.php文件。如何通过此功能发送图像文件以及所有变量?我应该将其作为文件本身或通过编码发送?帮帮我!!

2 个答案:

答案 0 :(得分:0)

非常基本的方法是:

  1. 将图片转换为base64-data How to convert image into base64 string using javascript
  2. 通过ajax作为字符串发送,在服务器端发送base64_decode($b64Image)并将原始数据保存到文件
  3. 但不要忘记在 php.ini 和/或Nginx body_size中设置 post_max_size (我忘了它是如何命名的)

答案 1 :(得分:0)

您可以使用FormData通过ajax将文件传递到您的php文件。例如:

$(':file').change(function() {
var data = new FormData();
jQuery.each(jQuery(':file')[0].files, function(i, file) {
    data.append('file[]', file);
});

然后你可以通过ajax发送它:

    jQuery.ajax({
    url: 'your url',
    data: data,
    cache: false,
    dataType: 'json',
    contentType: false,
    processData: false,
    type: 'POST',
    success: function(data){
       //your code
    }
});

现在,您可以在php上处理这些文件,例如$ _FILES ['file']数组。