PHP如果锚标记的语句不起作用

时间:2018-10-18 14:31:50

标签: php html session

如果锚标记的语句不起作用。在我检查过的条件内,如果会话具有值,则转到仪表板。但是如果会话没有值,则转到注册页面。

我在登录后检查了此代码,因此设置了$ _SESSION ['c_id']。因此,$ _ SESSION ['c_id']有一个值,不能为空,应显示仪表板选项。但是,即使会话不为空,导航栏仍显示“注册”选项,这表明else条件在这里起作用。

我按照以下PHP手册http://php.net/manual/en/control-structures.alternative-syntax.phphttp://php.net/manual/en/control-structures.if.php进行了尝试 我不确定我的代码是对还是错,或者有语法错误或逻辑错误。

    <li><a href="order_page.php">Order Anything</a></li>

    <?php if(isset($_SESSION['c_id'])):?>
        <li><a href="index2.php"> Dashboard</a> </li>

    <?php elseif(isset($_SESSION['p_id'])):?>
        <li><a href="index1.php"> Dashboard</a></li>

    <?php else:?>
        <li><a href="BeProvider.htm">Sign up</a></li>
    <?php endif;?>

    <li><a href="contact.htm">  Help Center</a></li>

1 个答案:

答案 0 :(得分:-1)

您需要session_start()才能在页面上使用会话

my $file = /path/to/A.txt;
open(my $fh, '<', $file)
 or die "Couldn't open file";

while (my $line = <$fh>){
 my ($ins,$pre) = split /:/, $line;

 if ((substr $ins,0,1) eq "A"){
  $mo = "A/C/$ins";
 }
 elsif ((substr $ins,0,1) eq "C"){
  $mo = "X/Y/$ins";
 }

 Env::modulecmd:load($mo);
 print "Running command cat $pre\%";
 $result = `cat '$pre'\% | head`;
 Env:modulecmd:unload($mo);
 print $result;
}

close $fh;

阅读本手册session