简单的Web应用程序称为CMS,但有ajax问题

时间:2011-11-02 05:18:44

标签: php javascript ajax web-applications content-management-system

我构建了一个简单的,7页,数据库驱动的网站,我想为它构建一个简单的CMS。一个超级简单的CMS,用于更改某些页面上的文本并将图像上传到另一个页面。我甚至不会把它称为CMS。我主要是为了构建Web应用程序的学习体验。

我在想,是使用php构建一个简单的登录处理的简单网页。然后使用ajax为每个页面加载不同的模块。就像在主页上一样,我希望只有文本可以更改。我认为我可以做的是使用ajax加载另一个php页面,它只是加载一个tinymce编辑器并使用数据库中的文本预加载它,并使用一个简单的ajax按钮将文本上传到数据库。类似于iframe,但没有iframe。

当我尝试这一切时,我得到的是一些文字和文本框。原来它只加载文本而不是javascript。在进一步阅读后,我发现我可以使用eval来转换加载到javascript中的文本,但这会导致我理解的范围问题。

所以我基本上想知道如何做到这一点,我的目标类似于谷歌和/或雅虎邮件应用程序。我一开始想我可以抛出我要在主页上使用的所有javascript代码,只是用ajax加载内容,但是从我读过的内容来看,javascript将不会将其自身应用于新代码,因为它不是'当代码在首次加载页面时应用于DOM元素时。我的下一个想法是加载内容然后使用jquery加载脚本并将其应用于新加载的内容,但尝试在其上找到任何内容最多令人困惑。

有没有人做过与此类似的事情,愿意分享他们学到的东西,或者只是知道我在说什么,可以帮助我吗?或者解决方案很简单,我只是没有看到它?

2 个答案:

答案 0 :(得分:0)

保持简单。您不需要AJAX来构建简单的CMS。只需广告支持处理查询参数,例如?edit = true到您的网页。当服务器接收到该内容时,将页面打包成支持代码编辑的编辑器,例如EditArea。为了保存,简单的HTTP将数据发布回服务器并将其存储回数据库,甚至更好,直接返回磁盘。如果你做得对,你可以连线直接编辑每个页面的php文件。是的,很多人都这样做了:)祝你好运。

答案 1 :(得分:0)

我们可以使用更多细节(例如代码,程序等)但是,我想帮忙。

关于tinymce,这是我对它的看法:

  • 创建一个包含timyMCE的php文件。我们将它命名为“tinymce.php”
  • 创建一个加载数据库中文本的php文件。我们称之为“defaulttext.php”
  • 在您的主页(应用页面)上,通过ajax加载“tinymce.php”。这会将tinymce编辑器从php文件加载到主应用程序页面
  • 在加载“tinymce.php”之后创建一个回调(在前一个过程成功后调用函数)。在此调用中,调用“defaulttext.php”并将其内容加载到之前加载的“tinymce.php”内容的文本框中。

总共有2个调用:调用编辑器,然后调用默认内容。

您可以使用预加载的脚本在加载任何内容之前执行所需操作。创建脚本来处理DOM,事件等(事件处理程序)。