类似uc首页新闻列表,如何获取文章内图片?
效果参考:
UC浏览器首页新闻列表
图片上传:
发布帖子时候通过富文本编辑器自带的图片上传功能上传图片。
数据表准备:
帖子表,附件表,中间表
问题描述:
1、用户上传图片时候讲图片信息写入附件表,提交帖子时候讲帖子信息写入帖子表,那么如何知晓帖子中插入了哪张或者哪几张图片呢?因为可能会涉及到用户发帖时上传了图片,但最终没用到这个图。
2、在实现UC列表页效果时候,是通过中间表获取相关图片的信息,如果小于三张图就过去第一张图片展示。如果超过三张就过去前三张图片展示,是这样吗?
希望有过此类经验或者有自己想法的大神给予指点一二,拜谢!!
现在最主要问题就是中间表,什么时候插入关联关系?通过什么来插入关联关系呢?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
1、你的中间表应该是个
帖子附件关联表
感觉你的逻辑有些问题
因为上传图片的时候还不用把附件插入到数据库中
你上传图片如果是即时保存在本地的话 后端处理上传逻辑返回前台页面一个图片路径就可以了
最后,你提交文章的时候,先插入到帖子表,然后再用拿到的
帖子ID
和附件路径
的形式插入到帖子附件关联表
,这样。2、UC这种展示形式,不是他们的程序员不知道他们具体怎么弄的,按照你给的图片来看,应该如你所说的那样,图片多少展示的样式也就不一样。
(PS:如果你非要在上传图片的时候就要把图片信息存在数据库中的话,你就返回附件表里的ID就好,把ID用个隐藏域放到前台,然后提交帖子的时候,跟上面一样,拿到
帖子ID
和附件ID
再插入到你的中间表中。不过这样就会在后续增加很多事情,比如你帖子没提交的时候,删除已上传的附件,然后你删完本地图片还要删数据库信息。岂不是很麻烦?)可以参考discuz的做法,每篇文章有一个唯一ID,每张图片都插入数据库,都对应文章的唯一ID,然后文章的结构记录下共有多少张图片就可以了。
参考一下,SF 头条的做法,https://segmentfault.com/news
其实很简单,就是分析目标网页的 html 内容,正则匹配出第一张图片的链接,用于展示
建一个关联表:id,uid,newsid,image_ids........
images可以用Json格式存储多张图片,存路径就好,然后你调用的时候直接xxxx.com/路径,这个操作,最好是加载你的富文本编辑器上传图片的时候,默认关联上当前登录的uid,文章id等信息,然后图片统一上传到图片服务器的相关路径即可。