如何解决php中未定义的索引错误

如何解决php中未定义的索引错误,php,html,Php,Html,我面临一个未定义索引的错误:user\u image 我的输入文件名是user\u image,我只是在函数上方定义了user\u image,并将其保留为空“”,然后我也在register函数中定义了它,但仍然得到了未定义索引的错误:user\u image 看看我的函数,我刚刚在主页中包含了这个函数 $username=$email=$password\u 1=$password\u 2=$user\u image=”“; $username\u error=$email\u error=$

我面临一个未定义索引的错误:user\u image

我的输入文件名是user\u image,我只是在函数上方定义了user\u image,并将其保留为空“”,然后我也在register函数中定义了它,但仍然得到了未定义索引的错误:user\u image

看看我的函数,我刚刚在主页中包含了这个函数

$username=$email=$password\u 1=$password\u 2=$user\u image=”“;
$username\u error=$email\u error=$password\u 1\u error=$password\u 2\u error=$user\u image\u error=”“;
$username\u err=$password\u err=“”;
如果(isset($_POST['register'])){
寄存器();
}
函数寄存器(){
全局$db、$username、$email、$user\u image、$username\u error、$email\u error、$password\u 1\u error、$password\u 2\u error、$user\u image\u error;
$username=e($_POST['username']);
$email=e($_POST['email']);
$password_1=e($_POST['password_1']);
$password_2=e($_POST['password_2']);
$user\u image=$\u文件['user\u image']['name'];
$temp_name1=$_文件['user_image']['tmp_name'];
移动上传的文件($temp_name1,“资产/图像/用户/$user_图像”);
if(空($username)){
$username\u error=“需要用户名”;
}否则{
$query=“从用户名为“$username”限制1”的用户中选择*;
$results=mysqli_查询($db,$query);
如果(mysqli_num_rows($results)==1){
$username\u error=“已使用用户名”;
}
}
如果(空($email)){
$email\u error=“需要电子邮件”;
}elseif(!filter\u var($email,filter\u VALIDATE\u email)){
$email\u error=“无效的电子邮件格式”;
}否则{
$query=“从电子邮件=“$email”限制为1”的用户中选择*;
$results=mysqli_查询($db,$query);
如果(mysqli_num_rows($results)==1){
$email\u error=“电子邮件已被接收”;
}
}
if(空(修剪($password_1))){
$password\u 1\u error=“请输入密码。”;
}elseif(strlen(trim($password_1))<6){
$password\u 1\u error=“密码必须至少包含6个字符。”;
} 
if(空(trim($password_2))){
$password\u 2\u error=“请确认密码。”;
}否则{
if(空($password\u 1\u error)&($password\u 1!=$password\u 2)){
$password\u 2\u error=“密码不匹配。”;
}
}
if(空(修剪($user_image))){
$user\u image\u error=“必须使用用户映像”;
}
if(空($username\u error)&&empty($email\u error)&&empty($password\u 1\u error)&&empty($password\u 2\u error)&&empty($user\u image\u error)){
$password=md5($password\u 1);
如果(isset($_POST['role'])){
$role=e($_POST['role']);
$query=“插入用户(用户名、电子邮件、角色、密码、用户图片)
值(“$username”、“$email”、“$role”、“$password”、“$user_image”)”;
mysqli_查询($db,$query);
$\会话['success']=“新用户创建成功!!”;
标题('location:index.php');
}否则{
$query=“插入用户(用户名、电子邮件、角色、密码、用户图片)
值(“$username”、“$email”、“user”、“password”、“user_image”)”;
mysqli_查询($db,$query);
$logged_in_user_id=mysqli_insert_id($db);
$\u SESSION['user']=getUserById($logged_in_user_id);//将登录用户放入会话
$\会话['success']=“您现在已登录”;
标题('location:index.php');
}
}
}
Html


选择文件

首先,您需要在表单中添加
enctype=“multipart/form data”
属性

其次,您应该首先检查索引

if(isset($_FILES['user_image'])){

}

请给我们看一下您的
标签。哇,非常感谢,现在可以使用了。问题是我忘记在我的表单标签中添加enctype=“multipart/form data”。