Opbygning af website

Tags:    php

<< < 12 > >>
Hej
Det er mit først indlag på udvikleren. Håber I kan hjælpe mig lidt i gang med, hvordan jeg bygger et større website op fra bunden.

Jeg kunne godt tænke mig, at lave et CMS hvor man kan styre hele websitet. Hvordan laver jeg bl.a. log-in, breadcrumb, site map og en søge funktion på mit website?

Hvordan bygger jeg et website som tager højde for alle disse ting? Hvordan gør man det rent praktisk?

Jeg kører php, mysql og apache. Jeg har ikke den store erfaring, da jeg kun har programmeret hjemmesider de sidste halve år. Så bær over med mig.

På forhånd mange tak:)



15 svar postet i denne tråd vises herunder
2 indlæg har modtaget i alt 2 karma
Sorter efter stemmer Sorter efter dato
Du bør starte med mere simple ting som en tagwall. Læs også artiklen om sessions her på udv.dk



Jeg går udfra at du ved lidt om database og php siden du vil lave et større site, og at du kun har brug for "teorien" til at udvikle dit site.

I databasen ville jeg lave en tabel med 4 kolonner.

Fold kodeboks ind/udKode 


Id er en unik identifier.

Titel er en streng på max 30 karaktere, som indeholder indholdets titel. Dette kunne fx. være Velkommen, Kontakt osv.

Indhold er en text. Teksten skal indholde alt hvad du vil vise brugeren. Teksten skal ikke indholde selve designet med menu, top og lign.

Aktiv er en integer der enten kan være 0/1. Hvis værdien er 0, skal siden ikke vises i menuen, hvis den er 1 skal den vises. Du kan fx. bruge denne værdi, til at gemme ufærdigt arbejde, uden at gøre den synlig for brugere.

Derefter ville jeg lave en header.php og en footer.php som indeholde alt design.

I header.php(hvis det er den der skal genere menuen), skal du løbe tabellen igennem og genere din menu.

Fold kodeboks ind/udKode 


Hver gang der bliver trykket på en link bliver der så sat en url parameter. fx. www.minside.dk?id=2.. URL parameteren fortæller hvilket link brugeren har trykket på.

I din index.php skal du så have noget a la den kode der er vist nedenfor. Jeg vil lige gøre dig opmærksom på at du selv lige skal redigere i koden, da jeg ikke har testet den.

Fold kodeboks ind/udKode 


Jeg håber at du kan bruge det til noget. Ellers er du meget velkommen til at kontakte mig, hvis du skal bruge mere detaljeret information.

Kenneth




Indlæg senest redigeret d. 09.12.2006 18:36 af Bruger #3710
Du bør starte med mere simple ting som en tagwall. Læs også artiklen om sessions her på udv.dk


Jeg har kigget på mange af disse slags eksempler, men jeg mangler det overordnet billede.

Det jeg er i tvivl er, om jeg skal lave en index.php (hovedside) og så bruge include til at indhente de andre sider (nogle af dem med db kald) eller om man kan putte alle siderne ned i en db og køre det derfra?




Ja, det er teorien bag, hvordan man udvikler et større website jeg er ude efter.

Det er 'indhold' som jeg ikke helt forstår. Jeg forstår godt, at man kan hente noget tekst fra tabellen 'indhold', men hvis man ikke kan havde en decideret side liggende i 'indhold', hvad gør man så?







Var det ikke teorien du havde brug for at vide?

Hvis jeg skulle bruge en extern fil, ville jeg have en kolonne i databasen som hed type og en som hed ref. Hvis type fx. er text, vil siden blive behandlet som en almindelig text der bliver hentet fra databasen. Hvis type er html vil ref feltet referere til en php/html fil.

Hvis jeg misforstår dig må du lige sige til.



Var det ikke teorien du havde brug for at vide?

Hvis jeg skulle bruge en extern fil, ville jeg have en kolonne i databasen som hed type og en som hed ref. Hvis type fx. er text, vil siden blive behandlet som en almindelig text der bliver hentet fra databasen. Hvis type er html vil ref feltet referere til en php/html fil.

Hvis jeg misforstår dig må du lige sige til.


Ja, det er teorien, jeg er ude efter.

Det kan godt være, at det er mig som ikke lige kan se det, men som jeg ser det, så er der tre måder, hvorpå man kan lave et website:

1) Hvis det er en php/html side, så har man en reference til den i databasen som peger på filen. Der indgå også andre felter databasen, hvorved man kan udtrække data til fx. sitemap. Rigtigt forstået?

2) php/html sider bliver linket sammen med 'include' og henter tekst fra databasen. Hvordan laver man her sitemap, navigation m.m.?

3) php/html sider bliver lagt ned i databasen. Så alt bliver styret af databasen. Kan man det?

Det jeg er ude efter er, hvordan man holder styr på ens sider og hvordan man kan lave navigation, sitemap og søgefunktion på ens website. Kan alle tre metoder bruges? Hvad er den bedste metode?



Nicolai, Jeg bliver lige nødt til at spørge. Har du lavet meget i php/html/database?
Grunden til at jeg spørger er at det er nogle advanceret ting du skal til at lave (med mindre du har erfaring med programmering).

Alle dine forskellige sider på dit site skal gemmes i database. Du skal kune have én side (index.php), som viser indholder fra databasen. Du kan gemme input felter, tables osv. som du vil i databasen.

Vedr. sitemap, kan du tilføje en kolonne i databasen som fx. hedder parent. Denne kolonne indeholder idet på undersiden master. Det gør at du ved brug af løkker kan genere et sitemap.

Det er den måde du skal strukturere det på. Har du noget nu, som du har nogle specifikke problemer med? Det ville være en god ide, hvis du startede også løbende retter til, vil du får en meget bedre overordet forståelse.



Nicolai, Jeg bliver lige nødt til at spørge. Har du lavet meget i php/html/database?
Grunden til at jeg spørger er at det er nogle advanceret ting du skal til at lave (med mindre du har erfaring med programmering).

Alle dine forskellige sider på dit site skal gemmes i database. Du skal kune have én side (index.php), som viser indholder fra databasen. Du kan gemme input felter, tables osv. som du vil i databasen.

Vedr. sitemap, kan du tilføje en kolonne i databasen som fx. hedder parent. Denne kolonne indeholder idet på undersiden master. Det gør at du ved brug af løkker kan genere et sitemap.

Det er den måde du skal strukturere det på. Har du noget nu, som du har nogle specifikke problemer med? Det ville være en god ide, hvis du startede også løbende retter til, vil du får en meget bedre overordet forståelse.


Den helt store erfaring har jeg ikke endnu, men er vokset fra diverse begynderbøgerne og er startet på det lidt bedre anvanceret. Jeg ved godt, at det er advanceret ting jeg spørger indtil, men jeg har også tænkt mig at starte i det små og så løbende udvide sitet.

Det som har forvirret mig er, at man bl.a. laver breadcrumb på denne måde:

http://webmaster.hephey.dk/guide/42/

Det må da være lettere, at have en database til at holde styr på siderne eller er det bare mig?

Kan man lave et website, hvor man gemmer alle siderne i databasen undtagen index.php? Jeg kan kun prøvet med tekst, men ved ikke om man benytter denne metode. Det vil være super, hvis du lige kan afklare dette for mig.

Det er lige de sidste spørgsmål, som jeg skal have afklaret ellers har jeg forstået resten.





Den måde der er beskrevet hvordan du laver breadcrumbs på skal du (ville jeg ihvert fald ikke) tænke på når du opbygger et site.

Selve filerne vil ikke gemmes i databasen. Du kan lave det på 2 måder.

1) Gem alt information i databasen, lige fra <html> start til </html> slut. Hver nat kan du så lave et script der opretter nogle html filer udfra dataet du har i databasen.

2) Du gemmer det indhold der er forskelligt i fra hver side i databasen. Et design kan fx. bestå af en top, en menu i venstre side, indhold i midten og noget lir i højre side. Det data du ligger i database ville så være indholdet i midten.

Jeg vil anbefale af bruge eksemple nr. 2.




Den måde der er beskrevet hvordan du laver breadcrumbs på skal du (ville jeg ihvert fald ikke) tænke på når du opbygger et site.

Selve filerne vil ikke gemmes i databasen. Du kan lave det på 2 måder.

1) Gem alt information i databasen, lige fra <html> start til </html> slut. Hver nat kan du så lave et script der opretter nogle html filer udfra dataet du har i databasen.

2) Du gemmer det indhold der er forskelligt i fra hver side i databasen. Et design kan fx. bestå af en top, en menu i venstre side, indhold i midten og noget lir i højre side. Det data du ligger i database ville så være indholdet i midten.

Jeg vil anbefale af bruge eksemple nr. 2.


Så er vi enig som, at den beskrevet metode, hvorpå man laver breadcrumbs ikke er særlig hensigtmæssigt.

"Selve filerne vil ikke gemmes i databasen" - jeg mente også den information som en html/php indeholder - altså alt fra <html> til </html> eller <?php til ?>.

Hvis man gemmer alt information i databasen er det så nødvendigt, at køre et script som opretter html filer?



<< < 12 > >>
t