Oprettet ons. d. 24. juli 2002 kl. 02:22:33

tumpez
tumpez (17.704 point. Point ude: 125)

index?=home

Har aldrig helt forstået hvordan det fungerer? Kan man holde det hele på samme side, med includes? Ville være rart hvis der var en, der kunne komme med en god forklaring til hvordan det fungerer!

Skrevet ons. d. 24. juli 2002 kl. 02:24:52| #1

tumpez
tumpez (17.704 point)
Ups... det skulle selvfølgelig have været index.php?=home :/

Skrevet ons. d. 24. juli 2002 kl. 02:36:36| #2

teaspoon
teaspoon (21.135 point)
hvis du har et link som index.php?side=home vil du på index.php have en variabel med navnet $_GET['side'] som indeholder værdien 'home'

så kan du eventuelt bruge include($_GET['side'] .".php"); i din index.php fil. Du skal dog lave nogle checks med om brugeren rent faktiskt har lov til at se den side.

f.eks lave en array med de sider brugeren må se, og så checke om værdien af $_GET['side'] findes i den array.

Skrevet ons. d. 24. juli 2002 kl. 02:42:35| #3

muddi
muddi (26.660 point)
Du kan også lave en switch case, som tager $side og finder ud af hvilken side den skal finde vise. På den måde kan du altid lave en 404-side som default-værdi. (eksemplet skal bruges sammen med teaspoons forslag)!

Skrevet ons. d. 24. juli 2002 kl. 02:51:14| #4

teaspoon
teaspoon (21.135 point)
er det ikke lidt nemmere med en array

$array = array(
  "home" => "index.php",
  "bla" => "side.php" // etc.
);

if ($side = $array[$_GET['side']]) {
  include($side);
} else {
  // 404
}

jeg plejer dog selv at bruge metoden med at include en fil øverst på hver side. Ser efter min mening lidt pænere ud, og så slipper man også for det her besvær :)

Skrevet ons. d. 24. juli 2002 kl. 02:54:50| #5

muddi
muddi (26.660 point)
Har faktisk aldrig set din metode før teaspoon, men det jo, det ser ret smart ud! :o) Om det er bedre ved jeg ikke, men det fylder ihvertfald mindre end min metode, hvis der f.eks. er 80 undersider *GG* Husker lige din metode til en anden gang!

Skrevet ons. d. 24. juli 2002 kl. 03:18:10| #6

tumpez
tumpez (17.704 point)
jeg plejer dog selv at bruge metoden med at include en fil øverst på hver side. Ser efter min mening lidt pænere ud, og så slipper man også for det her besvær :) <--- kan du ikke lige prøve at uddybe det ?

Skrevet ons. d. 24. juli 2002 kl. 10:44:02| #7

tipsen
tipsen (34.482 point)
Da "array" vist er et reserveret navn, skal man selvfølgelig nok kalde arrayet noget andet da man ellers risikerer nogle sjove fejl...

Skrevet ons. d. 24. juli 2002 kl. 13:08:23| #8

>> <--- kan du ikke lige prøve at uddybe det ?
det ka jeg da gøre...

her er en tilfældig side fra din hp:


<?php $titel = "blabla"; include("top.inc"); ?>


noget tekst eller andet

<?php include("bund.inc"); ?>

her er top.inc

<HTML>
<HEAD>
<TITLE><?PHP echo $titel; ?></TITLE>
</HEAD>
</BODY>

og Bund.inc

<TABLE ALIGN="center">
<TR>
<TD>
copyright 2002(c) by blabla A/S
</TD>
</TR>
</TABLE>

</BODY>
</HTML>

Skrevet ons. d. 24. juli 2002 kl. 16:42:36| #9

tumpez
tumpez (17.704 point)
Så det er for besværligt at bruge det til f.eks. sidenavigation? Men det er vel nyttigt, til f.eks. at bestemme hvor mange news der skal vises på en side?

Skrevet fre. d. 02. december 2005 kl. 23:50:30| #10

sabumnim
sabumnim (10.860 point)
Hej tumpez

Vil give det et forsøg her...er selv ret ny indenfor php :0)

Du har en "index.php" side som du benytter som skabelon/template for hele din webside.
På denne index.php har du nogle elementer som f.eks. en top/header, en indhold/content og en navigation

I din content smider du et php script som inkluderer de sider der kaldes fra navigationen:

<?
if(isset($_GET['id'])){
  include($_GET['id'].'.php');
}
else{
  include "dinstartside.php";
}
?>

som vist heroven for.

Når du så i din navigation kalder en phpside som du ønsker skal ende i dit content område ser linket sådan ud: <a href="index.php?id=kontakt">KONTAKT</a>

Det der sker er at din navigation kalder en side der hedder "kontakt.php" ved hjælp af server side include med "id" og grundet scriptet vi før smed i content vil dette script vide at den nu skal inkludere "kontakt.php" i content.
Kan denne fil derimod ikke findes vil den vise "dinstartside.php" istedet.

Håber dette har givet lidt mening, det var i al fald sådan jeg lærte lidt om at inkludere ved hjælp af SSI og switch-metoden.

/Sabumnim

Skrevet tor. d. 02. september 2010 kl. 20:00:27| #11

sabumnim
sabumnim (10.860 point)
Hej tumpez

Kom du nogen sinde videre med dette?

//Carsten

Skriv et indlæg




Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] [img]link til billede[/img]
Web- og emailadresser omdannes automatisk til links

Log ind

   

   

Seneste spørgsmål

Ville ikke tildele at upload det til database eller komme...

Oprettet den 10. februar 2012 kl. 21.23
tobrukDk giver 15 point for svar | Giv et svar »

HTTP Post XML og modtag svar

Oprettet den 10. februar 2012 kl. 17.55
mrkaynex giver 200 point for svar | Giv et svar »

Inspion Economy søger en dygtig programmør, som kan...

Oprettet den 10. februar 2012 kl. 16.09
Kathja giver 15 point for svar | Giv et svar »

Seneste guides

Installer win 7
Den gode bruger


   




Tips & Tricks fra PC World

Teaser billede

Her er fem sjove danske websider du skal kende

Trænger dine lattermuskler til en omgang fitness på dansk? Vi viser vej til fem websider fyldt med humor og vanvittig satire.


Anmeldelser fra PC World

Teaser billede

Test: Denne super-tablet er iPads hårdeste konkurrent

Eee Pad Transformer Prime er frygtindgydende med sin quadcore processor og evne til at trylle sig om til bærbar. Apple bør kigge i bagspejlet, for Asus' tablet-pc kommer buldrende - og gør det...


Seneste blogindlæg

Teaser billede

Tvangslukke spørgsmål: Hvad er den bedste løsning?

Hej Vi har mange åbne spørgsmål på Eksperten. Vi ville gerne tvangslukke dem - så et spørgsmål efter f.eks. 6 måneder lukkes. Men der er et par uklarheder som ville være gode at få lidt input til:...


Nyheder fra PC World

Teaser billede

Nu kan du snart hente Windows 8

Den nye offentlige betaversion af Windows 8 er klar i denne måned.


Nyheder fra Computerworld

Teaser billede

Måske snart slut med Androids helt store problem

Android-platformen har længe været plaget af et særligt problem. Men måske er problemet nu ved at være elimineret.


Kurser
Samarbejdspartnere

Udgiver · © 2012 IDG Danmark A/S · Hørkær 18 · 2730 Herlev · Tlf.: 77 300 300 · Fax: 77 300 301 · Brug af personoplysninger