0

环境:Apache/2.4.4 (Win32) OpenSSL/0.9.8y PHP/5.4.19

我是使用 TinyButStrong 的新手。

从 MYSQL 存储过程中得到结果,数据如下所示:

vardump($auth_user_list); 
//example of output
array(10)
{ 
  [0]=> array(2) 
  { 
    ["id"]=> string(1) "1" 
    ["login"]=> string(5) "User1" 
  } 
  [1]=> array(2) 
  { 
    ["id"]=> string(1) "2" 
    ["login"]=> string(5) "User2" 
  }
...
 } 

使用 TinyButStrong 我合并结果

$TBS->MergeBlock('auth_user_list',$auth_user_list);

在加载页面上:

<select id="user_list" name="user_list" onchange="$('#username').val(this.options[this.selectedIndex].text)">
      <option>Select user<option>    
      <option>[var.auth_user_list.login; block=opt]</option>                                
 </select> 

结果中的选项未加载到我的选择列表中。我做错了什么 - 我遵循了模板。

我也收到此通知,因为我将 error_reporting 设置为 E_ALL

Notice: Array to string conversion in C:\xampp\htdocs\Landells\classes\tbs_class_php5.php on line 1253
4

2 回答 2

1

由于您正在合并一个名为 的块auth_user_list,因此您的模板应该是:

<option>[auth_user_list.login;block=option]</option>

var是用于合并嵌入在某些参数中的标签的前缀,例如 if/then/else/script/... 在较旧的 TBS 版本中,它也用于合并自动字段,但不用于合并块。

于 2013-12-09T21:29:11.830 回答
0

我从未正确引用过该块。

它应该是:

<option>[var.auth_user_list.login; block=option]</option>
于 2013-12-09T17:14:37.417 回答