【问题标题】:How to store multile images full path into a database so that I can display them in a user home page like Orkut如何将多个图像的完整路径存储到数据库中,以便我可以在 Orkut 等用户主页中显示它们
【发布时间】:2010-03-07 18:20:37
【问题描述】:

我正在制作一个应用程序,其中每个用户都必须先登录,然后才能访问他的主页。现在在主页上,我提供了上传图片的选项。现在,如果用户正在上传一张图片,我会将上传图片的完整路径存储到数据库中,然后我可以通过img 标签轻松显示图片...

但是当用户想上传很多图片时我应该怎么做呢?那么我应该如何将他们的完整路径存储在同一用户的数据库中。像OrkutFacebook 一样给我一个想法。我应该用命名图像制作一个不同的表吗,我应该用相同的用户名将图像存储在不同的行中。我该怎么办?

我不知道逻辑。我应该怎么办?如何上传许多图像,如何存储它们的路径,最明智的方法是什么,如何在一页上显示许多图像(我可以显示一个)?

【问题讨论】:

    标签: php database-design


    【解决方案1】:

    您可以创建一个文件夹,以用户名和 id 命名,并将他们的所有图像放在那里。

    要在一个页面上显示多个图像,只需在页面上添加更多<img> 标签。

    【讨论】:

    • 是否有可能在新用户注册时,同时创建一个以他的名字命名的新文件夹,以便我可以将所有图像放入其中..我想我不能手动创建用户名文件夹对于每个用户..
    • mkdir() 是创建文件夹的函数
    【解决方案2】:

    这似乎更像是一个设计问题而不是 PHP 问题。我会创建一个单独的表来存储所有路径,这更加规范化。

    您仍然需要处理 UI,但如果您正在做某种画廊,那么使用一些 jQuery 杂耍或类似的东西就相当简单了。

    【讨论】:

    • 好吧,假设我正在为所有用户上传的所有图像创建一个表,但是如何区分这是他/她的图像显示我将每个用户唯一的用户名与上传的文件相关联,所以可以区分图像
    • 为用户ID添加一列,它应该是用户表的外键。
    【解决方案3】:

    是的,您想使用单独的表来存储图像路径。您很可能需要记录 ID、用户 ID 和图像路径。您还可以添加一个字段来包含图像的排序顺序。

    如果有超过一页的照片,具有排序顺序字段将允许您翻阅照片。

    【讨论】:

      【解决方案4】:

      您的想法是正确的,您建议创建一个包含图像路径和用户名的行的单独表。您正在处理的概念称为cardinality。我建议您花几分钟时间阅读一下这个概念,因为它对数据库设计非常重要。

      在这种情况下,您谈论的是用户和图像之间的一对多关系。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-11-15
        • 2011-12-28
        • 1970-01-01
        • 1970-01-01
        • 2020-02-12
        相关资源
        最近更新 更多