你好,我有以下AJAX代码:jquery和AJAX发布到php数据属性?
var formData = new FormData($('form')[0]);
$.ajax({
url: 'saveImage.php', //Server script to process data
type: 'POST',
data: formData,
processData: false,
success: function(data){
console.log(data);
}
});
它的伟大工程,它加载了PHP页面它的背景像它应该:
<?php
include_once "mysql_connect.php";
$imageName = mysql_real_escape_string($_FILES["Image1"]["name"]);
$imageData = '';
$imageext = '';
if($imageName != null){
$imageData = mysql_real_escape_string(file_get_contents($_FILES["Image1"]["tmp_name"]));
$imageType = mysql_real_escape_string($_FILES["Image1"]["type"]);
$imageSize = getimagesize($_FILES["Image1"]["tmp_name"]);
$imageType = mysql_real_escape_string($_FILES["Image1"]["type"]);
$FileSize = FileSize($_FILES["Image1"]["tmp_name"]);
$imageext = mysql_real_escape_string($imageSize['mime']);
}
$query=mysql_query("INSERT INTO pictures (`id`, `imagedata`, `imageext`) VALUES ('', '$imageData', '$imageext');");
echo $imageext;
?>
唯一的问题是,PHP页面斜面找到变量Image1,它是表单中输入的名称。我做错了什么吗?我在想,也许在阿贾克斯的数据参数,它会是这样的,但正确的:
data: "Image1"=formData,
是这样一个东西,如果不是,为什么不能我的PHP看到输入字段?
我们可以看到您的HTML表单吗? – winseybash
作为一个调试步骤,尝试向您的PHP添加'print_r($ _ POST);'和'print_r($ _ FILES);'以便您可以准确了解数据正在发送的内容以及正在使用的名称。 – Joe
@Joe它给了我
注意:未定义指数:在此搜索C:\ XAMPP \ htdocs中\网站\ saveImage.php上线
阵列 ( ) – Jelly