我可以回显 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/