Gå til innhold

Inkludere innhold på hjemmeside - php include / SSI


Anbefalte innlegg

Har tidligere hatt god erfaring med bruk av php include på en hjemmeside jeg har satt opp. Koden jeg benytter der er:

<?
$ext = ".htm";
$id = "".$id."".$ext."";
if (file_exists($id))
{
include($id);
} else {
include("404.shtml");
}
?>

 

Nå setter jeg opp en ny side på en annen server som tydligvis ikke støtter php include.

Når jeg søker på include på deres knowledgebase får jeg følgende:

Uansett hva jeg gjør så funker det ikke.

Do you support SSI (server side includeds)?

Yes, SSIs only run on files with the .shtml extension.

 

 

Derimot henviser den til SSI som et alternativ.

Har søkt litt på nettet, men blir ikke noe klokere.

 

Jeg benytter php include med variabler for å hente inn forskjellige filer avhengig av hva jeg skriver i adressefeltet.

www.domenenavn.no/main.php?id=innhold

Her er da "main.php" hovedfilen med hele designet av siden, "innhold" er navnet på den html filen som er selve innholdet/teksten til siden.

 

Noen tips om hvordan jeg kan få dette til å funke?

Er ganske mye innhold som skal inn på siden og da er det så kjedelig å måtte legge alt manuelt inn i designet. Dessuten er det da et mareritt å bytte design...

Lenke til kommentar
Videoannonse
Annonse

Måten du gjør dette på vil kun fungere om PHPs register_globals er aktivert (som den ikke burde være). Istedet for variabelen $id burde du bruke $_GET['id'].

 

Koden blir da:

<?

$ext = ".htm";

$id = $_GET['id'] . $ext;

if (file_exists($id))

{

include($id);

} else {

include("404.shtml");

}

?>

 

Denne koden er forresten veldig usikker. Se http://en.wikipedia.org/wiki/Directory_traversal

Endret av Jckf
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...