我在上一个问题上收到了很多帮助。这是我在的地方:
我正在为学校的约会网站项目构建线程消息系统的最后一步,并希望在消息是新的时突出显示不同的bg颜色。这是表结构:
CREATE TABLE `messages`
(
`id` bigint (20) NOT NULL AUTO_INCREMENT ,
`fromme` integer (11) NOT NULL,
`tome` integer (11) NOT NULL,
`subject` varchar (255) NOT NULL,
`message` longtext NOT NULL,
`mydate` datetime NOT NULL,
`thread` varchar (255) NOT NULL,
`receipt` varchar (50) NOT NULL,
`INDELETE` varchar (5),
`SENTDELETE` varchar (5),
PRIMARY KEY (`id`)
) TYPE=MyISAM CHARACTER SET latin1 COLLATE latin1_swedish_ci;
此查询确定是否有新消息(正常工作):
select * from messages where tome = '$yes' && receipt = 'n' and INDELETE !='y';
然后显示例如“3个新消息。”
所有这些都正确显示。唯一的问题是收件箱。 Ollie Jones和Bill Karwin为我提供了一些很好的帮助,它确实按预期工作,但是当你回复收件箱后,该消息现在消失了。
SELECT messages.id,
messages.fromme,
messages.subject,
messages.message,
messages.receipt,
messages.mydate,
messages.thread,
users.firstname, users.lastname, users.image1
FROM messages,
users,
(SELECT MAX(messages.id) id, messages.thread thread
FROM messages
GROUP BY messages.thread) latest,
WHERE messages.tome = '$yes'
AND messages.INDELETE !='y'
AND messages.fromme = users.id
AND messages.id=latest.id
ORDER BY messages.mydate desc
目标是将所有消息保留在收件箱中,只需突出显示上面的新消息并按线程对它们进行分组。有任何想法吗?谢谢JC
答案 0 :(得分:0)
查看回复邮件时运行的代码。现在将它与查询的where子句进行比较,以便在收件箱中提取消息。
发送回复时您正在执行的操作导致邮件不符合收件箱查询的条件。没有看到回复代码,这是我能给予的唯一帮助。