php - 是否可以使用 cron 来代替 JavaScript 中的硬编码值?

标签 php javascript mysql cron dynamic-forms

通过查看这个 fiddle 可能最容易理解:

http://jsfiddle.net/TdBdW/1/ - 对于缺少 CSS 表示歉意。

如您所见,对于动态生成的下拉列表和文本框,我有一个很大的硬编码值列表。我本来希望直接从数据库中提取这些数据,但是查询需要很长时间才能运行,无法实时使用 - 即当用户单击下拉菜单或尝试在自动完成框中键入内容时.

相反,我想做的是使用 cron 作业每晚运行相关查询,但问题是如何获取查询结果并将它们放入我的 javascript 文件中。

有人知道如何实现这个吗?

非常感谢任何帮助。

马丁

最佳答案

实现您想要的目标(“cron 作业创建供 javascript 使用的数据”)的最佳途径是通过 JSON。这涉及到:

  1. 创建一个 cron 作业,a) 获取数据,b) 将其写入使用 JSON 约定格式化的文件,该文件可从您的网络服务器访问,
  2. 修改您的 html 以包含由 cron 作业创建的文件。

为简单起见,您可以使用类似于以下内容的内容创建 JavaScript 文件:

var agentValues = [
        "excel",
        "msword",
        "ppt",
];

您可以使用静态的第一行和最后一行轻松创建此内容,只需在其间添加查询中的带引号的值即可。然后,您可以像任何其他 javascript 一样将此文件加载到 html 文档中:

<script type="text/javascript" src="..."></script>

当您填充自动完成值时,只需对此数组使用 for 循环即可:

for (var i = 0; i < agentValues.length; i++) {
    $("<option>" + agentValues[i] + "</option>").appendTo($values);
}

以上是实现您的目标的最基本版本,您可以对其进行改进,例如作者:

  1. 添加错误检查
  2. 构建您的命名空间,这样您就不会拥有太多顶级变量
  3. 将数据值添加到现有的 JavaScript,而不是单独的文件
  4. 等等

关于php - 是否可以使用 cron 来代替 JavaScript 中的硬编码值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5633279/

相关文章:

PHP mkdir() 和 fopen() 不起作用 - 权限问题?掩码问题?

javascript - react 中的内联样式在打印模式下不起作用

mysql - 折扣表如何处理?

mysql - 查找 SQL 查询中的单词是否在子查询中

php - 将奇数行的 CSV 导入 MySQL

javascript - 无法正确提醒已选中复选框的 ID

Php 或 mysql 命令 - 将 mysql 行中的数据写入文本文件

javascript - 正则表达式检查是否存在空格?

javascript - ScrollMagic 销垫片太大

mysql - 将记录从 mysql 数据库中的表复制到 SQL-SERVER 2008 数据库?