Tach!
Soweit im Westen nichts Neues, ...jetzt muss ich aber die Session starten, bevor ich gegenchecken kann ob sie existiert, also
session_start(); if(!isset($_SESSION["login"]) && !isset($_SESSION["pass"])) { header("Location: 403.php"); exit; } //sonst weiterer Quelltext
session_start() startet eine neue Session oder nimmt eine vorhandene wieder auf. Dein Part ist nicht der Test, ob eine Session existiert, sondern ob sich in der (wieder)eröffneten ein bestimmter Wert befindet. Dieser Wert gibt Auskunft ob der Nutzer berechtigt ist oder nicht.
Es empfieht sich übrigens nicht, Usernamen und Passwort zu speichern. Die stehen dann nur im Klartext im Session-Dateien-Speicher rum. Oftmals ist das nur ein globaler Ordner im System, auf den jeder Zugriff hat. Du brauchst dir lediglich zu merken, ob der Nutzer authentifiziert oder berechtigt ist. Zur Not seinen Nutzernamen, wenn du den noch anderweitig brauchst, aber das Passwort gehört da nicht hin.
dedlfix.