我无法为特定用户获取会话

时间:2011-12-28 09:12:05

标签: php

美好的一天,

我正在发送带有php的电子邮件,我使用用户的会话

例如:

$subject_user_name= $_SESSION['User']['User_Name'].' '.$_SESSION['User']['User_Surname'];
$subject_baby_name= $profil['Baby_Name'].' '.$profil['Baby_Surname'];           
$subject = sprintf("%s added first for %s ",$subject_user_name,$subject_baby_name);

问题:对于每个人$_SESSION都在工作,但是对于一个用户来说它不起作用,而且我的邮件的主题是这样的=“为Martin添加了第一个”

我需要你的帮助。也许这是一个浏览器问题。

1 个答案:

答案 0 :(得分:0)

此用户可能已禁用Cookie或已采取其他严格的安全措施。您可以通过检查会话密钥是否实际具有值来“捕获”此问题,如下所示:

if(isset($_SESSION['User']['User_Name'])
   && isset($_SESSION['User']['User_Surname'])
   && !empty($_SESSION['User']['User_Name'])
   && !empty($_SESSION['User']['User_Surname'])
) {
    $subject_user_name = $_SESSION['User']['User_Name'] . ' ' . $_SESSION['User']['User_Surname'];
} else {
    $subject_user_name = 'Unknown user';
}

或者,您可以只检查名字或姓氏,而不是两者。