Gå til innhold

Include fungerer på et sted og ikke på et annet...


Anbefalte innlegg

Hei

 

Trenger hjelp her for å finne feilen...

 

Bruker dette scriptet på noen hjemmesider for jobben:

 

 

<!--innhold-->

 

<?php

 

 

 

$IncludeDir = "./inc_filer";

 

$DefaultPath = "./inc_filer/main.inc";

 

$FileExtension = ".inc";

 

 

 

if (isset($side)) {

 

$side = stripslashes(strip_tags($side));

 

 

 

$IncludePath = $IncludeDir . "/" . $side . $FileExtension;

 

$Forbidden1 = ereg("\.\./", $side);

 

$Forbidden2 = ereg("/", $side);

 

if ($Forbidden1 OR $Forbidden2) {

 

echo "<h1>Advarsel</h1>\n";

 

echo "<p>Forespørsler på tvers av definerte \n";

 

echo "områder er ikke tillatt.</p>\n";

 

}

 

else {

 

if (@fopen("$IncludePath", "r")) {

 

include ("$IncludePath");

 

}

 

elseif (!(@fopen("$IncludePath", "r"))) {

 

echo "<h1>Server Error 404</h1>\n";

 

echo "<p>Finner ikke den forespurte siden.</p>\n";

 

}

 

}

 

}

 

else {

 

include("$DefaultPath");

 

}

 

 

 

?>

 

<!--/innhold-->

 

 

Da jeg testet det på min server http://www.mjelde.nu fungerte menyen helt fint, men da jeg overførte det til serveren som jobben leier vil bare main siden komme opp uansett hva jeg trykker. i adresselinjen står det som skal, f.eks:index.php?side=produktkatalog, men main kommer alså opp.

 

PHP v på jobbserver er 4.3.4 og på min server er det 4.3.8

 

adressen til job er http://www.vn.no

Håper på hjelp....

 

Mvh

 

:thumbup: Mons-I :thumbup:

Lenke til kommentar
Videoannonse
Annonse

Muligens har det med Register globals å gjøre. Det er nok sikkert slått av på den serveren jobben din leier, men er på på din server.

 

Prøv dette:

Legg til dette foran if(isset($side)):

$side = $_GET["side"];

 

(evt kan du bruke $_REQUEST["side"], som vil lete etter id side i GET, POST, COOKIE og SESSION, tror jeg. Ikke nødvinsigvis i den rekkefølgen. Husker ikke rekkefølgen)

Lenke til kommentar
Muligens har det med Register globals å gjøre. Det er nok sikkert slått av på den serveren jobben din leier, men er på på din server.

 

Prøv dette:

Legg til dette foran if(isset($side)):

$side = $_GET["side"];

 

(evt kan du bruke $_REQUEST["side"], som vil lete etter id side i GET, POST, COOKIE og SESSION, tror jeg. Ikke nødvinsigvis i den rekkefølgen. Husker ikke rekkefølgen)

Jeg la inn $side = $_GET["side"]; som du sa, men nå kommer dette opp:

 

Notice: Undefined index: side in E:\www\vn\index.php on line 98

 

 

Men bare på indexsiden.

 

Menyen fungerer som den skal og alle sidene kommer opp.

 

 

Mvh

 

Mons-I

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...