2013-04-24 70 views
1

我是smarty的新手,所以在使用它時遇到了很多困難。 我有以下網址:如何訪問smarty模板中的URL值?

http://localhost/schooling_needs/sneeds1.0/web/control/modules/chapter_youtube_videos/chapter_youtube_videos.php?chapter_id=102 

我想chapter_id的值分配給智者模板的文本字段。爲此,我編寫了以下代碼,但沒有得到正確的值。

<input type="text" name="chapter_id" id="chapter_id" value="{$chapter_id}"> 

該文本字段沒有得到任何值。你能否告訴我應該如何將chapter_id的值分配給上述文本字段? 在此先感謝。

回答

4

您需要在代碼中將其分配給您正在使用的smarty模板。例如:

$smarty->assign('chapter_id', $_GET['chapter_id']); 

之前,你fetch/display您的模板。 ^^

由於OP的侷限性,使用內置的智者,而不是單獨分配給頁:

{$smarty.get.chapter_id} 

將直接提供其從$_GET陣列。

+0

其實我想從URL訪問值。 URL是動態生成的,因此我無法分配值。你能提出任何方式來訪問來自URL的chapter_id的價值嗎? – PHPLover 2013-04-24 06:29:49

+0

'$ smarty.get.chapter_id'應該可以工作。 ^^ – Jon 2013-04-24 06:32:01

+0

嘿,夥計你的伎倆爲我工作。非常感謝你的幫助。 – PHPLover 2013-04-24 06:36:46

0

使用$_REQUEST這樣的:

$chapter_id = $_REQUEST['chapter_id']; 

這裏,$_REQUEST['chapter_id'];會從該網址的節段ID。

+1

這真是太棒了,它是PHP的工作原理。但它在smarty模板中沒有幫助。 – Jon 2013-04-24 06:22:02

0

您可以使用$smarty.get.parametername訪問模板中的$_GET參數。所以,你的代碼應該是這樣的:

<input type="text" name="chapter_id" id="chapter_id" value="{$smarty.get.chapter_id}"> 

你可以閱讀更多的Smarty documentation