Peter Anskjær <peter@_fjern_dette_nskjaer.dk> wrote:
> Jeg har et problem jeg ikke kan gemmeskue, jeg har denne her stump
> kode:
><?php
> $page = str_replace('..', '', $page);
> if(!$page || $page == "banner" || $page == "menu"){
> $page1 = "forside.html";
> }
> else{
> $page1 = $page.".html";
> }
> if(!file_exists($page1)){
> $page1 = "404.html";
> }
> include ($page1);
>>
> Koden styrer en menu. Den virker fint på mit webhotel hos b-one (PHP
> 4.2.2). Nu har jeg imidligertidigt købt et ekstra webhotel hos b-one
> som har PHP
> 4.3.4 og nu virker det ikke længere, det er noget i if-sætningen den
> går kold over, ligegyldigt hvilket argument man giver page bliver
> page1 sat lig forside.html, jeg kan ikke forstå hvad problemet er.
Det extra webhotel har sikkert ikke register_globals sat til (det er IMHO en
god ting), og du skal derfor bruge de predefinerede arrays $_GET, $_POST for
at hente henholdsvis get og post variable.
Prøv at indsætte
$page = $_GET["page"];
som din første linie.
Du kan læse mere om de predefinerede arrays her:
http://dk.php.net/manual/en/language.variables.predefined.php
--
Med venlig hilsen / Regards
Kasper Garnæs
http://kasper.garnaes.dk