我有一些情况的代码首先检查然后代码应该根据它执行。我的代码有
<?php if($this->Session->read('Auth.User.id')==''){ ?>
<input class="profilebtn" type="button" style="width:100px !important; margin-top: 1px;" value="Start now" onclick="javascript:register_popup();">
<input class="profilebtn" type="button" style="width:100px !important; margin-top: 1px;" value="Start now" onclick="javascript:submitPlan(2);">
<input class="profilebtn" type="button" style="width:100px !important; margin-top: 1px;" value="Start now" onclick="javascript:submitPlan(3);">
<?php } elseif($this->Session->read('Auth.User.id')!='' && $this->Session->read('Auth.User.role_id')=='3' && isset($this->data['User']['plan_type']) && $this->data['User']['plan_type']=='A'){ ?>
<input class="profilebtn" type="button" style="width:100px !important; margin-top: 1px;" value="Your plan" onclick="javascript:register_popup();">
<input class="profilebtn" type="button" style="width:100px !important; margin-top: 1px;" value="Start now" onclick="javascript:submitPlan(2);">
<input class="profilebtn" type="button" style="width:100px !important; margin-top: 1px;" value="Start now" onclick="javascript:submitPlan(3);">
<?php } elseif($this->Session->read('Auth.User.id')!='' && $this->Session->read('Auth.User.role_id')=='3' && $this->data['User']['plan_type']=='B'){ ?>
<input class="profilebtn" type="button" style="width:100px !important; margin-top: 1px;" value="Start now" onclick="javascript:register_popup();">
<input class="profilebtn" type="button" style="width:100px !important; margin-top: 1px;" value="Your plan " onclick="javascript:submitPlan(2);">
<input class="profilebtn" type="button" style="width:100px !important; margin-top: 1px;" value="Start now" onclick="javascript:submitPlan(3);">
<?php } else{?>
<input class="profilebtn" type="button" style="width:100px !important; margin-top: 1px;" value="Start now" onclick="javascript:register_popup();">
<input class="profilebtn" type="button" style="width:100px !important; margin-top: 1px;" value="Start now" onclick="javascript:submitPlan(2);">
<input class="profilebtn" type="button" style="width:100px !important; margin-top: 1px;" value="Your plan" onclick="javascript:submitPlan(3);">
<?php } ?>
所以我在每个条件下都有3个按钮,所以根据用户的计划,我想从现在开始改变按钮值到你的计划&amp;休息2按钮应该有现在启动选项。所以在这段代码中,如果条件不匹配则检查是什么,然后直接执行else而不检查else,如果我想先检查的部分。
答案 0 :(得分:0)
只有当值满足所有条件时,才会运行elseif。如果他们没有执行,那么至少有一个条件没有得到满足。
例如,您能否确定这里的变量:
$this->Session->read('Auth.User.id')!=''
&& $this->Session->read('Auth.User.role_id')=='3'
&& $this->data['User']['plan_type']=='B')
确实如你所愿吗?
答案 1 :(得分:0)
尝试使用(true)作为条件制作另一个elseif。所以你可以检查一下elseif是否有效。 如果它跳到那个,你的两个条件都有问题。
使用
等手动检查变量var_dump($this->Session->read('Auth.User.role_id')=='3');
并检查输出是否符合您在条件中的计划。