Pokud má někdo vypnuté cookies, nebude mu bohužel výše zmíněný příklad fungovat. Identifikátor musíme předávat pomocí parametrů v odkazech. K dispozici máme naštěstí konstantu SID, která obsahuje kompletní nastavení parametru (ve tvaru PHPSESSID=identifikátor). Náš příklad proto musíme upravit tak, aby se identifikátor předával v URL.
Příklad 2.3. Zaregistrování session proměnné — session_prvni.php
<? session_start(); ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head><title>První stránka se session proměnnou</title></head> <body> <? session_register("x"); $x = 10; ?> Proměnná x je zaregistrována a má hodnotu <?echo $x?>. Podívejte se na <a href="session-dalsi.php?<?echo SID?>">další stránku</a>, kde uvidíte, zda zůstane obsah proměnné $x zachován. </body> </html>
Pokud session proměnné využíváme opravdu intenzivně, může být neustále doplňování odkazů o identifikátor session zdlouhavé a otravné. PHP4 umí za nás tuto práci udělat samo — stačí při kompilaci aktivovat volbu --enable-trans-id. Všechna URL v generovaných stránkách pak budou podle potřeby automaticky doplněna o identifikátor session. Tato volba však sníží výkon celého systému, protože se musí všechny stránky prohledávat na výskyt odkazů.