Include. :)
Havde egentlig skrevet til den der tutorial med include, men da jeg så der var et forum, poster jeg det også her.
jeg skrev:
Hej.
Har altid brugt include, men har skrevet:
<div name="content" src="index.php" bgcolor="FFFFFF" style="position:absolute; top:0px; left: 0px; width: 0px;">
i min header.php, da jeg så fandt ud af man ikke behøvede og blot kunne css style den og skrive include i index.php
Men da jeg syntes det ikke altid virker for mig, vil jeg gerne prøve det her. Da jeg gerne vil have at siden ligger centreret, men så den passer på alle skærme. (Hvis du forstår?)
problemer er at her, forstår jeg ikke helt "template" og "main". Hvor er index.php inde i billedet? Håber du vil hjælpe mig.
håber nogle vil hjælpe, og skære det en smule ud i pap for mig. Tak på forhånd!
jeg skrev:
Hej.
Har altid brugt include, men har skrevet:
<div name="content" src="index.php" bgcolor="FFFFFF" style="position:absolute; top:0px; left: 0px; width: 0px;">
i min header.php, da jeg så fandt ud af man ikke behøvede og blot kunne css style den og skrive include i index.php
Men da jeg syntes det ikke altid virker for mig, vil jeg gerne prøve det her. Da jeg gerne vil have at siden ligger centreret, men så den passer på alle skærme. (Hvis du forstår?)
problemer er at her, forstår jeg ikke helt "template" og "main". Hvor er index.php inde i billedet? Håber du vil hjælpe mig.
håber nogle vil hjælpe, og skære det en smule ud i pap for mig. Tak på forhånd!
Re: Include. :)
Hej Yasse
Er ikke helt sikker på jeg forstå, men nu prøver jeg alligevel...
Altså Index.php er blot det dokument, som ligger i roden af din server. dvs. det er din hjemmesides forside. Så hvis man trykker http://www.dinhjemmeside.dk in i browseren, så vil det være index.php der bliver vist.
Derfor er index.php egentlig en side som så mange andre, den hedder bare index, og det gør at den vil blive vist som forsiden.
Din index.php kan byggers op efter en template, som du kan lave med include - ALLE dine dokumenter kan faktisk bygges op efter din template.
Lad os sige at du vil lave en side som er centreret som du siger...dette kunne du gøre på følgende måde:
først laver du en wrapper div:
Denne div styler du med margin: auto og sætter en brede og højde på den:
inde i denne div kan du så have dine include funktioner såsom header og footer...
mellem header og footer kan du så have et område, som kan være redigerbart, og som ikke skal være standard på alle sider... det kunne se således ud:
Inde i dine header og footer kan du så ogspå placere nogle divs stylet så de f.eks er 600 brede og 100 høje... På den måde vil headeren ligge over dit rediger bare indhold og footeren under.
Du får altså en template hvor du centralt kan redigere i din footer og header, og ellers have forskelligt indhold i din indholds div i midten.
Håber det kan hjælpe dig...
Ellers må du gerne skrive igen
Er ikke helt sikker på jeg forstå, men nu prøver jeg alligevel...
Altså Index.php er blot det dokument, som ligger i roden af din server. dvs. det er din hjemmesides forside. Så hvis man trykker http://www.dinhjemmeside.dk in i browseren, så vil det være index.php der bliver vist.
Derfor er index.php egentlig en side som så mange andre, den hedder bare index, og det gør at den vil blive vist som forsiden.
Din index.php kan byggers op efter en template, som du kan lave med include - ALLE dine dokumenter kan faktisk bygges op efter din template.
Lad os sige at du vil lave en side som er centreret som du siger...dette kunne du gøre på følgende måde:
først laver du en wrapper div:
Denne div styler du med margin: auto og sætter en brede og højde på den:
Kode: Vælg alt
<div style="margin:auto ; height: 900px ; width: 800px; border-style: solid ; border-width: thin;" >
</div>
mellem header og footer kan du så have et område, som kan være redigerbart, og som ikke skal være standard på alle sider... det kunne se således ud:
Kode: Vælg alt
<div style="margin:auto ; height: 900px ; width: 800px; border-style: solid ; border-width: thin;" >
<?php
include("header.php");
?>
<div style="width: 750px ; height: 650px ; margin:auto; border-style: solid ; border-width: thin; ">
Ikke standard indhold
</div>
<?php
include("footer.php");
?>
</div>
Du får altså en template hvor du centralt kan redigere i din footer og header, og ellers have forskelligt indhold i din indholds div i midten.
Håber det kan hjælpe dig...
Ellers må du gerne skrive igen
- webudvikleren
- Rutineret
- Indlæg:80
- Tilmeldt:13. jun 2011, 21:11
- Geografisk sted:Esbjerg
- Kontakt:
Re: Include. :)
Hej Yasse.
Jeg vil prøve at forklare hvordan man bruger include og hvornår det er smart at udnytte funktionen.
Først og fremmest er det vigtigt du forstår hvad forskellen på de forskellige kodetyper er og hvornår det bruges. Både af din browser og server.
PHP er kode som afvikles før du ser det i din browser.
HTML og CSS er kode som afvikles af din browser.
Dvs din kode: ikke vil fungere fordi du prøver at implementere en PHP fil direkte fra browseren da det som omkranser din index.php er HTML. Din index.php vil altså ikke blive afviklet.
Hvis vi vender tilbage til dit spørgsmål:
Du skal (eller kan) arbejde i din index.php, hvilket er den første side man vil få vist på din hjemmeside. I din PHP kode kan du vælge at "include" andre filer for at gøre din hjemmeside dynamisk. Ved at have data eller andre filer, kan du derfor sætte designet og indholdet op forskelligt alt efter hvordan du ønsker det skal fungere.
Eksempel på en opsætning:
I din index.php skriver du:
Dette betyder at header.php, main.php og footer.php nu bliver "trukket" eller inkluderet i din index.php. Du behøver nu kun at opdatere disse 3 eksterne sider individuelt. Det gør det mere overskueligt når du har utrolig mange filer. En rar ting er at have en som hedder menu.php og include den. Det giver god mening i hvert fald hvis du også har en side som fx hedder underside.php.
I din header.php plejer jeg at placere links til CSS filer som HTML kode. Den CSS kode du søger til at centrere en side hedder:
HTML koden til at linke til ekstern CSS fil hedder:
Hvis du er i tvivl om helheden når du har prøvet dig frem, kan du altid vise din kildekode i browseren. Så har du et godt overblik over hvad der er genereret efter alle include-filerne.
Giver det mening?
Jeg vil prøve at forklare hvordan man bruger include og hvornår det er smart at udnytte funktionen.
Først og fremmest er det vigtigt du forstår hvad forskellen på de forskellige kodetyper er og hvornår det bruges. Både af din browser og server.
PHP er kode som afvikles før du ser det i din browser.
HTML og CSS er kode som afvikles af din browser.
Dvs din kode:
Kode: Vælg alt
<div name="content" src="index.php" bgcolor="FFFFFF" style="position:absolute; top:0px; left: 0px; width: 0px;">
Hvis vi vender tilbage til dit spørgsmål:
Svar:problemer er at her, forstår jeg ikke helt "template" og "main". Hvor er index.php inde i billedet?
Du skal (eller kan) arbejde i din index.php, hvilket er den første side man vil få vist på din hjemmeside. I din PHP kode kan du vælge at "include" andre filer for at gøre din hjemmeside dynamisk. Ved at have data eller andre filer, kan du derfor sætte designet og indholdet op forskelligt alt efter hvordan du ønsker det skal fungere.
Eksempel på en opsætning:
I din index.php skriver du:
Kode: Vælg alt
<?php
include("header.php");
include("main.php");
include("footer.php");
?>
I din header.php plejer jeg at placere links til CSS filer som HTML kode. Den CSS kode du søger til at centrere en side hedder:
Kode: Vælg alt
div #content {
margin: 0 auto;
width:980px;
}
Kode: Vælg alt
<link rel="stylesheet" href="STI/TIL/DIN/CSSFIL.css" type="text/css" />
Giver det mening?
Re: Include. :)
Forstår bare ikke main? Der hvor main er, er vel der man skal redigere indholdet? man kan jo ikke bare inkludere main på alle siderne man har, fordi så bliver det på det samme som står på siderne?
forstår heller ikke hvorfor delen man laver en "template.php" side? Fordi det er jo index.php man ser som det første på enes side.
er stadig forvirret.
forstår heller ikke hvorfor delen man laver en "template.php" side? Fordi det er jo index.php man ser som det første på enes side.
er stadig forvirret.
Re: Include. :)
Du har ret...
I videoen vises også main som et inkluderet område...det kan godt være lidt misvisende...
Det er egentlig lidt op til dig selv hvor mange områder på siden du vil have inkluderet som standard... f.eks kunne du have 2 main...en som var standard og en som var redigerbar.
"Template" er bare en standard opsætning af alle dine sider...Du kan så bygge dine sider op omkring denne template, så de alle får et ens look. Altså... åben template...skriv indhold ind i det redigerbare område og gem filen som det den skal hedde...gør derefter det samme igen... på den måde vil du få 2 filer som er opbygget på sammen måde, men som er forskellige med hensyn til det redigerbare område... Når du så engang retter i dine inkluderede filer vil det bliver rettet på alle sider, mens det redigerbare indhold forbliver intakt.
I videoen vises også main som et inkluderet område...det kan godt være lidt misvisende...
Det er egentlig lidt op til dig selv hvor mange områder på siden du vil have inkluderet som standard... f.eks kunne du have 2 main...en som var standard og en som var redigerbar.
"Template" er bare en standard opsætning af alle dine sider...Du kan så bygge dine sider op omkring denne template, så de alle får et ens look. Altså... åben template...skriv indhold ind i det redigerbare område og gem filen som det den skal hedde...gør derefter det samme igen... på den måde vil du få 2 filer som er opbygget på sammen måde, men som er forskellige med hensyn til det redigerbare område... Når du så engang retter i dine inkluderede filer vil det bliver rettet på alle sider, mens det redigerbare indhold forbliver intakt.
- webudvikleren
- Rutineret
- Indlæg:80
- Tilmeldt:13. jun 2011, 21:11
- Geografisk sted:Esbjerg
- Kontakt:
Re: Include. :)
Du skal tænke på at du kan ændre din sides indhold vha. $_GET metoden.
Fx: http://www.ditdomæne.dk/index.php?side= ... tikelID=23
I linket ovenfor kan du trække variabler ud sådan:
side = underside
artikelID = 23
Med det kan du så hente artiklen som har ID 23 fra din database, og vise den i din template.php.
Et eksempel på din index.php:
Din template.php ser derfor sådan ud:
På din index.php vil den så vise teksten. Du kan pynte de forskellige include filer som du har lyst. Helheden skal bare være korrekt mht HTML standarder osv...
Hvis du ser videotutorialen igennem med variabler vil det give mere mening. Link: http://www.nemprogrammering.dk/Tutorials/PHP/T2PHP.php
Håber det hjælper lidt bedre ...
Fx: http://www.ditdomæne.dk/index.php?side= ... tikelID=23
I linket ovenfor kan du trække variabler ud sådan:
side = underside
artikelID = 23
Med det kan du så hente artiklen som har ID 23 fra din database, og vise den i din template.php.
Et eksempel på din index.php:
Kode: Vælg alt
<?php
if($_GET['side']==underside) {
include('template.php');
}
?>
Kode: Vælg alt
<?php
// forbind til databasecode laver du her
// herefter laver du en $query = mysql_query(SELECT * FROM artikler WHERE id = '$_GET[artikelID]');
// og udskriver denne sådan:
$artikelData = mysql_fetch_array($query);
echo $artikelData['indhold'];
// Her placerer du en mysql_close();
?>
Hvis du ser videotutorialen igennem med variabler vil det give mere mening. Link: http://www.nemprogrammering.dk/Tutorials/PHP/T2PHP.php
Håber det hjælper lidt bedre ...
Re: Include. :)
Tak alle sammen, forstår det meget bedre nu. Udover jeg ikke kan se hvad main er godt for, men altså.
- webudvikleren
- Rutineret
- Indlæg:80
- Tilmeldt:13. jun 2011, 21:11
- Geografisk sted:Esbjerg
- Kontakt:
Re: Include. :)
main.php er også blot en del af din index.php du kan trække ind. Du kan jo navngive dem og bruge dem som du har lyst og behov for... Ingen der siger at du SKAL gøre det...