PHP是否存在这些类型的连接的特定会话

时间:2013-09-20 02:40:54

标签: php

我需要一个会话对象用于这些类型的连接我的似乎没有使用我当前的连接,是否有一个特定的将与我的连接一起工作。这是代码:

连接:

$conn = mysql_connect(db_server, db_user, db_pass);

if (!$conn)
die("Could not connect: " . mysql_error());

mysql_select_db(db_name, $conn);

这是我当前的会话对象,但它似乎不适用于此类连接。这是代码:

会话:

session_start();

//Global User Object Var
//loggedInUser can be used globally if constructed
if(isset($_SESSION['userSession']) && is_object($_SESSION['userSession']))
{
    $loggedInUser = $_SESSION['userSession'];
}

当我尝试以$ loggedInUser = $ _SESSION [' userSession']登录时会话没有开始。 是否需要构建另一个会话,或者为什么此会话不能与我当前的连接一起使用?

1 个答案:

答案 0 :(得分:1)

$_SESSION中存储对象会导致对其进行序列化和反序列化。对于常规对象,这项工作提供了在反序列化对象之前包含类定义。

但是,mysql维护数据库连接的状态,这将无法在进程中继续存在。每个新页面都需要构建一个新连接,因此您无法在mysql中存储$_SESSION连接。

您的解决方案是存储数据库连接参数,并在每个页面的顶部重新创建连接。