Otra cosa un poco offtopic. No estás utilizando bien el bindeo de parámetros en PDO, con lo que estás abriendo una brecha de seguridad en tu programa.
Esto:
Código PHP:
Ver original$sql="SELECT * FROM Usuario WHERE usuario='".$login."' AND contrasena='".$password."';";
$result = $pdo->query($sql);
Debería ser algo así:
Código PHP:
Ver original$st = $pdo->prepare('SELECT * FROM usuario
WHERE usuario = :usuario AND contrasena = :contrasena');
$st->bindParam(':usuario', $login);
$st->bindParam(':contrasena', $password);
$st->execute();
Así evitas posibles inyecciones.
Más info
Sobre las sesiones, como ya te dicen ahí arriba, debes asegurarte que session_start() sea lo primero que se ejecuta en tu código, para evitar cualquier tipo de problema.
Un saludo