存储网页中的图片

15 浏览
0 Comments

存储网页中的图片

我正在为我的网页开发一个个人资料系统,但我想知道存储图片的最佳方法是什么。我读到的第一种方法是在MySQL中使用BLOB。第二种方法是我最初计划使用的,首先我会从一个上传脚本获取图片,然后给图片一个id(md5),然后将图片重命名并移动到一个名为"md5".jpg的文件夹中。我想知道最好的选择是什么。

0
0 Comments

存储网页中的图片

对于存储网页中的图片的问题,我之前看到过这个问题并且通常被接受的答案是将图片存储在一个文件夹中,并将URL存储在数据库中。我认为从文档和我在网上阅读到的共识来看,使用BLOB在数据库中存储图片虽然在技术上是可能的,但并不是一个理想的场景。

数据库通常与数字、字符串和数据文件一起使用。

以下是一些关于你所问的问题的链接:

- [在数据库中存储图片](https://stackoverflow.com/questions/1071636)

- [在数据库中存储图片-是还是不是?](https://stackoverflow.com/questions/3748)

数据库是与数据文件一起工作的吗?

- 是的,这就是BLOB SQL数据类型(Binary Large OBject)的作用。这是一个有趣描述的链接:[链接](http://searchsqlserver.techtarget.com/definition/BLOB)

0
0 Comments

问题的出现原因:MySQL的默认配置限制了可以处理的数据大小,超过max_allowed_packet大小的数据无法处理,因此对于TEXT/BLOB类型的数据,特别是LARGETEXT/LARGEBLOB类型,在默认配置下几乎没有用处。

解决方法:将图片存储在硬盘上,并在数据库中存储路径或ID。在数据库中存储的优势非常小,而且可能会导致速度变慢。

0
0 Comments

存储网页图片的问题出现的原因是,使用blob存储图片会增加服务器和PHP的工作量。为了解决这个问题,可以选择使用实际文件并为图片分配一个ID。下面是一个简单的解决方法:

首先,在HTML代码中为图片元素添加一个唯一的ID,例如:

然后,在服务器端,可以使用PHP来处理该图片文件,并将其存储在指定的位置。可以使用以下代码来实现:

$imageId = "image1";
$imagePath = "/path/to/store/images/";
// 获取图片文件的内容
$imageContent = file_get_contents($_FILES["image"]["tmp_name"]);
// 将图片文件保存到指定路径
file_put_contents($imagePath . $imageId . ".jpg", $imageContent);

以上代码中,通过获取上传的图片文件内容,并将其保存到指定路径下的文件中。这样,图片就被存储在了服务器上,可以在网页中使用该文件的URL来显示图片。

在网页中使用这个存储的图片文件时,只需使用之前定义的ID即可。例如,可以使用以下代码来显示图片:

通过以上方法,可以避免使用blob存储图片而增加服务器和PHP的工作量,同时能够有效地存储和展示网页中的图片。

0