2016-04-20 114 views
0

我在项目iam上工作时遇到问题。在我的应用程序的一个路由(程序/消息)中,用户可以创建和编辑消息(使用ckeditor textarea)。这些消息保存在数据库中。在另一条路线(程序/显示)上,应用程序生成带有由用户创建的消息(从数据库中检索)的html网站。问题是我需要更新显示视图(无需刷新网站),当用户更改消息数据中的某些内容时(编辑或创建新/删除)。任何解决方案Iam使用codeigniter作为后端。当数据库更改数据时更新视图

+0

如果我理解的很好,你有回合url同时活跃,并且如果一个用户在消息更新信息中想要同时更新显示,不是吗?如果是,你需要刷新自动显示ajax – elddenmedio

回答

0

您可以使用

jQuery的ajax()功能 Javascript setInterval()功能

将时间间隔设置为执行ajax函数以查看数据库中是否存在某些更改的某个时间。如果有变化,则更新Ajax调用成功的视图。 还有另一种解决方案,使用triggers in the database。但我对此不太确定。

+0

thx回答,我如何检查数据库更改?我是否需要检查所有值并将它们与旧值进行比较,或者有一些更优雅的方法? – Vartex05

+0

我认为你应该触发这一点。比方说你做了一个更新,在那个更新中,你使用具有时间戳的触发器将更新的数据插入到日志表中。在你的ajax调用中,发送一定的时间,从中可以比较日志表中的日期。如果日志表中的时间戳大于您通过的时间,那么您可以做任何你想做的事。您可以通过获取当前时间戳 - (减去)执行间隔的时间来发送时间。 –