图像通过表单上传到文件夹中,但数据库中的名称不是图像名称。相反,它是 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
包含你想要的名字。
在我的管理员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
包含你想要的名字。