PHP 在 MYSQL 查询中使用 session

标签 php mysql

我可以回显 session 名称,所以我知道它的工作原理,但它在 MySQL 查询中不起作用。我什至尝试将它变成一个变量,但它仍然无法正常工作:

文件列表: 索引.php 响应.php

$repname = $_SESSION['name'];
$sql = "SELECT * FROM `employee` WHERE rep='".$repname."' ";

还有

$sql = "SELECT * FROM `employee` WHERE rep=".$_SESSION['name']." ";

有什么问题吗?

更新**

这是正确的查询

        $sql = "SELECT * FROM `employee` WHERE rep='".$_SESSION['name']."' ";

我知道这是正确的查询,因为现在我正在获取要显示的记录,但它只有 rep 为空的记录。这意味着我出于某种原因没有获得 session 名称。

我尝试添加:

     session_start();
 if(isset($_GET['name'])){
 $_SESSION['name']=$_GET['name'];
  }

但我仍然只得到 rep 为空的记录

最佳答案

确保将 session_start() 添加到 session 的顶部以启动 session 开始

    <?php
    session_start(); ?>

另外一定要添加这个来检索你的名字字段:

<?php 
     session_start();
     if(isset($_GET['name']){
     $_SESSION['name']=$_GET['name'];

 ?>

关于PHP 在 MYSQL 查询中使用 session ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43336366/

相关文章:

php - Doctrine2 查询生成器 - 关联数据未正确补水

php - 使用数据库检查文本字段值

mysql - 为什么我不能准备这条sql语句来设置auto_increment?

PHP 从复选框中获取 MYSQL 数据

php - 在对象中使用 PDO

php - 如何使用 My_Model (Codeigniter) 执行 MySQL 函数?

php - 使用 Facebook 应用程序对网络链接进行一次性身份验证

php - Zend 框架自动完成

php - 如何将带有撇号的动态文本数据插入到sql中

mysql 如何按情况查询分组中返回的总行数