簡體   English   中英

在模板中從Smarty變量創建Smarty變量

[英]Creating a Smarty variable in a template from smarty variables

我正在嘗試使用鹽(來自全局文件)和模板形式的變量來創建哈希。 我需要在模板中創建哈希。 也許我缺少明顯的東西,但是我無法將$ hash傳遞給php文件。 毫無問題地傳遞變量bspid和sspid。 y代碼:

<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) }

`[提交按鈕]

任何幫助將不勝感激。 謝謝。

通常,PHP用於為Smarty模板提供數據。 因此,您想在smarty中生成哈希值並將其傳遞給php?

我強烈建議您這樣做,因為

  • Smarty的內置{php}函數被淘汰是有充分理由的。
  • 將模板代碼與php函數混合使用是不好的做法。
  • 像您的示例提示中所述,可能還有更多不這樣​​做的原因。

您的示例暗示您要根據選項框中的某些選定值動態創建md5哈希。

如果是這種情況,它甚至將無法正常工作,因為md5在加載模板時只會被計算一次-如果更改了所選選項,則不會計算一次。 如果要動態生成md5以在html表單中使用,建議您添加一些JavaScript來對其進行存檔。 如果您已經在使用JScript框架,那么其中大多數都是md5插件。

為了給您提供有關如何解決此問題的更多信息,也許可以進一步解釋一下您要對此進行歸檔的內容以及為什么要從選擇框中散列某些內容。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM