PHP在MYSQL查询中使用会话
我可以回显会话名称,以便知道它是否工作,但在MySQL查询中它不工作。我甚至试着把它变成一个变量,但它仍然不起作用: 文件列表: index.php response.phpPHP在MYSQL查询中使用会话,php,mysql,Php,Mysql,我可以回显会话名称,以便知道它是否工作,但在MySQL查询中它不工作。我甚至试着把它变成一个变量,但它仍然不起作用: 文件列表: index.php response.php $repname = $_SESSION['name']; $sql = "SELECT * FROM `employee` WHERE rep='".$repname."' "; 也 有什么问题吗 更新** 这是正确的问题 $sql = "SELECT * FROM `employee` WHERE r
$repname = $_SESSION['name'];
$sql = "SELECT * FROM `employee` WHERE rep='".$repname."' ";
也
有什么问题吗
更新**
这是正确的问题
$sql = "SELECT * FROM `employee` WHERE rep='".$_SESSION['name']."' ";
我知道这是正确的查询,因为现在我要显示记录,但只有rep为空的记录。这意味着出于某种原因,我无法获取会话名称
我试着加上:
session_start();
if(isset($_GET['name'])){
$_SESSION['name']=$_GET['name'];
}
但是我仍然只获取rep为空的记录请确保在会话顶部添加session_start(),以启动会话启动
<?php
session_start(); ?>
还要确保添加此项以检索您的姓名字段:
<?php
session_start();
if(isset($_GET['name']){
$_SESSION['name']=$_GET['name'];
?>
没有错误吗?我想你的意思是$repname=$\u SESSION['name']
不是$\u SESSION['name']=$repname
我没有看到任何错误:(如果是字符串,那么你应该正确地引用它,你知道它不安全,你应该准备语句,而不是在$repname或$\u SESSION['name'中有值或没有值的标题。)?…没有看到任何错误…您的意思是,除了明显的SQL注入漏洞。例如,$\u SESSION['name']
中的值恰好包含引号时会发生什么情况,例如“O'Reilly
”。当然,我们只看到将变量设置为字符串的代码。我们没有看到任何试图执行该SQL语句的代码。
<?php
session_start();
if(isset($_GET['name']){
$_SESSION['name']=$_GET['name'];
?>