Warum ist mein SESSION-Array auf einer Seite in Ordnung, auf einer anderen leer?

Ich habe eine Klasse, die verschiedene Sitzungsvariablen setzt. Nachdem ich die Sitzungsvariable gesetzt habe, führe ich einen var-Dump von SESSION durch und erhalte eine Ausgabe von allen. soweit alles gut Dann navigiere ich zu einer anderen Seite.

session_start(); // i call this right after opening the php tag
var_dump($_SESSION); // i call this after setting the variables

und es ist diesmal leer?

Einstellen meiner Sitzungen

while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC))
    {
           $_SESSION['atid'] = $row['autotaskid'];
           $_SESSION['bmsid'] = $row['bmsid'];
           $_SESSION['shavlikid'] = $row['shavlikid'];
           $_SESSION['cpid'] = $row['cpid'];
    }

Versuchen, die Variablen auf einer anderen Seite zu verwenden

$autotaskid = $_SESSION['atid'];
    $tsql = "SELECT COUNT(tblBackupArchive.StatusID) AS total, tblBackupArchive.StatusID ".
            "FROM tblBackupArchive INNER JOIN ".
            "tblBackup ON tblBackupArchive.BackupID = tblBackup.BackupID ".
            "GROUP BY tblBackupArchive.StatusID, tblBackup.ClientID ".
            "HAVING (tblBackup.ClientID = " . $autotaskid . ")";    

Ergebnisse in

Undefined index: atid in C:\Program File...

Ich habe sichergestellt, dass ich die start_session () ausstelle. Funktion, bevor auf jeder Seite, die sie verwendet, ein anderer Code ausgeführt wird.

Ein weiterer wichtiger Punkt: Die PHP-Seite, die die Methode aufruft, mit der die Variablen in einem iframe gesetzt werden. Wenn ich die Seite in einem neuen Tab / Fenster öffne, werden die Sitzungen korrekt eingestellt. Es ist fast so, als hätte das Hauptfenster Sitzungsvariablen, und dann wird jeder Iframe separat verwaltet.

Irgendwelche Ideen

Billy

Antworten auf die Frage(10)

Ihre Antwort auf die Frage