【问题标题】:How to display multiple images stored in one field from database?如何显示数据库中存储在一个字段中的多个图像?
【发布时间】:2021-06-10 07:18:56
【问题描述】:

我创建了一个表单来将多个图像和文本上传到数据库。

插入脚本:

    include 'config.php';
            $prodName=$_POST['prodName'];
            $location="upload/";
            $file1=$_FILES['img1']['name'];
            $file_tmp1=$_FILES['img1']['tmp_name'];
            $file2=$_FILES['img2']['name'];
            $file_tmp2=$_FILES['img2']['tmp_name'];
            $data=[];
            $data=[$file1,$file2];
            $images=implode(' ',$data);
            $prodID = mysqli_real_escape_string($db, $_POST['prodID']);
            $null = null;
            $query="insert into overview (prodID,prod,prodName,imageProd) 
                    values('$prodID','$null','$prodName','$images')";

$fire=mysqli_query($db,$query);
    if($fire)
    {
        move_uploaded_file($file_tmp1, $location.$file1);
        move_uploaded_file($file_tmp2, $location.$file2);
        move_uploaded_file($file_tmp3, $location.$file3);
        move_uploaded_file($file_tmp4, $location.$file4);
        echo "success";
    }
    else
    {
        echo "failed";
    }
}

图片已成功上传并存储到一个字段中

有两张图片:PNG_trans.png 和 aa.jpg

如何在我的页面上显示/回显这些图像以使其成为滑块/轮播

【问题讨论】:

  • 您不应该像这样在单个字段中存储多个值。它打破了关系数据库设计的原则。这也使得查询数据、收集数据、统计数据、删除单个项目等变得更加困难。这只是个坏主意。您需要另一个名为overviewImages(或类似)的表,并且应该将每个图像名称连同与之关联的概览记录的ID 一起插入到该表的新行中。这是一个非常标准的外键关系(有时称为一对多关系)。
  • 不要那样做。不要存储序列化数据,您将失去使用 RDBMS 的目的。想想Database normalization
  • 无论如何,您的实际问题非常广泛。你到底在哪里坚持这个过程?有很多可用的轮播/滑块插件。还是你想自己做?还是关于如何查询数据的问题?或者是其他东西?目前还不清楚。将需求分解为您需要的过程的较小步骤,并弄清楚如何完成每个步骤。如果您卡在某个特定问题上,请详细说明您目前所做的工作以及问题的具体原因。
  • 您如何区分名为foo.png bar.jpg单个文件 和名为foo.pngbar.jpg2 个文件?跨度>
  • 感谢您提供的信息。我还是网络开发的新手,当我提到视频和脚本时,我就是这样做的。就我所知,我可以知道如何调用这些图像并显示它们的脚本吗?。

标签: javascript php html mysql sql


【解决方案1】:

假设您有理由不遵循上面的好意建议,您可以使用 explode 将 imageProd 中的字符串转换为数组。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-06-21
    • 1970-01-01
    • 2017-01-05
    • 2022-11-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多