gpt4 book ai didi

php - 如何从 php session 获取 mysql user_id?

转载 作者:行者123 更新时间:2023-11-29 16:09:13 25 4
gpt4 key购买 nike

在我的代码中,我使用 $user_id = $_SESSION["USER_ID"];获取有效的用户 ID。如果我在 PHP 中使用 echo 函数,它会显示正确的 id,但是当我尝试在查询中使用它时,它会说它是未定义的。

我正在使用 XAMPP: PHP 7.1.27、7.2.16、7.3.3 Apache 2.4.38 MariaDB 10.1.38 珀尔 5.16.3 OpenSSL 1.0.2r(仅限 UNIX) phpMyAdmin 4.8.5

$user_id = $_SESSION["USER_ID"];

// Funkcija prebere oglase iz baze in vrne polje objektov

function get_oglasi(){
global $conn;
$query = "SELECT * FROM ads WHERE user_id= echo '$user_id'; ";
$res = $conn->query($query);
$oglasi = array();
while($oglas = $res->fetch_object()){
array_push($oglasi, $oglas);
}
return $oglasi;
}

我期望 $user_id = 17 的输出,但收到未定义的错误。但如果我尝试 <p>Opis: <?php echo $user_id;?></p>我得到了正确的号码。

最佳答案

在 php 中,如果没有全局声明,则无法读取变量或发送到函数参数。请像下面的代码一样设置此 session user_id

 $user_id = $_SESSION["USER_ID"];

function get_oglasi(){

$user_id=$GLOBALS['user_id'];

global $conn;
$query = "SELECT * FROM ads WHERE user_id='$user_id'; ";
$res = $conn->query($query);
$oglasi = array();
while($oglas = $res->fetch_object()){
array_push($oglasi, $oglas);
}
return $oglasi;
}

希望这对您有帮助。

关于php - 如何从 php session 获取 mysql user_id?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55430735/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com