Gå til innhold

Anbefalling av dynamisk Include script


Anbefalte innlegg

Til nå har jeg jeg brukt include på følgende måte

 

<?php

include("header.php");

?>

TEKST...

<?php

include("footer.php");

?>

 

Men etter å ha lest litt er dette kanskje en tungvint måte å bruke include på?

Det jeg ikke liker med denne metoden er at det er vansklig å se helheten når jeg endrer/lager siden siden header og footer ikke synes, så dokumentet blir avkortet.

 

Hva bruker dere på siden deres?

Lenke til kommentar
Videoannonse
Annonse

Det er mange metoder å løse dette på.

 

de fleste gjør det vel omvent av det du gjør. istedenfor å include header/footer i mange dokumenter brukes index.php til å include teksten...

 

denne metoden (One script serves them all) gjør det ofte enkelt å legge til nye undersider og lignende.

 

I en slik metode settes det variabler i urlen for å bestemme hvilken side som skal includes (GET) disse variablene defineres etter ? i url (www.minside.tld?variabel=innhold)

 

Denne metoden krever en del validering for ikke å gjøre siden din åpen for simple angrep.

 

Søk på include script her på forumet så får du nok opp et par hundre tråder...

Lenke til kommentar

require_once ("style/top.php"); // Slenger inn designet på toppen

//Inlcude scriptet som ligger i index.php
if(empty($_GET['file']))
{
include('inc/news.php');
}
elseif(FILE_EXISTS('inc/'.$_GET['file'].'.php'))
{	
include_once('inc/'.$_GET['file'].'.php');
}

else
{
include('inc/404.php');
}

require_once ("style/bottom.php"); // Slenger inn designet i bunnen

 

Si i fra hvis du ikke skjønner =)

Lenke til kommentar
Henrik Lied: Kan du ikkje berre sette ei side som default i ein switch?

5678700[/snapback]

Joda, eg bruker vanligvis å spesifisere alle sidene som skal inkluderast i ein switch, men det ordner ikkje problemet med å sende headers. Dei må sendast før alt innhold, så ein må sjekke om sida som skal inkluderast eksisterer før ein sender noko til mottakaren.

Lenke til kommentar

prøv å unngå å bruk include siden den ikke gjør en sjekk om tingen du includer har blitt includet før.

 

include_once() er bedre. Men dette er mer flisespikkeri.

 

require_once() er bedre om det er viktig det du skal include ... noe det som regel er.

 

Men eg bruker samme strategi egentlig.

 

Men om det er funksjonalitet som skal sjekkes i headeren(om bruker er innlogget) så er det vel bedre om man lager en klasse som gjør dette for deg. include_once() den fila hvor klassen er ...

$page=new Superklassen();

$page->ValiderInnlogging();

$page->GetHeader();

 

 

bare en tanke ... mange veier til rom.

Lenke til kommentar

http://norskwebforum.no/viewtopic.php?t=12111&highlight=

Er vel den beste måten jeg har kommet over :)

Linkene er da: index.php?page=side

Den linken vil da inkludere innholdet i include/side.php der scriptet står.

Alt dette kan endres i scriptet.

Hvis siden ikke finnes, hvis det er index.php?page=eteth og eteth.php ikke finnes, vil da filen som heter 404.php i include mappen bli vist istedet, så der legger du den.

Dersom det ikke står page=noe, vil filen main.php bli inkludert.

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...