【问题标题】:Can't call value from SQL using $_SESSION无法使用 $_SESSION 从 SQL 调用值
【发布时间】:2015-10-07 05:16:43
【问题描述】:

抱歉,我只是 PHP MySQL 的初学者,在获得我想要的条件时遇到问题。

我正在使用 $_SESSION 获取 SQL 值,这是错误的,看起来无法获取该值。

这是我顶部的代码:

<?php
    session_start();
    include_once 'dbconnect.php';

    if(!isset($_SESSION['user'])) 
    { 
        header("Location: index.php");
    }
    $res=mysql_query("SELECT * FROM accounts WHERE user_id=".$_SESSION['user']);
    $userRow=mysql_fetch_array($res);
?>

这是我在顶部栏中带有 if else 条件的代码,尽管它从 'agentFname''agentLname' 值数据库,但它无法获取 'user_type' 的值是数据库中的列。

 <img src="images/img.jpg" alt="">

  <?php

         if($_SESSION['user_type'] == 'Team Leader')
         {
               echo "Team Leader, ".' '.$userRow['agentFname'].' '.$userRow['agentLname'];
         } 
         else 
         {
               echo "Agent, ".' '.$userRow['agentFname'].' '.$userRow['agentLname'];
         }

  ?>

  <span class=" fa fa-angle-down"></span>

这是有错误的输出,这个用户是管理员类型

谢谢。

【问题讨论】:

  • 你在哪里设置$_SESSION['user_type']
  • 你在哪里设置了这个会话 var $_SESSION['user_type']??
  • 您没有设置 $_SESSION['user_type'] 的值
  • 'user_type' 是数据库中名为 'accounts' 的列
  • 谢谢大家。问题解决了。

标签: php mysql session


【解决方案1】:

正如你在评论中提到的,user_type 是表中的一个字段.. 所以像这样使用 -

 if($userRow['user_type'] == 'Team Leader')
             {
                   echo "Team Leader, ".' '
                        .$userRow['agentFname'].' '.$userRow['agentLname'];
             } 

【讨论】:

  • 你清楚我的 $userRow = $_SESSION.非常感谢
【解决方案2】:

使用 php isset() 函数删除这个

if(isset($_SESSION['user_type'])){
//your condition
} 

或在使用前设置 $_SESSION['user_type'] 的值

【讨论】:

  • 在我使用之前我可以知道如何设置值吗?
  • 问题已解决,谢谢!
猜你喜欢
  • 2012-06-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-12-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多