přepínání jazykových verzí

Potřebovala bych poradit, pokud mám jeden soubor, ve kterém je umístěn kód php (viz kód 1), funguje mi přepínání jazykové verze.

Pokud ho rozdělím do dvou souborů (viz soubor + kód 2), nefunguje.
V čem je problém? Poraďte, prosím...

kód 1:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">


<head>

<? if (!isset($lg)) { // není-li zvolena verze, zvolit automaticky
$lg = explode(",",$HTTP_ACCEPT_LANGUAGE);
$lg = StrToLower(Substr(chop($lg[0]),0,2)); // vybrat první dva znaky preferovaného jazyka
}
if ($lg=="sk") // pokud klient preferuje slovenštinu, kterou nemáte k dispozici, přenastavit jinou vhodnou verzi
$lg="cs";
if (($lg<>"en") && ($lg<>"cs")) // ověřit, zda není požadována nedostupná verze
$lg="en";
if (($lg=="cs") or ($lg=="sk")):
echo "<title>Výroba modelů a maket</title>";
else:
echo "<title>Production of models</title>";
endif ?>
</head>

<body>

<? if (($lg=="cs") or ($lg=="sk")):
echo "<h1>Výroba modelů a maket</h1>";
else:
echo "<h1>Production of models</h1>";
endif ?>

<a href="?lg=cs">česky</a> | <a href="?lg=en">English</a>
</body>



soubor:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">


<head>

<? require "http://lasinka.wz.cz/verze.php"?>
</body>



kód 2:
<? if (!isset($lg)) { // není-li zvolena verze, zvolit automaticky
$lg = explode(",",$HTTP_ACCEPT_LANGUAGE);
$lg = StrToLower(Substr(chop($lg[0]),0,2)); // vybrat první dva znaky preferovaného jazyka
}
if ($lg=="sk") // pokud klient preferuje slovenštinu, kterou nemáte k dispozici, přenastavit jinou vhodnou verzi
$lg="cs";
if (($lg<>"en") && ($lg<>"cs")) // ověřit, zda není požadována nedostupná verze
$lg="en";
if (($lg<>"en") && ($lg<>"cs")) // ověřit, zda není požadována nedostupná verze
$lg="en";
if (($lg=="cs") or ($lg=="sk")):
echo "<title>Výroba modelů a maket</title>";
else:
echo "<title>Production of models</title>";
endif ?>
<? echo "</head>" ?>

<? echo "<body>" ?>

<? if (($lg=="cs") or ($lg=="sk")):
echo "<h1>Výroba modelů a maket</h1>";
else:
echo "<h1>Production of models</h1>";
endif ?>

<a href="?lg=cs">česky</a> | <a href="?lg=en">English</a>
1. Nevkladej to tam absolutni cestou, protoze tak se ti strati promenne
2. Tohle je blbost:<? if (($lg=="cs") or ($lg=="sk")):, lang nemuze byt sk, vzdy se prepina na cs ...
Díky za radu, nedošlo mi, že vlastně nepotřebuji if (($lg=="cs") or ($lg=="sk")):, protože mám předtím slovenštinu převedenou na češtinu, s php teprve začínám, takže mám ještě spoustu mezer.
Je nějaký způsob, jak vyřešit, aby se proměnné neztratily, čili aby se dala využít i absolutní cesta, pokud by soubory byly na dvou různých serverech?

Vítám každou radu...
To by neslo, dej to na stejny server a pouzij relativni adresu (./soubor.php)
A netušíš, jestli je nějaká možnost, jak rozchodit tuhle situaci:
mám kompletní web na jiném serveru, kde funguje sice php, ale nefunguje tam přepínání verzí v jednom souboru (čili kód 1), takže mne napadlo právě to, že by se dala část s detekcí umístit jako součást jiného mého webu tady, kde to funguje, a soubory propojit.
Stěhovat celý web by sice bylo řešení, jenže potom by bylo dost práce měnit veškeré registrace ve vyhledávačích a katalozích.
Vim proc na tom webu nejde to prepinani (asi), ty spolehas na to, ze tam je zaplne register_globals, ale tam asi neni, takze pri predavani promenne pres URL pouzivej superglobalni promennou $_GET ($_GET['lg]) a tam to je, protoze kdyz je register_globals=off, tak se to nepredava do promenne $lg, ale pouze do $_GET (postaru $HTTP_GET_VARS), takze to hledej tam. Skus google, tato tematika je vsude omilana cast. Jinak pro jazykove verze doporucuji Session ...
Díky za vysvětlení a typy, tušila jsem, že bude příčinou něco takového, takže vzhledem ke svým dosavadním chabým znalostem a zkušenostem budu doplňovat poznatky a hledat nějaké řešení.
Pokud by náhodou měl někdo i konkrétní typ na vhodný ucelený kód, byla bych mu neskonale vděčná...
Ale tak chabe znalosti v php mel asi kazdy, pokud budu mit cas a naladu (ted jsem nemocny, casu dost ;), tak napis ... 174706276
Tak v této podobě mi chodí přepínání verzí, ale nefunguje mi detekce jazyka, nejspíš se nedá použít zahajovací script v té podobě, jak ho mám. Poradí mi někdo, jak to napsat správně?
Díky...

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<head>
<script language="php"> if (!isset($_GET["lg"])) { // není-li zvolena verze, zvolit automaticky
$_GET["lg"] = explode(",",$HTTP_ACCEPT_LANGUAGE);
$_GET["lg"] = StrToLower(Substr(chop($_GET["lg"][0]),0,2)); // vybrat první dva znaky preferovaného jazyka
}
if ($_GET["lg"]=="sk") // pokud klient preferuje slovenštinu, kterou nemáte k dispozici, přenastavit jinou vhodnou verzi
$_GET["lg"]="cs";
if (($_GET["lg"]<>"en") && ($_GET["lg"]<>"cs")) // ověřit, zda není požadována nedostupná verze
$_GET["lg"]="en";
if ($_GET["lg"]=="cs"):
echo "<title>Výroba modelů a maket</title>";
else:
echo "<title>Production of models</title>";
endif </script>
</head>
<body>
<script language="php"> if ($_GET["lg"]=="cs"):
echo "<h1>Výroba modelů a maket</h1>";
else:
echo "<h1>Production of models</h1>";
endif </script>
<a href="?lg=cs">česky</a> | <a href="?lg=en">English</a>
</body>
1.Co znamená <script language="php">? Já používám vždycky jenom
<?
echo "blebleble";
?>

2.možná by to mohlo být tím, že máš za tym: if ($_GET["lg"]=="sk") dvě lomítka a hodnotu máš až na dalšim řádku. Mělo by to vypadat asi takto:

if ($_GET["lg"]=="sk") $_GET["lg"]="cs"; // pokud klient preferuje slovenštinu, kterou nemáte k dispozici, přenastavit jinou vhodnou verzi
if (($_GET["lg"]<>"en") && ($_GET["lg"]<>"cs")) $_GET["lg"]="en"; // ověřit, zda není požadována nedostupná verze

Ale nevím, zda jsi tu nápovědu nenapsala pouze kvuli nám.
Kdybys potřebovala něco o PHP napiš.
> 1.Co znamená <script language="php">

Jen dalsi zpusob, jak sdelit serveru, ze se jedna o php..
Ještě malá připomínka: na stránce http://lasinka.wz.cz/ předpokládám že tvoje, bys mohla povolit rozšiřování horního frámu, 1: dá se schovat reklama, 2: po naběhnutí nejsou vidět odkazy pod reklamou.
Ad [Sojkovec]: jo díky taky mě to napadlo, ale já tuhle verzi používam s JavaScriptem, tak jsem si nebyl jist.
Pif: ja vim, vypada to trochu podivne, ale funguje to...
Díky všem za rady, konečně mi funguje - výsledný script, který chodí i na serveru, kde jsou vypnuté register_globals je následující:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<head>
<? if (!isset($_GET["lg"])) {
$_GET["lg"] = explode(",",$_SERVER['HTTP_ACCEPT_LANGUAGE']);
$_GET["lg"] = StrToLower(Substr(chop($_GET["lg"][0]),0,2));
}
if ($_GET["lg"]=="sk")
$_GET["lg"]="cs";
if (($_GET["lg"]<>"en") && ($_GET["lg"]<>"cs"))
$_GET["lg"]="en";
if ($_GET["lg"]=="cs"):
echo "<title>Výroba modelů a maket</title>";
else:
echo "<title>Production of models</title>";
endif;
?>
</head>
<body>
<? if ($_GET["lg"]=="cs"):
echo "<h1>Výroba modelů a maket</h1>";
else:
echo "<h1>Production of models</h1>";
endif;
?>
<a href="?lg=cs">česky</a> | <a href="?lg=en">English</a>
</body>


Bylo potřeba upravit začátek - doplnit: $_SERVER['HTTP_ACCEPT_LANGUAGE'] - tenhle účinný typ mi poskytl #lama, takže díky.
ad Pif

díky taky za připomínku k rámům, ta stránka je moje, i když ne zrovna aktuální a využívaná, hlavně jsem potřebovala otestovat prostor, než na něj umístím stránky, které tvořím teď.
Tvoji nabídku na pomoc s php vedu v patrnosti, ráda ji někdy využiju