2013-03-09 2 views
0

У меня есть код PHP, который отлично работает как есть. Однако я хочу вывести Dropdownlist в мой файл TPL. Как я могу это сделать?Выход Dropdowlist в файл TPL

<?php 

mysql_connect("$host", "$username", "$password")or die("cannot connect"); 
mysql_select_db("$db_name")or die("cannot select DB"); 

$sql="SELECT * FROM $tbl_name ORDER BY SORT_ORDER ASC"; 
$result=mysql_query($sql); 
if ($result === false) { echo "An error occurred."; } 

?> 

<html> 
<head> 
<title></title> 
</head> 
<body> 
<select name="usrname" id="usrname"> 
<option>Select employ</option> 
<?php 
while($rows=mysql_fetch_array($result)){ 
?> 
<option value="<? echo $rows['ID']; ?>"><? echo $rows['TITLE']; ?></option> 
<?php 
} 
mysql_close(); 
?> 
</select> 
</body> 
</html> 

ответ

1
<option value="<? echo $rows['ID']; ?>"><? echo $rows['TITLE']; ?></option> 

у забыть php text in <?php .... ?> ..please изменить этот код, как это ..

<option value="<?php echo $rows['ID']; ?>"><?php echo $rows['TITLE']; ?></option> 
+0

Это не то, что я имел в виду. Я думаю, мне нужно как-то назначить его: $ tpl -> assign Я хочу вытащить его из .tpl, а не PHP. – user2063873

0

что вы имеете в виду .TPL?

вы можете просто передать вам «а (...) {...}» часть в другой файл (скажем select.inc.php) и включают его

, но если вы хотите объект $ TPL , создать класс первый, например, в template.class.php:

class Template { 

    private $file; 
    public $result; 

    public function __construct($file) { 
     $this->file = $file; 
    } 

    public function display() { 
     ob_start(); 
     include $this->file; 
     ob_end_flush(); 
    } 
} 

включить его и создать файл шаблона select.tpl:

<select name="usrname" id="usrname"> 
<? 
while($rows=mysql_fetch_array($this->result)) { 
?> 
    <option value="<?=$rows['id']?>"><?=$rows['name']?></option> 
<? 
} 
?> 
</select> 

, наконец, создать экземпляр и вызвать метод отображения() в скрипте:

$tpl = new Template('select.tpl'); 

$tpl->result = $result; 

$tpl->display(); 
Смежные вопросы