[php] wanted: site structuur 101

Pagina: 1
Acties:

  • Dr.Bob
  • Registratie: November 1999
  • Laatst online: 14-08 10:48

Dr.Bob

Dr.Bob says: HEAL!

Topicstarter
Beste mensen, tot mijn eigen spijt moet ik toegeven dat ik af en toe behoorlijk kan vastlopen in het opzetten van een juiste site structuur: wanneer gebruik ik subdirs, of laat ik alles puur en alleen uit mysql komen (nu nog meestal niet het geval, meestal een combi), en als ik subdirs gebruik, waar zet ik dan de images die alleen bij de pagina's in die subdir horen enz.

Ik ben desperately in need van wat goeie tips, online resources en/of boeken. Het enige dat ik tot nu toe ben tegen gekomen dat enigzins hierover gaat is Harnessing PHP's FreeEnergy. Maar graag hoor/lees ik wat meer visies hierop. Thanx in advance :)

NERDCORE FOR LIFE


  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

Er is geen "ultiem" antwoord op...

Het hangt zooo gigantisch van je te bouwen site af. Mar wat bedoel je met "directories versus mysql" ??

  • Johannes
  • Registratie: Juni 2000
  • Laatst online: 14-09 23:09
Misschien helpt dit linkje je nog wel:

http://ww.web-con.nl/index.php?id=25

Uit volle borst op weg naar nergens / Zonder reden zonder doel
Met m'n zeden en m'n zonden / En mijn angstig voorgevoel
Laat mij mijn kont tegen de krib / Laat mij dit goddeloze lied
Hef jij je handen maar ten hemel / Maar red mij niet


  • Dr.Bob
  • Registratie: November 1999
  • Laatst online: 14-08 10:48

Dr.Bob

Dr.Bob says: HEAL!

Topicstarter
O, ik hoef ook zeker geen _ultiem_ antwoord, ik wil alleen graag weten hoe anderen hiermee omgaan, of welke resources hier een goeie kapstok voor bieden om je structuur aan vast te hangen.

Met directories vs. mysql bedoel ik dat als je bv. in de navigatie op 'projecten' klikt of je dan [a] naar /projecten/index.php wordt gestuurd en dat daar vandaan de pagina weer wordt opgebouwd met de files die in die dir staan (of naar /index.php?sub=projecten

Met directories vs. mysql bedoel ik dat als je bv. op de homepage in de navigatie op 'projecten' klikt, met als URL bv. /index.php?sub=projecten&page=index, of je daarmee (a) binnen je root-index.php de file index(.php) uit de subdir /projecten laadt, of (b) dat je uberhaupt geen subdirs gebruikt, maar een mysql query laat uitvoeren die zeg maar 'select txt from table where topic is projecten and file is index' ...


Edit:
Bovendien wil ik ook gebruik kunnen maken van een zo'n 2e navigatie-regeltje die laat zien waar je je bevindt, bv>

home > projecten > 2001 > buitenland

Misschien vereist zoiets ook nog weer het een of ander.

NERDCORE FOR LIFE


  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

Ahzo.

Nahja, ik heb meestal de volgende ideeen erover:

Alles wat niet veranderd EN geen extra vereisten heeft, in een plain html.
Alles wat wel extra vereisten heeft (login code etc) maar weinig veranderd, doe ik in een string in de php-code (of een template).

En die plekjes die dan echt vaak veranderen komen uit de database.

Soms doe ik het allemaal in 1 index file, of een index file die wat andere zaken importeert.
Soms ook in allemaal losse files.

  • Orphix
  • Registratie: Februari 2000
  • Niet online
Ik vind code die in 1 bestand is ondergebracht erg irritant. Je krijgt dan idd url's als index.php?sub=projecten&page=index. Deze bestanden zijn vaak heel groot, onoverzichtelijk en moeilijk te updaten.

Ik moet er wel even bij vermelden dat url's als bovenstaand niet altijd slecht hoeven te zijn. Als ze aan de hand van de parameters bepaalde PHP bestanden includen dan heb ik daar niks op tegen. Ik heb zelf deze methode nog nooit nodig gehad.

Ik weet niet echt of dit een antwoord is op je vraag ... maar zo begreep ik 'm iig :)

  • OxiMoron
  • Registratie: November 2001
  • Laatst online: 27-06 10:54
Hmm ik heb het op moment zo:

1 index.php waar hij bijna alles op weergeeft.
De structuur ziet er zo uit:

switch($page)
{
case x:
x();
break;
case x2:
x2();
break;
}
//...
function x();
{
//..
$inhoud = "ietsuitdedatabase";
//..
}
function x2();
{
//..
$inhoud = "ietsandersuitdedatabase";
//..
}
//.
?>
<html>
<!--...-->
<? echo $inhoud; ?>
<!--...-->
</html>


En voor toevoegen/editen/deleten van dingen heb ik aparte bestanden.

deze staan allemaal in de root.

Dan een directory met scripts (js)
1 met styles (css)
en 1 met plaatjes

Albert Einstein: A question that sometime drives me hazy: Am I or are the others crazy?


  • Dr.Bob
  • Registratie: November 1999
  • Laatst online: 14-08 10:48

Dr.Bob

Dr.Bob says: HEAL!

Topicstarter
Orphix, dat is niet echt wat ik bedoel. Ja, wel dat van dat het uberhaupt niet slim is om 1 lange file te maken, maar dat is dat juist toch niet het geval met een URL als index.php?sub=projecten&page=index ? Gezien die url mag je er denk ik sowieso vanuit gaan dat een framework in index.php wordt gedefinieerd en dat de variabele inhoud uit projecten/index wordt gehaald.

Ja, wat ik er niet bij heb gezegd is dat het wel de bedoeling is dat de site binnen één, in de 'root' index.php gedefineerde 'template' blijft, dus al klikkend door de site blijft de layout hetzelfde. Ofcourse. :)

OxiMoron: okee, duidelijk, jij gebruikt dus voor inhoud geen subdirs, maar doet alles vanuit de database. Goed begrepen?

NERDCORE FOR LIFE


  • Dr.Bob
  • Registratie: November 1999
  • Laatst online: 14-08 10:48

Dr.Bob

Dr.Bob says: HEAL!

Topicstarter
En wat ik ook heel belangrijk vind, is dat je ook altijd de mogelijkheid hebt om www.mijnsite.nl/projecten in te kunnen tiepen en dat ie dan ook goed uitkomt.

NERDCORE FOR LIFE


  • Orphix
  • Registratie: Februari 2000
  • Niet online
Op maandag 21 januari 2002 10:23 schreef Dr.Bob het volgende:
En wat ik ook heel belangrijk vind, is dat je ook altijd de mogelijkheid hebt om www.mijnsite.nl/projecten in te kunnen tiepen en dat ie dan ook goed uitkomt.
Tja dan moet je of met directories gaan werken of met multiviews (in apache). Ik vind het zelf altijd onnodig lastig omdat je dan rekening moet gaan houden met relatieve paden e.d.
Voor een echt 'ander' project, dus niet een onderdeel van 1 site, dan is het geen probleem aangezien die vaak zijn eigen includes e.d. heeft.

  • Dr.Bob
  • Registratie: November 1999
  • Laatst online: 14-08 10:48

Dr.Bob

Dr.Bob says: HEAL!

Topicstarter
Okee, maar neem nou een site als DevShed, die tonen eigenlijk precies wat ik bedoel:
1 template voor layout, maakt niet uit op welke pagina je zit, en toch ook via - zoals het lijkt - subdirs te benaderen, bv. http://www.devshed.com/Server_Side/PHP .
Ik weet dat vroeger de source van devshed opvraagbaar was, maar dat heb ik helaas niet meer kunnen vinden.

En begrijp me goed, ik ben helemaal niet opzoek naar een stuk script om effe lekker simpel hoppekee te copyen, maar ik kom er gewoon zelf niet goed uit om hier een goeie standaard structuur voor neer te zetten, en het verbaast me dat ik hier nauwelijks info over op het web vind, terwijl het zo'n een belangrijk deel van het bouwen + onderhouden van een site is. Ik zal toch niet de enige met dit dilemma zijn :? :)

NERDCORE FOR LIFE

Pagina: 1