将内容加载到应用程序的最佳方式

时间:2012-05-16 15:51:56

标签: php javascript mysql html database

我有一个项目,我需要将数据库中的文本写入HTML5 canvas / Javascript应用程序。

要选择此内容,我已经指定了一个属性“reference”,我可以在其中向内容id询问数据库,例如:index.php?reference = exercise1。

我使用过AJAX,因为我需要将文本内容放到Javascript变量中,以便在画布上写入数据。 我的解决方案正在运行,但我需要从Javascript document.URL获取引用属性值,而不是PHP $ _GET。

以下是代码:

var url = decodeURIComponent(document.URL);
var attr = "reference";
var attrPos = url.lastIndexOf(attr);
var referencePos = attrPos + attr.length + 1;
var reference = url.substr(referencePos,url.length);

我正在做的事似乎不是对我来说干净的方式。

首先,?reference =应该与PHP $ _GET一起使用,而不是通过Javascript攻击。

然后,我必须使用lastIndexOf()而不是search()方法,以便在我的应用程序位于名为“reference”的文件夹中时获得良好的值。

但是,如果我的项目位于名为“reference”的文件夹中,其中包含localhost / reference / projectfolder / index.php等URI以及数据库中名为“projectfolder”的引用,即使我有内容,它也会加载内容没有要求index.php?reference = projectfolder

根据您的经验,在我的案例中最好的解决方案是:能够使用Javascript来获取PHP / MySQL数据。 Ajax似乎是最好的方式,但你可以看到它不干净,至少我的解决方案。

感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

  

但是,如果我将项目放在名为“reference”的文件夹中,并带有URI   比如localhost / reference / projectfolder / index.php和一个名为的引用   数据库中的“projectfolder”,即使我也会加载内容   有没有要求index.php?reference = projectfolder

如果您在请求index.php时希望文档为空,请检查是否设置了$ _GET [“reference”],然后返回一个空体。

  

根据您的经验,在我的案例中,最佳解决方案是什么:能够   获取用于Javascript的PHP / MySQL数据。 Ajax似乎是最好的   方式,但你可以看到它不干净,至少我的解决方案。

检查这个要点,了解如何在您的身体https://gist.github.com/2627924

中返回JSON