1

我正在尝试通过 URL(图像位置)将图像存储在我的数据库中。我只想存储文件名,php 将完成 url。我的问题:我需要在我的表中添加一个 id 字段吗?文件也可能不同 ext(jpg, gif, png) php如何确定?

如果您好奇,我正在使用从本网站上传的这张图片

代码生成的 URL:

http://www.example.com/imageupload/uploads/medium/uniqueimagename.jpg

我的数据库结构:

size: medium
name: uniqueimagename
ext: jpg/png/gif
4

4 回答 4

2

您可以像这样传递图像名称,www.example.com/imageupload/uploads/medium?img=uniqueimagename.jpg并且可以通过使用获取名称$_GET['img'],是的,您必须将 id 存储到数据库中。也不要担心扩展名,因为 img 将存储在您的文件夹中,只需从您的数据库中获取图像名称并显示在您的 img 标签中

于 2012-07-03T16:58:21.303 回答
1

我认为你不需要。

当您存储图像名称时,IE:

uniqueimagename.jpg

您还将存储扩展名,并且通常所有图像都位于同一个文件夹中,因此路径是通用的。

在 PHP 中,你有 $_FILES["file"]["type"] 变量来知道文件的扩展名。(或者你可以像这里一样使用爆炸)

如果您愿意,可以将扩展名与图片名称分开保存,但这取决于您

于 2012-07-03T16:54:41.270 回答
0

将保存图像的数据库字段应该是二进制文件。图像名称应该或可以包含全名;那是文件扩展名。您的代码可以在显示名称之前从全名中去除 .gif。

您可以这样做的另一种方法是将命名信息保存在数据库中,并将实际图像保存在您网站上的文件夹中。

于 2012-07-03T16:51:46.347 回答
0

为什么需要 ID 字段?只要“uniqueimagename”列包含唯一值,即是您的标识符。

您也不需要为图像类型设置单独的列。图像名称将包含扩展名。

于 2012-07-03T17:04:11.330 回答