果壳问答中 楼中楼 是怎么实现的?

就是可以在回答下讨论的功能。。。。。。

推荐  (0) | 11人关注关注
8个答案
10 0

如果楼主你不是学web的, 你大可不必自寻烦恼. 如果你是的话, 大致思路如下

无非就是
数据库里多一个表格, 然后这个表格的foreign key = 普通回答的primary key
然后php(或者aspx, asp, cgi这些动态页面)刷页面的时候, 先获取主贴ID, 拿到普通回帖的表格里搜下, 然后把和主贴有关联的回帖数据都拉出来, 按时间顺序(asc)和 (thumb up次数-thumb down次数)后的值来排序生成HTML代码. 在拉回帖数据的同时, 把每个回帖的ID, 再拿去第2行里说的那个表格里搜, 把返回的数据再按时间顺序, 降序(desc)生成HTML代码

我上面说的数据库查询是一步一步来的, 效率低, 实际查询起来的语言则非常复杂的一段. 我不是数据库专精, 也给不了你搜索语言, 只能坐等别的SQL达人给你解惑了

补充一个: 果壳的楼中楼的数据(也就是讨论)调出的时候, sql并没有进行2次搜索. 第一层的回复自身有个field, 装着你说的"楼中楼"(讨论)的数目. 当你点击展开讨论的那个连接的时候, 用到的技术是ajax, 说白了就是javascript读取另外一个php(或者aspx, asp, cgi这些动态页面)文件, 然后等该php(或者aspx, asp, cgi这些动态页面)文件把需要是数据从数据库里拉出来, 返回来以后, 添加到现有的HTML代码里.如果你是使用jQuery的话, 请查阅$.ajax()这个函数的文档. 至于后台的php拉数据, 还是和上面说的大同小异

2 0
支持者: URAD 听梦说

三张表
第一张,记录主贴内容+postid=XXX 进行搜索
第二张,记录主贴的主回复的内容+postid=XXX
第三张,记录楼中楼的内容+postid=XXX&zhuhuifuid=YYY

进入这贴子时先搜索第一张表
输出内容,如“什么是php”

回复那里,搜索第二张表,凡是postid=XXX,就输出到回复栏,每输出一个主回复又根据postid=XXX&zhuhuifuid=YYY 搜索第三张表,输出到主回复的下面

2 0

纸帆船没人爱的怪胎

2013-08-23 17:19
支持者: URAD 听梦说

在数据库表里面添加2个字段来识别就可以实现了,说的简单点:用第一个字段判断这行数据是一个回答还是一个讨论,用另一个字段判断这行数据是属于哪个回答的讨论。
下面是详细点的
(如果你不是学WEB的可能根本就看不懂)
添加2个字段,名称我就设成“字段一”、“字段二”
字段一:记录0或1。0表示这一行数据是一个“回答”,1表示这一行数据是一个“讨论”。
字段二:记录与ID有关的数值。如果这一行数据是“回答”,则这个字段与ID值相同,如果这一行数据是“讨论”,则这个字段是所讨论的“回答”的ID值。(举个例子:“回答1”的ID是3,其下有4个“讨论”,那么这个4个讨论的字段二都记录为3)
PS:ID是一个唯一标识值,懂数据库的人应该不用多解释。
PS:提交表单的时候做一些简单的判断语句就可以自动记录这2个字段的值了,如果你看不懂,下面的也可以不用看了

然后就是输出到网页了,主要是一些判断语句
输出回答:查询所有数据中“字段一”的值为0的数据,输出到网页上
输出讨论:查询所有数据库“字段一”的值为1的数据,再将查询到的数据中“字段二”的值与“回答”的ID相同的数据输出。(举个例子:“回答1”的ID是4,查询数据库中“字段一”的值为1且“字段二”的值为4的数据有3个,那么将这3个数据输出到”回答1“下面作为“讨论“)

1 0

理查KILOPM的心,USER的命

2013-08-24 13:36
支持者: URAD

這是WEB設計的基本內容了,用一張表就可以完成了。簡單來說,數據表只要有兩個字段:
字段一:UID,就是獨立無重複的一個數字,類似你的身份證號。
字段二:對應ID,就是該回覆對應的UID,
字段三:內容等,這個不用多說。

以下舉個簡單例子:

UID 對應ID 內容
001 0 略
002 0 略
003 0 略
004 001 略
005 001 略
006 004 略

先看001至003,為第0層,沒有對應的ID,就是普通的回覆。
再看004和005,對應ID為001,即是001的樓中樓。
而006不用多說,就是004的樓中樓,也是001中的樓中樓中樓!!
如此類推,可以對應到無限級的樓中樓。
這是數據表的設計。

至於其他,@无证陈序猿 也說得差不多了。

如果很有興趣,百度關鍵詞是無限級分類

0 0

看不懂的默默飘过……

0 0

报告,我用360浏览器目前不能打开楼主了

0 0

Edimion结构工程硕士

2013-08-24 11:08

我还以为你说的是巨型框架结构……

查看更多

添加回答

登录 后回答问题,你也可以用以下帐号直接登录

相关问答

关于我们 加入果壳 媒体报道 帮助中心 果壳活动 家长监控 免责声明 联系我们 移动版 移动应用

©果壳网    京ICP证100430号    京网文[2018] 6282-492号    新出发京零字第朝200003号     京公网安备11010502007133号

违法和不良信息举报邮箱:jubao@guokr.com    举报电话:18612934101    网上有害信息举报专区    儿童色情信息举报专区