我创建了一个头像上传,我通过JQuery传递文件名,然后我想在外部php文件中处理和调整它,并将路径发送到数据库。我已经创建了表单,当我发送它时添加了数据库的路径,但是无法识别文件是否已在初始php中上传。这是我获取文件名并通过php运行它的代码:
个人资料页面上的代码:
var avatar=$("#avatar").val();
var name=$("#name").val();
var location=$("#location").val();
var about=$("#about").val();
var visible = ( $("#visible").is(":checked") ) ? "checked" : "not checked";
if(nameok == true || name.value > 2)
{
$('.userValidation').html("Processing").removeClass("error").addClass("success");
jQuery.post("php/update-user-profile.php", {
avatar:avatar,
name:name,
location:location,
about:about,
checked:visible
}, function(data, textStatus){
if(data == 1){
$('.userValidation').html("Updated Successfully").removeClass("error").addClass("success");
window.location = 'home.php';
}
else{
$('.userValidation').html("Something's Wrong, Please Try Again").removeClass("success").addClass("error");
}
});
}
" php / update-user-profile.php"上的代码:
//Avatar Preferences
$avatar = mysqli_real_escape_string($con, $_REQUEST["avatar"]);
$fileName = $_FILES["$avatar"]["name"]; // The file name
如何让它将$ avatar识别为合法文件?
答案 0 :(得分:0)
敌人示例:$_FILES
数组的结构:
Array
(
[file] => Array
(
[name] => file.ext
[type] => text/html
[tmp_name] => /temp/ng736x.tmp
[error] => 0
[size] => 644563
)
)
如果$avatar
变量是表单上字段的名称,则$_FILES
中的文件名称为$fileName = $_FILES[$avatar]["name"]
,但表单上file
输入的名称为{ {1}}该文件名为avatar
。