2013-03-11 20 views
0

注意:我不得不使用TPL文件。我查看了本网站上的其他解决方案,但他们似乎并不适合我。我知道使用$ _POST ['book']选择了我想要的选项。 我已经尝试{html_options}(聪明),似乎没有任何工作。我想要做的就是当用户点击提交(GO)按钮时记住下拉列表的位置。实现这个最简单的方法是什么?最简单的方法来记住在Postback中选定的下拉位置

<?php 
if($_SERVER['REQUEST_METHOD'] == 'POST') 
    { 
     $book = $_POST['book']; 
     $chapter = $_POST['chapter']; 
     $tbl_link = "PLD_LINK"; 

     $query_chapter = "SELECT `TITLE`,`SORT_ORD`, `DESCRIPTION` FROM $tbl_link WHERE `TITLE` LIKE '%$book%' && `SORT_ORD` = '$chapter'"; 
     $search_chapter=$db->query($query_chapter); 
     while($row = $search_chapter->fetch(PDO::FETCH_ASSOC)) { 
     { $coal[] = $row; } 
     $tpl->assign('coal', $coal);      
                  } 
     $search_chapter->closeCursor(); 
    } 
?> 
<?php 
while($rows = $result->fetch(PDO::FETCH_ASSOC)) { 
{ $results[] = $rows ; } 
$tpl->assign('results', $results); 
} 
?> 

.TPL:

<select name='book'> 
{foreach item=rows from=$results} 
<option value='{$rows.TITLE}'>{$rows.TITLE}</option>{/foreach} 
</select> 

回答

1

编辑您的模板文件

<select name='book'> 
{foreach item=rows from=$results} 
<option value='{$rows.TITLE}'{if isset($book) && $rows.TITLE == $book} selected{/if}>{$rows.TITLE}</option>{/foreach} 
</select> 

,并在你的PHP文件分配$value

$tpl->assign("book", $book); 
+0

感谢那些工作,这是非常非常简单。 – user2063873 2013-03-11 19:03:09

相关问题