是否可以将mysql资源分配给$_SESSION变量?
//mysqldb.inc.php
class mySqlDb
{
private $link;
public function __construct($_host = '', $_db = '', $_user = '', $_pwd = '')
{
$link = mysql_pconnect(...);
}
public function query($data)
{
$r = mysql_query($data, $this->link);
return $r;
}
}
//index.php
session_start();
include_once('mysqldb.inc.php');
$sqlobj = new mySqlDb();
$sqlobj->dbconnect($db_host, $db_name, $db_user, $db_pwd);
$_SESSION['mysqldb'] = $sqlobj;
//check.php
session_start();
include_once('mysqldb.inc.php');
$sqlobj = $_SESSION['mysqldb'];
$sqlobj->query(...);$sqlobj->query(...)返回
致命错误: main():脚本试图执行方法或访问不完整对象的属性。请确保您试图操作的对象的类定义"mySqlDb“是在调用un序列化()之前加载的,或者提供了一个__autoload()函数来加载第4行D:\apache\www\check.php中的类定义。
如果使用$_SESSION['mysqldb'] = serialize($sqlobj)和$sqlobj = unserialize($_SESSION['mysqldb']),则会出现以下错误:
警告: mysql_query()期望参数2是资源,D:\apache\www\mysqldb.inc.php中给出的整数在线.
发布于 2012-08-13 21:09:07
发布于 2012-08-13 21:08:29
你有这个:
$sqlobj = new mySqlDb();但你这样做:
$_SESSION['mysqldb'] = $sql;也就是说,将$_SESSION['mysqldb']设置为不存在的对象。试一试$sqlobj。
https://stackoverflow.com/questions/11942308
复制相似问题