我有一个表单在mysql数据库中搜索用户所追求的内容,并在div中的同一页面上返回结果(使用ajax然后php搜索mysql)...
结果是广告,例如汽车,我希望每个广告都有一个与之关联的独特图片,以便在广告旁边显示图片......
在BLOBS中存储图像并不是我听过的一个很好的解决方案......
我如何以最好的方式做到这一点?
感谢名单
答案 0 :(得分:3)
如果要将不同类别的图像放在不同的位置,快速的方法是将图像存储在文件夹中,在文件夹或单独的文件夹中提供唯一的文件名。搜索可用广告后,请将相关的唯一文件名和服务器读取到客户端。
假设您将与汽车广告相关的图片保存在文件夹/images/cars/
中。用户搜索奥迪S6,结果返回5个广告。
现在我们将根据图像文件的命名进行操作。如果您提供与每个广告唯一名称相关的文件,并将该名称放入该广告的记录中,那么只需获取该名称并创建图片网址,如下所示:
/images/cars/ + result_row('image_name')
如果您根据广告记录的ID命名图像,请使用此方案:
/images/cars/ + result_row('id')
如果你的意思是,首先你发送的图像字节是响应,那么你不需要这样做。只需发送构建的路径,并在src
标记的img
属性中使用它。
PS: - 我的PHP技能现在不是很好!
答案 1 :(得分:3)
通常,您希望将图像记录存储在数据库中,作为有关图像的详细信息,然后是实际图像的文件路径。然后,将图像存储在常规文件系统中。
作为最佳实践,您通常希望存储相对于某个公共根目录的路径,然后您可以附加文件根目录,以便可以移动图像存储。 即>商店广告/汽车/ 1005.jpg然后追加'C:/ myApp / images /'的根
答案 2 :(得分:0)
每个唯一广告都会在数据库中包含唯一标识符。您可以为给定的图像集创建图像子目录,并根据其唯一标识符保存图像。
即。广告506可以存储在/img/506.jpg
最终你会在数据库中查询广告,然后你会假设你正在加载文件名identifier + '.jpg'