Claro, es la misma idea que esto:
Código PHP:
Ver original<?php
if (!isset($_SESSION['id'])) { // Esto lo va a enviar al índice, porque no está logueado.
header('Location: index.html'); }
// Aquí ya está logueado y pones el resto de tu código PHP.
?>
Pero al contrario. Es decir, tú accedes a la página login.php para crear la sesión, pero si la sesión ya existe, no tienes que crearla, luego te puedes saltar todo el código y pasar a lo que pasas una vez la creas. Esto es: si isset($_SESSION['id']), me salto todo lo que hay y paso directamente a la zona en la que ya he creado la sesión, en caso contrario, tengo que hacerlo todo.
Un saludo.