0

我正在尝试使用盐(来自全局文件)和模板表单中的变量创建哈希。我需要在模板中创建哈希。也许我遗漏了一些明显的东西,但我无法将 $hash 传递给 php 文件。变量 bspid 和 sspid 没有问题地传递。代码:

<select name="bspid">
{section name=all loop=$buySides}
. . . .
</option>
{/section}
</select>
<input type="hidden" name="sspid" value="{$smarty.get.id}">
{ $hash=md5({$smarty.const.salt}.{$smarty.get.id}.bspid) }

` [提交按钮]

任何帮助将不胜感激。谢谢你。

4

1 回答 1

0

通常 PHP 用于为 smarty 模板提供数据。所以你想在 smarty 中生成一个哈希值并传递给 php?

我强烈建议不要这样做,因为

  • Smarty 的内置{php}函数被弃用是有充分理由的。
  • 将模板代码与 php 函数混合是一种不好的做法。
  • 可能有更多的原因不像您的示例所暗示的那样这样做。

您的示例提示您要根据选项框中的某些选定值动态创建 md5 哈希。

如果是这种情况,它甚至无法正常工作,因为 md5 只会在加载模板时计算一次 - 而不是如果更改了所选选项。如果你想动态生成一个 md5 以在 html 表单中使用,我建议添加一些javascript来存档它。如果您已经在使用 JScript 框架,那么其中大多数都是 md5 插件。

为了向您提供有关如何解决此问题的更多信息,也许可以更多地解释一下您要使用此归档的内容以及为什么要从选择框中散列某些内容。

于 2012-07-18T07:10:16.523 回答