图像通过表单上传到文件夹中,但数据库中的名称不是图像名称。相反,它是 XAMPP tmp 文件的路径?

Images are upload in folder via form but name in DB is not image name. Instead it's a path to XAMPP tmp file?

在我的管理员table中,图片上传后列图片显示此路径:C:\xampp\tmp\phpC6DA.tmp 但图片名称没有。图像已完美上传到所需文件夹,没问题...

我已尝试将 varchar 更改为文本,用于 MySQL 中的图像列。也许这是我不知道的 XAMPP 设置? MySQL 设置为 InnoDB。

这是代码的一部分

$img              = $_FILES['image']['name'];
$img_tmp          = $_FILES['image']['tmp_name'];
move_uploaded_file($img_tmp, "upload/$img");

$db->query("INSERT INTO admin (id, full_name, email, password, gender, image) VALUES (NULL, :full_name, :email, :password, :gender, :image)");

$db->bindvalue(":full_name", $name, PDO::PARAM_STR);
$db->bindvalue(":email", $email, PDO::PARAM_STR);
$db->bindvalue(":password", $pass, PDO::PARAM_STR);
$db->bindvalue(":gender", $gender, PDO::PARAM_STR);
$db->bindvalue(":image", $img_tmp, PDO::PARAM_STR);

$db->execute();

替换

$db->bindvalue(":image", $img_tmp, PDO::PARAM_STR);

$db->bindvalue(":image", $img, PDO::PARAM_STR);

$img包含你想要的名字。