Gå til innhold

Et (dumt..?) spørsmål ang. include.


Anbefalte innlegg

Gjør mine første forsøk på å bruke include. Det er ut til å funke som det skal, men jeg har et kanskje dumt spørsmål:

Den siden/dokumentet som skal inkluderes, skal det være en vanlig html- eller php-side med <head>, <body>, doctype, metatager o.l.? Eller skal det bare angis selve innholdet (det som er mellom <body> og </body> i en vanlig side)?

Lenke til kommentar
Videoannonse
Annonse

Siden som inkluderes skal selvfølgelig (dette vil du skjønne etter litt erfaring) ikke inneholde head- og bodytagger.

 

All kildekode dras rett inn i "moderfilen", uten at klienten (brukeren) merker at noe er skjedd.

 

include.php:

Hei <?php include 'fil.php'; ?>

 

fil.php:

hopp!

 

Print (hva brukeren ser):

Hei hopp!

Lenke til kommentar

Mr D: sytetesten er å view source og se hvordan html ser ut

 

det er ingenting i veien for å ha med <head> og <body> i hver inkulderte fil, og ikke ha disse i den fila det inkluderes fra.

 

men include brukes ofte for å rasjonalisere - slippe å gjenta kode i flere filer.

 

videre kan du se på det slik: include virker som om innholdet av fila hadde blitt satt inn der include-setningen står. (da uten phptags), koden settes ellers rett inn.

Lenke til kommentar
å view source og se hvordan html ser ut
Det var akkurat det jeg gjorde og det så rimelig sykt, men det funka. Jeg søkte på forumet, men fant ikke svar (fordi det var for enkelt?). Men i ettertid så er det jo ganske logisk...

 

men include brukes ofte for å rasjonalisere - slippe å gjenta kode i flere filer.
Det har jeg lest og det er derfor jeg prøver meg på dette. Men jeg synes det er vanskeligere å skjønne enn HTML...

 

Jeg fikk det til på første forsøk med denne koden. Blir det da helt riktig hvis jeg gjør det slik (helt forenklet, kommer til å bruke div-er for å lage skikkelig meny og header o.l.):

index.php:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
<html>
<head>
<title>Sidens tittel</title>
</head>

<body>

<a href="index.php?side=menyvalg1">Side 1</a>
<a href="index.php?side=menyvalg2">Side 2</a>
<a href="index.php?side=menyvalg3">Side 3</a>


<?php
if (empty($_GET['side']))
{
include('moduler/start.php');
}
elseif(!empty($_GET['side']) AND !preg_match("#^\.|/.*#", $_GET['side']) AND file_exists("moduler/" . $_GET['side'] . ".php"))
{
include ("moduler/".$_GET['side'].".php");
}
else
{
include("moduler/404.php");
}
?>



</body>
</html>

start.php:

<h1>Overskrift</h1>
<p>Innhold... bla bla bla........</p>

side1.php o.s.v. :

<h1>Overskrift</h1>
<p>Innhold... bla bla bla........</p>

Endret av Mr D
Lenke til kommentar

det du inkluderer med include settes inn i fila der og da, det bør være enkelt å skjønne.

 

lim inn filinnholdet fra fil 2 inn i fil 1, og vips du har resultatet av include.

 

den delen av siden som skal skiftes ut mellom forskjellige sider, er mao den delen som skal ligge i inkluderte fila

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å
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...