Stel, ik wil een veilingsite maken. Neem aan dat deze site maar drie pagina's kent:
1. overview van de product-categorien
2. product-details
3. bied-pagina
Ik heb twee manieren om dit te programmeren:
manier 1: ik maak drie pagina's aan:
- http://www.mijnsite.com/categories.php
- http://www.mijnsite.com/product-details.php
- http://www.mijnsite.com/place-bid.php
manier 2: ik include een pagina in mijn index.php
- http://www.mijnsite.com/index.php?page=categories
- http://www.mijnsite.com/index.php?page=product-details
- http://www.mijnsite.com/index.php?page=place-bid
pseudo-code van index.php:
waarbij ik natuurlijk wel ervoor zou zorgen dat het onmogelijk is om een "evil page" in te laden via de querystring:
http://www.mijnsite.com/i...evilsite.com/evilcode.php
etc. etc. maar dit is buiten de vraag.
In principe is elke site via een van deze twee manieren op te bouwen. Mijn vraag is nu: wat zijn belangrijke verschillen tussen deze twee? Brengt het toepassen van manier 2 een zware belasting voor index.php met zich mee (deze wordt immers altijd aangeroepen) en is dit nadeling dan wanneer ik fysiek verschillende pagina's maak?
Graag jullie mening over de voor/ en nadelen van beide methodes. Waarom gebruik je zelf 1 of 2? Is het slechts een kwestie van voorkeur of zijn er daadwerkelijk (performance) redenen aan te geven?
1. overview van de product-categorien
2. product-details
3. bied-pagina
Ik heb twee manieren om dit te programmeren:
manier 1: ik maak drie pagina's aan:
- http://www.mijnsite.com/categories.php
- http://www.mijnsite.com/product-details.php
- http://www.mijnsite.com/place-bid.php
manier 2: ik include een pagina in mijn index.php
- http://www.mijnsite.com/index.php?page=categories
- http://www.mijnsite.com/index.php?page=product-details
- http://www.mijnsite.com/index.php?page=place-bid
pseudo-code van index.php:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
| ... <body> <table cellpadding="0" cellspacing="0" width="100%" border="0"> <tr> <td><?php include_once "topnav.php"; ?></td> </tr> <tr> <td> </td> </tr> <tr> <td><?php include_once($_GET['page']); ?></td> </tr> <tr> <td> </td> </tr> <tr> <td><?php include_once "footer.php" ?></td> </tr> </table> </body> ... |
waarbij ik natuurlijk wel ervoor zou zorgen dat het onmogelijk is om een "evil page" in te laden via de querystring:
http://www.mijnsite.com/i...evilsite.com/evilcode.php
etc. etc. maar dit is buiten de vraag.
In principe is elke site via een van deze twee manieren op te bouwen. Mijn vraag is nu: wat zijn belangrijke verschillen tussen deze twee? Brengt het toepassen van manier 2 een zware belasting voor index.php met zich mee (deze wordt immers altijd aangeroepen) en is dit nadeling dan wanneer ik fysiek verschillende pagina's maak?
Graag jullie mening over de voor/ en nadelen van beide methodes. Waarom gebruik je zelf 1 of 2? Is het slechts een kwestie van voorkeur of zijn er daadwerkelijk (performance) redenen aan te geven?
[ Voor 52% gewijzigd door Reveller op 13-12-2003 21:55 . Reden: ik was een beetje dom (zie eerste reaktie) ]
"Real software engineers work from 9 to 5, because that is the way the job is described in the formal spec. Working late would feel like using an undocumented external procedure."