gpt4 book ai didi

php - 数据库中任何用户的图像上传

转载 作者:行者123 更新时间:2023-11-29 13:25:19 24 4
gpt4 key购买 nike

我有两个表:

第一个和父级“注册” register

第二个是

userimg

error on Query

我想要的是创建一个脚本,其中一个用户具有唯一的 SN 每当上传图片时,该图片路径保存在“userimg”中,我的用户 SN 作为 userimg 中的外键

代码如下

if(isset($_POST['SN']))
{
$filename = $_FILES['upload_image']['name'].$user_SN;
$filesize = $_FILES['upload_image']['size'];
$filetype = $_FILES['upload_image']['type'];
$target_path ="uploads/". basename( $filename );

if (move_uploaded_file($_FILES['upload_image']['tmp_name'], $target_path))
{
$result = $target_path ;
$sql="INSERT INTO userimg (src, size, type,SN ) VALUES ('".$result."', '".$filesize."','".$filetype."','".$user_SN."')";
echo $sql." ";
echo $filesize." ";
echo $filetype." ";
$inst=mysql_query($sql);

if (!$inst)
{
print "error";
}
}
}

该脚本适用于一张图片,但我想要的是用户多次上传(就像画廊一样)并将该路径保存在我的第二个表中。

我需要为每个SN表示用户创建一个userimg表吗?我错过了什么?

[编辑]

问题已解决。错误是使 userimg 中的 SN 成为唯一的,并且我像这样重命名图像(代码如下) - 谢谢 Tuhin!

if(isset($_POST['SN']))
{
$filename = $_FILES['upload_image']['name'];
$filesize = $_FILES['upload_image']['size'];
$filetype = $_FILES['upload_image']['type'];
$timeSt = time();
$info = pathinfo($filename);
$name = $info['filename'];
$format = $info['extension'];
$target_path ="uploads/".basename( $name )."_".$user_SN."_".$timeSt.".".$format;
}

最佳答案

如果同一用户(意味着相同的SN值)尝试上传相同的图像(意味着他已经在此应用程序中以相同的图像名称上传),那么第二个表中的“src”列将是相同的。此外,如果上传的文件夹中的第一个图像文件将被更新的文件替换。这就是为什么我建议您添加时间戳并重命名上传的图像文件并将其存储到数据库中。

关于php - 数据库中任何用户的图像上传,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20221994/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com