Vraag over zend framework.
Normaliter bouw je een standaard site met zend op deze manier:
www.mijnurl.nl/module/controller/action
Ik heb de default module, en een module 'forum' en nog een module (noem ik straks).
Ik heb nu dus
mijnurl.nl/
mijnurl.nl/index/contact
mijnurl.nl/forum/controller/action
etc
Nu wil ik alleen 'soms' afwijken. Wanneer dat 'soms' is heb ik al afgevangen in een preDispatch plugin function.
De afwijking is dat na de url eerst een variable moet komen:
www.mijnurl.nl/variable1/controller/action
www.mijnurl.nl/variable2/controller/action
In al die gevallen moet hij module "vardefaultmodule" gebruiken...
en daarbij moet het ik ook weer door kunnen gaan met andere modules
www.mijnurl.nl/variable1/module/controller/action/
www.mijnurl.nl/variable2/module2/controller/action/
Maar hoe krijg ik dit voorelkaar?
- zend mijnurl.nl/variable/module/controller/action
-
28-09-2010, 19:55 #1
- Berichten
- 1.031
- Lid sinds
- 17 Jaar
zend mijnurl.nl/variable/module/controller/action
-
-
29-09-2010, 15:08 #2
- Berichten
- 1.899
- Lid sinds
- 18 Jaar
Is het geen optie om die uitzonderingen via htaccess goed door te laten sturen?
Iets in de zin van;
RewriteRule ^variable1/([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)/$ www.mijnurl.nl/$1/$2/$3/?var=variable1
Ik weet niet hoe je verder die vars zou kunnen opvragen in je ZEND framework, hier ben ik niet mee bekend.
-
29-09-2010, 16:10 #3
- Berichten
- 1.031
- Lid sinds
- 17 Jaar
Helaas geen optie omdat de 'variable' geheel afhankelijk is van wat er in mijn database staat.
Als de waarde wel voorkomt in de database dan moet het via zo'n variable werken en anders op de normale zend-manier.
-
29-09-2010, 18:43 #4
- Berichten
- 613
- Lid sinds
- 19 Jaar
Al gekeken naar de Router?
-
29-09-2010, 20:14 #5
- Berichten
- 1.031
- Lid sinds
- 17 Jaar
Ja, maar volgens mij kan ik daarmee niet doen wat ik wil...
-
29-09-2010, 23:31 #6
- Berichten
- 613
- Lid sinds
- 19 Jaar
Je kunt gewoon zelf variabelen defineren in de router, bijv. zoiets:
PHP Code:$route = new Zend_Controller_Router_Route( ':language/:module/:controller/:action/*' array( 'language' => 'english', 'module' => 'default', 'controller' => 'index', 'action' => 'index' ) ); $router->addRoute('default', $route);
-
30-09-2010, 12:11 #7
- Berichten
- 1.031
- Lid sinds
- 17 Jaar
Thanx! Ik had alleen een andere (waarschijnlijk minder mooie) oplossing gevonden maar ik ga toch even met de route aan de slag.
(topic mag dicht)
Plaats een
- + Advertentie
- + Onderwerp
Marktplaats
Webmasterforum
- Websites algemeen
- Sitechecks
- Marketing
- Domeinen algemeen
- Waardebepaling
- CMS
- Wordpress
- Joomla
- Magento
- Google algemeen
- SEO
- Analytics
- Adsense
- Adwords
- HTML / XHTML
- CSS
- Programmeren
- PHP
- Javascript
- JQuery
- MySQL
- Ondernemen algemeen
- Belastingen
- Juridisch
- Grafisch ontwerp
- Hosting Algemeen
- Hardware Info
- Offtopic