2014-06-26 84 views
-1

代码:oc-content/themes/realestate/item.phpPHP - 逻辑运算符与if/else语句测试不正常工作

我有这一块PHP代码,这是一个“框架”的一部分,被称为OSClass。基本上,我试图将用户(广告的发布者)名称“隐藏”到未登录的用户。换句话说,只有当用户登录时,他们才能看到发布者用户是否发布广告。

我发现我需要添加这段代码osc_is_web_user_logged_in(),这已经非常完美的另一部分,然而,由于else声明,出版商的名称仍然显示...

我怎样才能修改else语句?我可以删除else语句,但我担心它会'破坏'一些东西,我不确定什么osc_item_user_id()做...我在else语句中添加另一个if语句(完成PHP新手在这里)。

<div class="ico-author ico"></div>     
    <?php if(osc_item_user_id() != null && osc_is_web_user_logged_in() ){ ?> 
      <?php echo osc_item_contact_name(); ?> 
    <?php } else { ?> 
      <?php echo osc_item_contact_name(); ?> 
    <?php } ?> 

谢谢!

+1

你在'if'和'else'块中做同样的事情。 – Barmar

+0

为什么每行都出入'<?php'? – Barmar

+0

@Barmar就是这样的代码。我所做的所有事情都是在最后加上&&声明:) –

回答

1

在我看来,你应该简单写:

<div class="ico-author ico"></div>     
    <?php if(osc_item_user_id() != null && osc_is_web_user_logged_in() ){ ?> 
      <?php echo osc_item_contact_name(); ?> 
    <?php } ?> 

因为你不希望显示发布者名称时,不登录的用户,你不需要有其他部分。

+0

完美的作品,谢谢! –

0

您可以添加else if语句。

if (osc_item_user_id() != null && osc_is_web_user_logged_in()) 
{ 
    <?php echo osc_item_contact_name(); ?> 
} 
else if (user non logged) 
{ 
    // your stuff 
} 
else 
{ 
    <?php echo osc_item_contact_name(); ?> 
} 
+0

谢谢!我会现在测试这个并且回复你 –