Permalink & folders vs database

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • JJ93
  • Registratie: Maart 2013
  • Laatst online: 11-09 18:39

JJ93

Error 418

Topicstarter
Ik ben nu een aantal dagen bezig met een nieuwe website waar ik wat projecten op wil laten zien. De eisen die ik persoonlijk heb opgesteld zijn:
- Simpel en duidelijk
- Responsive
- Makkelijk om nieuwe content toe te voegen

Dit valt natuurlijk vrij simpel te regelen door bijvoorbeeld Wordpress te gebruiken maar ik vind het leuker om zoveel mogelijk zelf te maken. Uiteindelijk heb ik nu wel wat werkend met een combinatie van HTML, PHP, Javascript en CSS. Dat is ook live te zien op *snip*

Ik werk op dit moment simpelweg met een mapje portfolio waar zich weer andere categorie mapjes in bevinden. In de categorie mapjes zelf zit dan weer een plaatje en een text file voor elk project met exact dezelfde naam op de extensie na.

Afbeeldingslocatie: http://i.imgur.com/ml4Njve.png

Met behulp van PHP trek ik daar dus alle gegevens uit en maak ik er een responsive grid van. Als je de eerste keer op een item klikt krijg je een korte beschrijving en als je er voor de tweede keer op klikt ga je naar de uitgebreide details pagina.

De link is dan de naam van de categorie folder en de bestandsnaam zonder extensie. Voorbeeld: http://*snip*/details.php?category=Android&name=Kenteken-Informatie
Daar wil ik eigenlijk een mooiere link van maken. Dit kan dus met behulp van permalink als het goed is. Ik kwam ook deze site http://www.generateit.net/mod-rewrite/index.php tegen waarbij je de mod rewrite makkelijk kan genereren.

Dan kom je dus uit op http://*snip*/Android/Kenteken-Informatie.html met de volgende rewrite
[code]RewriteEngine On
RewriteRule ^([^/]*)/([^/]*)\.html$ /details.php?category=$1&name=$2 [L][/code]
Ik weet alleen niet waar ik dit precies moet plaatsen en of ik nog rekening moet houden met iets anders. De site is gehost op een Debian VPS waar ik root access heb.

De eerste vraag is dus vooral hoe het zit met permalinks.

Permalinks werken nu.

De tweede vraag is hoe het zit met het performance verschil tussen folders en een database. Persoonlijk vind ik folders wel iets overzichtelijker en daar kan ik makkelijker via FTP wat nieuwe projecten aan toevoegen.
EDIT: Met behulp van een database & CRUD is het eigenlijk nog overzichtelijker en makkelijker (@Barryvdh reactie)

Maar de indexing van een database is handiger voor het navigeren naar het volgende en vorige project bij de details pagina. Ik ben er overigens nog niet over uit of het logisch is om dan alleen projecten te laten zien uit dezelfde categorie, of gewoon alle projecten door te lopen..
Afbeeldingslocatie: http://i.imgur.com/hGFM3AK.png

Een derde vraag is misschien ook wel op z'n plaats: search engine optimalisation. Wat is handig om op te nemen en wat niet?

[ Voor 16% gewijzigd door RobIII op 03-05-2014 22:06 ]


Acties:
  • 0 Henk 'm!

  • azerty
  • Registratie: Maart 2009
  • Laatst online: 11-09 21:48
Een kleine hint:

http://*snip*/details.php?category=Android&name=%3C/h1%3E%3Cscript%3Ealert%28%27lol%27%29;%3C/script%3E%3Ch1%3EHallo

Is leuk hoor })

[ Voor 6% gewijzigd door RobIII op 03-05-2014 22:06 ]


Acties:
  • 0 Henk 'm!

  • JJ93
  • Registratie: Maart 2013
  • Laatst online: 11-09 18:39

JJ93

Error 418

Topicstarter
wsitedesign schreef op zaterdag 03 mei 2014 @ 18:18:
Een kleine hint:

http://*snip*/details.php?category=Android&name=%3C/h1%3E%3Cscript%3Ealert%28%27lol%27%29;%3C/script%3E%3Ch1%3EHallo

Is leuk hoor })
Jaja vaak genoeg dit soort dingen tegenkomen :+ Maar kan nu verder geen kwaad voor zover ik weet? Een tijdje geleden waren we wel bezig met een school project en kwam er na een tijdje ook een iframe in de database. En die kwam weer op de site waardoor je verder nergens meer op kon klikken.

EDIT: Eigenlijk moet ik dit natuurlijk helemaal voorkomen. Zal vast wel weer iets mogelijk zijn.

[ Voor 15% gewijzigd door RobIII op 03-05-2014 22:06 ]


Acties:
  • 0 Henk 'm!

  • Ramon
  • Registratie: Juli 2000
  • Laatst online: 09:39
Als je een database gebruikt dan maak je (laat het genereren) natuurlijk een mooi CRUD (Create Read Update Delete) systeempje waarmee je je projecten kan beheren. Dan heb je geen FTP meer nodig voor het updaten van project-informatie.

Een PHP framework die het erg makkelijk maakt om met databases te werken is bijvoorbeeld CakePHP. CakePHP komt ook met de mooie urls, die jij permalinks noemt.

Wat je ook kan doen als je helemaal geen PHP of databases wilt gebruiken is een static site generator gebruiken. Je gebruikt dan bijvoorbeeld een bepaalde template taal, die wordt door een programma op jouw computer omgezet naar html bestanden met een directorystructuur zoals jij die hebt ingesteld. Er zijn zelfs tools die dan na het compileren automatisch de gegenereerde bestanden syncen via FTP.

Overigens kan je ook mooie urls maken zonder PHP of rewrites: Maak op je FTP maar eens twee directories aan (bijv. "projecten" en als subdir "test" en zet een index.html in de test-directory, en surf dan naar www.domein.nl/projecten/test/, daar heb je mooie urls! Een aantal static site generators maken ook gebruik van dit principe.

Check mijn V&A ads: https://tweakers.net/aanbod/user/9258/


Acties:
  • 0 Henk 'm!

  • JJ93
  • Registratie: Maart 2013
  • Laatst online: 11-09 18:39

JJ93

Error 418

Topicstarter
Ramon schreef op zaterdag 03 mei 2014 @ 18:47:
Als je een database gebruikt dan maak je (laat het genereren) natuurlijk een mooi CRUD (Create Read Update Delete) systeempje waarmee je je projecten kan beheren. Dan heb je geen FTP meer nodig voor het updaten van project-informatie.

Een PHP framework die het erg makkelijk maakt om met databases te werken is bijvoorbeeld CakePHP. CakePHP komt ook met de mooie urls, die jij permalinks noemt.

Wat je ook kan doen als je helemaal geen PHP of databases wilt gebruiken is een static site generator gebruiken. Je gebruikt dan bijvoorbeeld een bepaalde template taal, die wordt door een programma op jouw computer omgezet naar html bestanden met een directorystructuur zoals jij die hebt ingesteld. Er zijn zelfs tools die dan na het compileren automatisch de gegenereerde bestanden syncen via FTP.

Overigens kan je ook mooie urls maken zonder PHP of rewrites: Maak op je FTP maar eens twee directories aan (bijv. "projecten" en als subdir "test" en zet een index.html in de test-directory, en surf dan naar www.domein.nl/projecten/test/, daar heb je mooie urls! Een aantal static site generators maken ook gebruik van dit principe.
Een CRUD systeempje zou inderdaad wel handig zijn.

Ik heb verder niks tegen PHP of databases, ik zat alleen wat te klooien met die folders en bestanden om te kijken wat er mogelijk was. Ik loop nu wel tegen een aantal limitaties aan waar je met een database meteen van af bent. Dus ik ga zo maar nadenken over database design.

Bij het automatisch genereren heb je ook wel limitaties m.b.t. class names en dergelijke lijkt me. Ik zat zelf te denken om gewoon HTML code voor elk project in database te zetten. Nadeel is wel dat je misschien tientallen bestanden moet updaten als je iets aan het design hebt verandert.

Ik zat eerst ook te denken om het gewoon met verschillende folders met index.html op te lossen. Maarja dan moet je wel alles laten genereren anders blijf je bezig.

Acties:
  • 0 Henk 'm!

  • Barryvdh
  • Registratie: Juni 2003
  • Laatst online: 10:26
JJ93 schreef op zaterdag 03 mei 2014 @ 19:42:
[...]

Een CRUD systeempje zou inderdaad wel handig zijn.

Ik heb verder niks tegen PHP of databases, ik zat alleen wat te klooien met die folders en bestanden om te kijken wat er mogelijk was. Ik loop nu wel tegen een aantal limitaties aan waar je met een database meteen van af bent. Dus ik ga zo maar nadenken over database design.

Bij het automatisch genereren heb je ook wel limitaties m.b.t. class names en dergelijke lijkt me. Ik zat zelf te denken om gewoon HTML code voor elk project in database te zetten. Nadeel is wel dat je misschien tientallen bestanden moet updaten als je iets aan het design hebt verandert.

Ik zat eerst ook te denken om het gewoon met verschillende folders met index.html op te lossen. Maarja dan moet je wel alles laten genereren anders blijf je bezig.
Je zet natuurlijk de content in de database, niet de hele html pagina hè..

Acties:
  • 0 Henk 'm!

  • JJ93
  • Registratie: Maart 2013
  • Laatst online: 11-09 18:39

JJ93

Error 418

Topicstarter
Barryvdh schreef op zaterdag 03 mei 2014 @ 20:20:
[...]

Je zet natuurlijk de content in de database, niet de hele html pagina hè..
Ik zat te denken aan een standaard pagina waarbij ik er specifieke gegevens in zet. Dus deels HTML lijkt me dan..
EDIT: Permalinks werken nu!

[ Voor 4% gewijzigd door JJ93 op 03-05-2014 21:05 ]


Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Je kunt je probleem/vraag prima uitleggen/stellen door "domein.nl" te gebruiken i.p.v. naar een live site te linken; ondanks dat je er waarschijnlijk geen commercieel belang bij hebt of iets dergelijks is 't wel spam(merig) ;)

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Acties:
  • 0 Henk 'm!

  • Ramon
  • Registratie: Juli 2000
  • Laatst online: 09:39
JJ93 schreef op zaterdag 03 mei 2014 @ 19:42:
[...]

Een CRUD systeempje zou inderdaad wel handig zijn.

Ik heb verder niks tegen PHP of databases, ik zat alleen wat te klooien met die folders en bestanden om te kijken wat er mogelijk was. Ik loop nu wel tegen een aantal limitaties aan waar je met een database meteen van af bent. Dus ik ga zo maar nadenken over database design.

Bij het automatisch genereren heb je ook wel limitaties m.b.t. class names en dergelijke lijkt me. Ik zat zelf te denken om gewoon HTML code voor elk project in database te zetten. Nadeel is wel dat je misschien tientallen bestanden moet updaten als je iets aan het design hebt verandert.

Ik zat eerst ook te denken om het gewoon met verschillende folders met index.html op te lossen. Maarja dan moet je wel alles laten genereren anders blijf je bezig.
Op zich halen de static site generators 90% van de beperkingen van een statische site weg. Je gebruikt templates en daarmee heb je hergebruik van html dus geen limitaties van class names. Als je geen reacties of andere interactieve functionaliteit op je site gebruikt kan een static site alles wel. Je zou bijvoorbeeld eens kunnen kijken naar Metalsmith of de lijst van generators.

Leuk is ook dat je de bestanden en content van je static site mee kan nemen in je eigen backup-oplossing, scheelt weer het moeten maken van sql-backups.

Waarom ik dit ook zeg is omdat als je PHP gebruikt en je niet alles afdicht qua security je site gehackt kan worden om misschien wel malware te verspreiden, dus daar moet je dan goed rekening mee houden.

Check mijn V&A ads: https://tweakers.net/aanbod/user/9258/


Acties:
  • 0 Henk 'm!

  • JJ93
  • Registratie: Maart 2013
  • Laatst online: 11-09 18:39

JJ93

Error 418

Topicstarter
RobIII schreef op zaterdag 03 mei 2014 @ 22:07:
Je kunt je probleem/vraag prima uitleggen/stellen door "domein.nl" te gebruiken i.p.v. naar een live site te linken; ondanks dat je er waarschijnlijk geen commercieel belang bij hebt of iets dergelijks is 't wel spam(merig) ;)
Oh ik zie het ja, thx voor het veranderen.
Ramon schreef op zaterdag 03 mei 2014 @ 23:46:
[...]

Op zich halen de static site generators 90% van de beperkingen van een statische site weg. Je gebruikt templates en daarmee heb je hergebruik van html dus geen limitaties van class names. Als je geen reacties of andere interactieve functionaliteit op je site gebruikt kan een static site alles wel. Je zou bijvoorbeeld eens kunnen kijken naar Metalsmith of de lijst van generators.

Leuk is ook dat je de bestanden en content van je static site mee kan nemen in je eigen backup-oplossing, scheelt weer het moeten maken van sql-backups.

Waarom ik dit ook zeg is omdat als je PHP gebruikt en je niet alles afdicht qua security je site gehackt kan worden om misschien wel malware te verspreiden, dus daar moet je dan goed rekening mee houden.
Ziet er wel goed uit ja! Ook wel een groot voordeel dat je niet rekening hoeft te houden met het 100% afdichten van elke mogelijke plek waar iets mee gedaan kan worden. Toch vind ik het ook wel leuk om zelf wat in elkaar te zetten met een database. Maar er zijn toch wel een aantal risico's aan verbonden.
Pagina: 1