Avatar billede flemche Nybegynder
13. december 2010 - 17:44 Der er 8 kommentarer og
1 løsning

Best Practice på dynamiske sider.

Hejsa

Jeg er igang med at lave et dynamisk website og er kommet i tvivl omkring hvad der er Best Practice, når det gælder design af selve sitet.

Jeg har lavet en menu i CSS og er ved at skrive session koden i PHP så jeg kan holde styr på de folk som logger ind.

Min tvivl er om jeg skal lave en ny siden for hvert menupunkt og så includer menu, sessions, header og footer scriptet ind i disse sider eller om man skal lave en slags mekanisme, hvor indholdet loades ind i ens template.

Hvis det er det sidst, hvordan gøres det så ???
Findes der evt. et sted man kan læse om det?

Det skal helst være metoden med den højeste sikkerhed.

/Lemche
Avatar billede DGudiksen Nybegynder
13. december 2010 - 18:34 #1
du kan vel bare include dit indhold/content.

Altså lav en div hvor det indholdet for hver side skal vises, også include siden som skal vises derinde i.

Normalt ville jeg også vælge at have sessions included sammen med min database connection.
Avatar billede martiinkolle Nybegynder
13. december 2010 - 20:43 #2
jeg ville nok lave en side med mit design, session, menu... også bruge en include metode, til at få indholdet(teksten) ind på siden. fx. ved en url som ser sådan ud:

index.php?side=omkring

og en php fil som ser nogenlunde sådan ud:
//her vil header, session, menu og alt det andet være
if ($_GET['side']) {
    require_once($_GET['side'].".php");
}
//her vil alt det der er under være

også har du en fil der hedder:
omkring.php

Dette er meget "simpelt", og nok ikke det aller sikreste, men det fungere.
Avatar billede besoft Nybegynder
13. december 2010 - 21:47 #3
Det er en fin idé, at lave en template fil, hvor du har alt til siden, bortset fra det faktiske indhold.

Dog skal du være opmærksom på, at hvis du bruger samme header og footer til alle sider, uden at sende noget individuelt data til headeren, så vil din <title></title> være ens på alle sider. Det samme gælder for keywords og description. Dvs dine sider vil være elendige på google.

Så hvis indexering ikke har betydning, så er det måden at gøre det på.

En anden måde kunne være, at lave en header.php og en footer.php. De enkelte sider har så deres eget filnavn (side1.php, side2.php eller hvad de nu skal hedde).

Metoden er så, at fx side1.php opbygges således:

<snip>
$metaTitle = "Min fede side";
$metaKeywords = "ord1, ord2, ord3...";
$metaDescription = "Læs om mig og min hun på min fede side.";

include("header.php");

# - faktisk indhold af siden
echo "Velkommen til min side";
..
..
..
# - slut

include("footer.php");
</snip>

Sørg så for, at header.php læser dine 3 meta-vars og benytter dem i <head></head> sektionen (såfremt de er defineret). Eller benyttes et sæt default værdier.

Dette giver dig masser af muligheder for variation og langt bedre indexering.

Så undgår du også alt for mange ?var=val&var2=val2 i URL'en. Dem er fx Google ikke så vilde med. Det bedste er faktisk, at dit filnavn relaterer til dit indhold på siden (ja ja... Google ranking algoritme)
Avatar billede martiinkolle Nybegynder
13. december 2010 - 22:39 #4
jeg er helt enig i det med url'en. Men det kan jo "bare" (alt er relativt) laves om via .htaccess, så det bliver søgemaskine optimeret. .. :D

Hvis du vil lave det hele lidt mere smart, kan du have alt dit indhold liggende i en database. Man skal godt nok tænke på lidt mere sikkerhed igen, men i længden tror jeg du vil blive gladere for det.
Avatar billede besoft Nybegynder
13. december 2010 - 22:52 #5
Helt enig martiinkolle.

Stykket med selve indholdet af den enkelte side, kunne med stor fordel lige i en DB.

Det samme burde være tilfældet med informationerne til meta info. Hvis ikke du har denne del på plads, kan du omskrive alt hvad du vil med mod_rewrite, uden effekt :)

Men men men... der er jo lige så mange muligheder, som der er mennesker (næsten da).
Avatar billede flemche Nybegynder
14. december 2010 - 00:59 #6
Hejsa

Først lige tak for forslagene.

Jeg kan ikke helt gennemskue hvilken af de 2 nederste forslag som er bedst, da de jo hver især giver en løsning på problemet.

For lige at give lidt mere information så har jeg allerede inkluderet en database til sitet, som skal indeholde folks profiler. Jeg tror dog ikke at almindelig tekst på siden vil egne sig til at ligge i databasen, men det er måske kun mig der ikke kan forstille mig hvordan det skal codes optimalt.

Som jeg skrev skal der være en del sikkerhed på sitet og det vil derfor bestå af en pre-login og en post-login del.
Jeg har så tænkt mig at bruge sessions til at styre om folk kan få adgang til siderne bag post-login.
Jeg ved ikke om dette har indflydelse på valget af løsningsmodel?

Der blev også nævnt noget med google indexering og hvordan man kunne bruge .htaccess for at omgå kryptiske URL's
Dette har jeg dog pt. ikke styr på  så hvis du kunne uddybe det lidt nærmere. :o)

Jeg har også et side spørgsmål:
Når vi snakker Header.php er det så en fordel at have Menubaren i Header filen eller er det bedre at ligge denne i en include for sig selv??

På forhånd TAK.

/Lemche
Avatar billede intenz Novice
14. december 2010 - 13:22 #7

For lige at give lidt mere information så har jeg allerede inkluderet en database til sitet, som skal indeholde folks profiler. Jeg tror dog ikke at almindelig tekst på siden vil egne sig til at ligge i databasen, men det er måske kun mig der ikke kan forstille mig hvordan det skal codes optimalt.

Det er altid en god ide at seperere indhold fra kode. Det er ikke sjovt at skulle ind og rette i koden hver gang man skal ændre et komma. Ved at have det i databasen, kan du lave en administration til det.


Som jeg skrev skal der være en del sikkerhed på sitet og det vil derfor bestå af en pre-login og en post-login del.
Jeg har så tænkt mig at bruge sessions til at styre om folk kan få adgang til siderne bag post-login.
Jeg ved ikke om dette har indflydelse på valget af løsningsmodel?

Det har ingen indflydelse. Og at bruge et session er det normale, fornuftige valg til 'logind-sikkerhed'.


Der blev også nævnt noget med google indexering og hvordan man kunne bruge .htaccess for at omgå kryptiske URL's
Dette har jeg dog pt. ikke styr på  så hvis du kunne uddybe det lidt nærmere. :o)

Det er et stort emne, prøv at læs lidt på google:
http://www.google.dk/search?q=htaccess+url+seo


Jeg har også et side spørgsmål:
Når vi snakker Header.php er det så en fordel at have Menubaren i Header filen eller er det bedre at ligge denne i en include for sig selv??

Det er en personlig præference. Jeg foretrækker at seperere forskelligt indhold så meget som muligt. Så header.php vil f.eks. indeholder HTML koden til toppen af siden. menu.php vil indeholder koden til menuen, osv.
Det hjælper lidt overskueligheden, så man kan finde tingene igen senere.
Avatar billede flemche Nybegynder
06. oktober 2013 - 14:27 #8
Besoft:

Sender du et svar ind så jeg kan få sagen afsluttet.

Tak for alle svar.

/Flemming
Avatar billede flemche Nybegynder
04. april 2014 - 13:36 #9
Nå der kom ikke noget svar fra Besoft, så jeg afslutter sagen.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester