TinyButStrong如何使用块与php var比较数据值?

时间:2014-01-10 15:41:07

标签: php html mysql tinybutstrong

环境:PHP 5.3.5 MySQL Server 5.5.8

现在正在使用TBS 3.7.0使用TBS 3.8.2

在我合并到TBS(TinyButStrong)的sql数据集中,我有一个发件人/收件人信息。我想显示当前不是用户的那个。我无法获得TBS IF THEN语句。

在PHP中

$user_id = getUserId(); // returns user id
...
$TBS->MergeBlock('activity',$sql_data);

在html中,第一个名称没有被填充,而姓氏是因为我只是直接请求该值,即使它可能是不正确的值。

<li>
   <div id="name">
     <a href="">
        [
         if [activity.sender_id]!=[var.user_id];
           then[activity.sender_firstname];
         else[activity.recipient_firstname];
           block=li;headergrp=message_id;ope=max:12
        ]
        [activity.sender_lastname;block=li;headergrp=message_id;ope=max:12]
      </a>
    </div> 
</li>

我一直在搜索和阅读TBS手册,但使用if / else with blocks的例子不是这样的。

请有人帮我告诉我这是错误的吗?

目前我的输出如下:

[if1!=2;then Joe;else Jane;block=li;headergrp=message_id;ope=max:12] Doe

当我只想要输出为Jane时。

2 个答案:

答案 0 :(得分:0)

您需要一个标记来指示您何时要评估if语句或它永远不会评估,只需填写变量(这就是您获得该输出的原因)。尝试:

[onshow; 
     if [activity.sender_id]!=[var.user_id];
       then[activity.sender_firstname];
     else[activity.recipient_firstname];
       block=li;headergrp=message_id;ope=max:12
    ]

答案 1 :(得分:0)

您可以单独使用参数“if”,以便在条件不为真时隐藏值。

<li>
   <div id="name">
     <a href="">
        [activity.sender_firstname;if [var.user_id]!=[activity.sender_id]]
        [activity.recipient_firstname;if [var.user_id]==[activity.sender_id]]
        [activity.sender_lastname;block=li;headergrp=message_id;ope=max:12]
      </a>
    </div> 
</li>

还有一个条件部分的解决方案,但它们不适用于参数“headergrp”。