Yazdığın kod bende düzgün çalıştı. Tekrarlama önlem olarak
if (!$_SESSION['kod'] || $_SESSION['kod']=='') {
$_SESSION['kod'] = rand(1000,9999); }

deneyebilirsin. İlginç bişey D: