[PHP/MySQL]Dynamische content galery

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • gitaarwerk
  • Registratie: Augustus 2001
  • Niet online

gitaarwerk

Plays piano,…

Topicstarter
Beetje ongelukkige titel gekozen, maar misschien is dit de beste omschrijving.
offtopic:
Dit is misschien een beetje een crosspost, maar is nu wat specifieker en meer uitgebreid


Het gaat om het volgende.
Voor mijn portfolio site, heb ik verschillende content die zichtbaar moet worden gemaakt.
Denk aan schetsen, foto's, muziek, 3d werk, complete "case study", etc etc

Nu is het logisch dat ieder soort content een wat andere manier van presenteren heeft. Maar nu zit ik met het volgende probleem.
Een portfolio wordt vaak uitgebreider met ook meer soorten content.

De tekst en plaatjes(links van plaatjes) moeten uit een databeest worden gehaald, maar wel op zo een manier, dat ik verschillende soorten onderwerpen toe kan voegen met bijbehorend lay-out.

Nu kan ik dus een tabel maken met alle soorten erin, en een tabel maken met daarin content. Dit is niet een mooie oplossing aangezien er dus enorme redundantie bestaat.

Het idee kwam in me op om dmv php dus een tabel aan te maken in de database als er een extra soort erbij komt. Maar hier zit ik met de vraag "hoe zet ik er dan een nieuwe lay-out op?"

Het is ook mogelijk om een standard layout te maken, wellicht het makkelijkst, maar liever niet eigenlijk.

even nog een verduideling:
Soort "logo" - bevat 1 plaatje en 1 stuk tekst
Soort "case study" - bevat 5 plaatjes en 8 stukken tekst
Soort "Muziek" - bevat 1 plaatje, een lijstje met links en 3 stukken tekst
Heeft iemand hier een goede visie op het probleem? en eventueel tips ?

[ Voor 18% gewijzigd door gitaarwerk op 20-06-2004 16:53 ]

Ontwikkelaar van NPM library Gleamy


Acties:
  • 0 Henk 'm!

  • bartware
  • Registratie: Juni 2001
  • Laatst online: 25-03-2023

bartware

@jabber.org

Ik zou een datamodel maken met categorieen en typen.
Dus elk stuk content is van een bepaald type (text, plaatje, link) en hoort in een categorie.
3 tabellen: categorie, type, content.
(Ik ga er even vanuit dat je niet de content zelf in de DB stopt, want dan wordt het wellicht complexer. Dus in de tabel de locatie van de bestanden.)
In de content tabel foreign keys naar categorie en type.

Met PHP genereer je dan per categorie een pagina, waar je de content per type toont.

Je kan voor elke categorie een eigen PHP page maken, vanwege de manier waarop je het wilt tonen. Of je maakt een generieke PHP page en regelt de layout met CSS.

Edit: oja, je kan ook voor elk type een eigen tabel maken, aangezien een link natuurlijk wel wat anders is dan een stuk text, of een locatie van een bestand. In dat geval is Content de tabel met de koppeling tussen typetabel en soort.

[ Voor 16% gewijzigd door bartware op 20-06-2004 17:10 ]

Heb ik me begrepen?
Cycle Vision 2020: 17-20 juli Sportpark Sloten & Wheelerplanet Spaarnwoude


Acties:
  • 0 Henk 'm!

  • gitaarwerk
  • Registratie: Augustus 2001
  • Niet online

gitaarwerk

Plays piano,…

Topicstarter
Ik stop de content wel zelf in een DB... dat is juist, omdat ik via een een soort van template systeem (mappen met een layout erin > plaatjes, headerfile, footerfile en css file) werk. Vandaar dat het redelijk gecompliceerd is.

3 tabellen met typen, content & categorieen zou kunnen... ik zou deze eventueel met een functie kunnen laten parsen die ik in het template gooi, dus geen vaste layout heeft per layout-versie.
Dat zou een mogelijkheid dus zijn ja...maar mijn punt is eigenlijk deze in het standard functie bestand te houden, zodat er echt puur alleen de layout van de site veranderd wordt .

is het met 3 tabellen niet overbodig? want ik denk zelf dat je in de catogerie tabel een extra veldje kan opnemen met een style_ID bijvoorbeeld.. en die style_ID's zijn opgenomen in de functie.
Maar dan blijft nu de vraag, hoe de layout beinvloeden??

nu speelt er nog wat in mijn hoofd.. .stel, met een soort waarderingssysteem dat een functie berekent wat waar moet komen te staan? of hier een combinatie van.

een standard page met een aantal voorwaarden, en verder aangepast kan worden..ala nieuws systeem...

:op de edit:
Het zou kunnen, ja, met zo een koppeltabel.. en hiervoor bijvoorbeeld een paar pagina's generen met een aantal minimale objecten toe te voegen..

- pagina met 1 object
- pagina met 2 objecten
- pagina met 3 objecten
- pagina met 4 objecten

etc etc..

hmz.. ik ga nog eens wat brainstormen
----
done

ik denk dat het niet goed te doen is om alsmaar nog extra categorieen bij te verzinnen. Ik heb er zoveel in mijn hoofd, maar ik zal ze gaan moeten beperken.

Wat ik ga doen is het voglende denk ik.

1. Een categorieen tabel maken, maar hierin een veld waarin de tabelnamen zijn van de categorie
2. Maak bij iedere categorie een aparte functie, die beinvloedbaar is door css
3. Van iedere categorie een hoofd en koppeltabel maken. met in de hoofdtabel algemene details (ook voor subindexen) en ala forum style

[ Voor 30% gewijzigd door gitaarwerk op 20-06-2004 17:29 ]

Ontwikkelaar van NPM library Gleamy


Acties:
  • 0 Henk 'm!

  • djluc
  • Registratie: Oktober 2002
  • Laatst online: 21-09 14:28
Installeer eens Typo3 en kijk eens hoe ze het daar opgelost hebben. Ze werken daar o.a. met 4 vrij defineerbare kolommen, die kunnen eenvoudig aangepast worden.

Acties:
  • 0 Henk 'm!

Verwijderd

Best toevallig maar ik ben met zo'n zelfde systeem bezig.
Ik heb verschillende categorieen (mysql tabellen) en daar kun je meerdere datatypes in kwijt (kortetekst, langetekst, plaatje, bestand, enz...)
Tevens is er een contentboom waar de informatie in een boomstructuur is opgeslagen.

Ik maak een klasse waar de informatie opgeslagen, uitgelezen kan worden en waar ook categorieen aangemaakt kunnen worden etc.. allemaal op een standaard manier.

Volgens mij is het hiermee heel eenvoudig om een redelijk goed werkend CMS te maken.

Mocht je intresse hebben in de techniek erachter dan moet je even mailen(leon (at) all4internet.nl), misschien zijn de krachten te bundelen.

[ Voor 3% gewijzigd door Verwijderd op 22-06-2004 14:23 ]