したがって、繰り返さないために、PDO接続を1つだけ作成し、セッション変数を使用してページ間でそれを渡したいと思います。しかし、PDO接続をセットアップしてセッション変数を設定すると、次のページで変数が設定されていないものとして戻ってきますか?
これは私の最初のページのコードです:
session_start();
try
{
$db = new PDO("mysql:host=".$dbHostname.";dbname=".$dbDatabase, $dbUsername, $dbPassword);
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}
catch(PDOException $e)
{
echo "It seems there was an error. Please refresh your browser and try again. ".$e->getMessage();
}
$_SESSION['db'] = $db;
次に、次のページのこのテストコードが未設定として返されます。
session_start();
$db = $_SESSION['db'];
if(isset($db))echo "set";
else echo "not set";
何か案は??
最初のページから関数を呼び出し、パラメーターとして$ dbを渡すと、関数は問題なく機能するため、接続は正常です。では、なぜデータベース変数をセッションとして保存しても機能しないのでしょうか。助けてくれてありがとう。