0

我从这里http://querybuilder.js.org/demo.html使用 jQuery 的查询生成器,我的主页是用 PHP 编写的。我使用查询生成器基本上指定了我想在条件语句中使用的条件。

例如,我距离将输入转换为格式 (((A == B) && (C != A)) || (D == E)) 并不太远。为此,我使用了大部分此解决方案。https://stackoverflow.com/a/26607204/1724376

现在我一直在想我可能走错了路,因为我可以将“$”附加到变量并可能使用 eval() 但这是我真的不想做的事情,即使这将是一个内部站点。

有 36 个变量,所以我想不出任何其他解决方案来构建条件语句,因为用户想要(并且应该能够)用作条件的内容可能有多种排列。

恐怕答案是 eval() 是唯一的选择,但作为我放弃工作时间之前的最后努力,我想我会问比我聪明得多的人。

指导将不胜感激。

编辑:我的最终目标是允许 jQuery 查询构建器式 UI 允许用户指定执行特定功能的确切条件。该功能不会改变,但条件可能会改变。用户不需要修改代码。

4

1 回答 1

0

经过大量研究,我只能找到 eval() 作为一种可行的方法。我通过限制变量的大小来清理输入,将它与我知道的 select 语句中的有效选项进行比较,并验证输入除了字母和数字之外不包含任何内容。

我希望有更好的选择,但这种方法目前似乎可行。

于 2017-12-06T22:47:56.540 回答