搜索

首页  >  问答  >  正文

写论坛遇到问题了,有空的朋友帮帮忙

收藏的帖子被用户删除了,这说明帖子表没有这个帖子了,但是收藏表还有数据,我用关联的查出来是空的,然而我要的结果是显示“该帖子已被删除”

php代码:

$collect = db('collect')->where('user_id',session('user_data.id'))

->alias('a')->join('content b','a.content_id=b.id')

->paginate(10);

帖子表:

收藏表:

雪梦晨、曦雪梦晨、曦1337 天前957

全部回复(2)我来回复

  • 枫叶知秋

    枫叶知秋2021-04-07 17:56:29

    不要物理删除,尽量逻辑删除,修改状态。

    目前设计用LEFT JOIN试试

     db('collect')->where('user_id',session('user_data.id'))->alias('a')->leftJoin('content b','a.content_id=b.id')->paginate(10);

    回复
    0
  • 查无此人

    查无此人2021-04-07 11:45:12

    这个属于设计的问题。按理说,不应该让用户删除数据库的数据的。

    就算删除,也只是把状态改为 删除,真实的数据,还存在。

    如果你要做可以删除数据库里的数据,那用户删除这个帖子的时候,要把这个帖子的相关数据 都删除。

    所以还是建议你, 改变帖子的状态, 当删除帖子后,另一个人查询这个帖子,提示该帖子已删除就好了。

    而你是管理员,查询时,就不会因为数据丢失 而出错

    回复
    0
  • 取消回复