Moeilijke RewriteRule

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Front End Ontwikkelaar (React)

In het kort Als front end developer ga je aan de slag met maatwerkprojecten voor onze klanten. Denk bijvoorbeeld aan het toevoegen van een machine aan een database of het corrigeren van formulieren voor ingestuurde orders. Voorbeeld van zo’n project is Smart Link. De projecten waar je op ingezet kunt worden liggen binnen het technische domein waar jij als front end developer een grote rol speelt om samen met je back end collega’s de juiste oplossingen te leveren. please note that this particular role requires fluent Dutch language skills. Dit vind je leuk om te doen Het omzetten van designs

Bekijk vacature »

Airport Developer / System engineer

De functie Als onze nieuwe Airport Developer / System Engineer is je doel om uit nieuwbouw- en onderhoudsprojecten maximale waarde te creëren voor Schiphol Group en haar stakeholders. Vanuit je visie en expertise, maar ook (technologische) ontwikkelingen, wetgeving en beleid vertaal je klantwensen naar een gedegen programma van eisen. In de planontwikkelingsfase werk je nauw samen met Plan Ontwikkelaars om je kennis in te brengen ten behoeve van de kwaliteit van het investeringsvoorstel. Je overlegt met diverse partijen, stelt de vraag achter de vraag en verbindt zo de belangen van de luchthaven, proceseigenaar en asseteigenaar om tot een gedragen ontwikkelopgave

Bekijk vacature »

C# .NET Developer

Functie omschrijving C# .NET Developer gezocht. Ben jij een full stack developer die op zoek is naar een nieuwe uitdaging binnen een leuk snel groeiend bedrijf? Lees dan snel verder! Wij zijn op zoek naar een Developer met ervaring op het gebied van .NET die een organisatie in de regio Bennekom gaat versterken. Jij gaat je binnen dit bedrijf vooral bezighouden met het verbeteren van de functionaliteiten van hun dataplatform. Samen met andere ontwikkelaars denk je mee in oplossingsrichtingen, architectuur en nieuwe technologieën. Bedrijfsprofiel De organisatie waar je voor gaat werken heeft een onafhankelijk dataplatform ontwikkelt voor de agrarische sector.

Bekijk vacature »

Front-end developer (medior/senior)

Functie Het team bestaat uit een architect, fullstack developers, app developers, de product owner en projectmanager. Eenieder draagt vanuit zijn discipline bij aan een complete oplossing voor de klant. Uiteraard zul je hierin nauw samenwerken met je collega’s. Jij wordt verantwoordelijk voor de front-end implementatie en fungeert als lead op dit gebied binnen het team. Je kunt helder formuleren, ideeën uitdragen en overbrengen aan je collega’s. Qua technische stack is het vooral van belang dat je ervaren bent met Angular, HTML5, CSS en TypeScript. Verder is ervaring in NgRx, Bootstrap, BEM en Cypress een pré, evenals affiniteit met UX/UI Design!

Bekijk vacature »

Airport Developer / System engineer

De functie Als onze nieuwe Airport Developer / System Engineer is je doel om uit nieuwbouw- en onderhoudsprojecten maximale waarde te creëren voor Schiphol Group en haar stakeholders. Vanuit je visie en expertise, maar ook (technologische) ontwikkelingen, wetgeving en beleid vertaal je klantwensen naar een gedegen programma van eisen. In de planontwikkelingsfase werk je nauw samen met Plan Ontwikkelaars om je kennis in te brengen ten behoeve van de kwaliteit van het investeringsvoorstel. Je overlegt met diverse partijen, stelt de vraag achter de vraag en verbindt zo de belangen van de luchthaven, proceseigenaar en asseteigenaar om tot een gedragen ontwikkelopgave

Bekijk vacature »

Oracle APEX developer

Wat je gaat doen: Als Oracle APEX ontwikkelaar bij DPA werk je samen met collega’s aan de meest interessante opdrachten. Je zult je ervaring met SQL, PL/SQL, JavaScript, HTML en CSS inzetten om wensen van opdrachtgevers te vertalen naar technische oplossingen. Je werk is heel afwisselend, omdat DPA zich niet beperkt tot een specifieke branche. Zo ben je de ene keer bezig binnen de zorgsector, de andere keer is dit bij de overheid. Wat we vragen: Klinkt goed? Voor deze functie breng je het volgende mee: Je hebt een hbo- of universitaire opleiding afgerond Je hebt 2 tot 5 jaar

Bekijk vacature »

Medior Java developer (fullstack)

Wat je gaat doen: Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

Bekijk vacature »

Oracle APEX developer

Wat je gaat doen: Als Oracle APEX ontwikkelaar bij DPA werk je samen met collega’s aan de meest interessante opdrachten. Je zult je ervaring met SQL, PL/SQL, JavaScript, HTML en CSS inzetten om wensen van opdrachtgevers te vertalen naar technische oplossingen. Je werk is heel afwisselend, omdat DPA zich niet beperkt tot een specifieke branche. Zo ben je de ene keer bezig binnen de zorgsector, de andere keer is dit bij de overheid. Wat we vragen: Klinkt goed? Voor deze functie breng je het volgende mee: Je hebt een hbo- of universitaire opleiding afgerond Je hebt 2 tot 5 jaar

Bekijk vacature »

Mendix Developer

Voor Troostwijk Groep zoeken wij een: Mendix Developer Wij zoeken Je bent een getalenteerde en ervaren Mendix Developer en het is tijd om je horizon te verbreden. Je wilt minder coderen en meer modelleren, minder bezig zijn met allerlei technische details en randvoorwaarden en meer met functionaliteit. Daarnaast ben je trots op de innovatieve en gebruiksvriendelijke applicaties die je in de loop van de jaren hebt gebouwd. Werk je graag in een enthousiast team, wil je veel vrijheid en kun je tegelijkertijd goed met deadlines omgaan, dan ben jij absoluut degene die wij zoeken! Wat je nodig hebt is ruime

Bekijk vacature »

Database ontwikkelaar

Functieomschrijving Wil jij aan gave logistieke softwareprojecten werken en bij een uniek softwarebedrijf in de regio van Tilburg? Wacht niet langer en reageer snel op deze vacature. Als Database ontwikkelaar ga je aan de slag het schrijven van stored procedures en verder uitbouwen van de SQL database. Je werkt in een database team, met allemaal mensen die energie krijgen van software en techniek. Verder krijg je als taak: Optimaliseren en uitbouwen van de MS SQL databases die gebruikt worden; Optimaliseren van query's, waardoor er efficiënter gewerkt kan worden; Je werkt met de technieken T-SQL of PL/SQL; Bij interesse kan je

Bekijk vacature »

Cobol Developer

Dit ga je doen Als Cobol Ontwikkelaar zal je gaan meebouwen aan een onderdeel van het backend systeem waarbij je het functionele ontwerp vertaald naar een technische oplossing die geïntegreerd kan worden in de huidige omgeving. Je zorgt ervoor dat de bedrijfsprocessen op een efficiënte manier worden uitgevoerd en werkt proactief aan het verbeteren hiervan. Samen met jouw collega’s reviewen jullie elkaars code en test je je eigen code. Je werkt nauw samen met andere ontwikkelaars, testers en functioneel ontwerpers. Taken pakket: Beheren en doorontwikkelen van de bestaande omgeving; Vertalen van een functionele vragen naar een technische oplossing; Doorvoeren van

Bekijk vacature »

Traineeship Full Stack Java developer

Dit ga je doen Start jij op 7 augustus bij de Experis Academy dan kickstart jij jouw IT-carrière! We leiden je op tot een gewilde Full Stack Java Developer met alle kennis en vaardigheden die nodig zijn om de arbeidsmarkt te betreden. Wat kun je verwachten, hoe zit een dag in het leven van een Trainee eruit? Periode 1 Als Full Stack Java Developer Trainee volg je vanuit huis een op maat gemaakte onlinetraining die in het Engels wordt gegeven. De tijd die je kwijt bent aan het volgen van de training kun je vergelijken met een fulltime werkweek. In

Bekijk vacature »

PHP Developer

Dit ga je doen Je werkt nauw samen met het websitebureau aan de ontwikkeling en optimalisering van het internationale platform; Je ziet nieuwe webshops op en voert optimalisaties door; Je bouwt aan technische, functioneel en commercial resultaat; Je vindt het leuk om zelfstandig binnen een internationale organisatie te werken, maar krijgt ook energie om samen met collega's te werken. Hier ga je werken Voor een bedrijf in de regio Rotterdam zijn wij opzoek naar een PHP Developer. Je wordt onderdeel van het communicatieteam en gaat je bezighouden met het optimaliseren van de website van dit internationale bedrijf. Je schakelt veel

Bekijk vacature »

Back end developer PHP

Functie Met een complex en uitgebreid e-commerce platform, een eigen PIM-systeem en eigen scan applicatie – krijg jij dagelijks te zien hoe jouw werk gebruikt wordt door miljoenen gebruikers. En we staan qua development pas in de startblokken, aangezien er nog meerdere projecten op de plank liggen te wachten! Ons huidige development team bestaat uit 8 programmeurs. Er wordt dagelijks gereflecteerd op geschreven code, Scrum taken en kennisdelen onderling is een must. Onze voertaal binnen ons team is Engels, dit omdat wij twee internationale collega’s hebben. Ons huidige “IT Landschap” bestaat voornamelijk uit allerlei losse onderdelen die individueel, maar ook

Bekijk vacature »

Back-end programmeur

Functieomschrijving Heb jij kort geleden je MBO of HBO ICT in ontvangst mogen nemen? Of ben je klaar voor een nieuw hoofdstuk in jouw carrière? Voor een uitdagende werkgever in de regio van Tilburg zijn wij op zoek naar een ambitieuze back-end programmeur met affiniteit met MS Acess. Samen met een enthousiast team ben je verantwoordelijk voor het bouwen van maatwerk software voor hun klanten. Je hebt kennis of ervaring van SQL, Maar affiniteit met MS Acess is nog belangrijker. Je bent sociaal naar klanten en flexibel ingesteld. Je denkt altijd in kansen en gaat graag de uitdaging aan. Verder

Bekijk vacature »
Jens V

Jens V

19/01/2011 19:28:50
Quote Anchor link
Hoi allen,

Ik ben bezig met het maken van een CMS, waarbij je in een willekeurige pagina meerdere willekeurige modules kan zetten. Om deze modules te modereren (vb: bij nieuws een bericht toevoegen) of om door modules te kunnen 'bladeren' (vb: in een catalogus in een category gaan) zou ik bepaalde parameters moeten meegeven in de URL ($_GET dus). Dit alles verwerk ik met mod_rewrite zodat het er allemaal een beetje netjes uit ziet.

Om zo een module te kunnen 'besturen' of 'beheren' moet ik dus GET-parameters meegeven, die voor elke module verschillen (kunnen) zijn. Mijn url om een module 'apart' te bekijken is als volgt:
/module/<module_id>/ en die wordt dan doorgestuurd naar module.php?moduleid=<module_id> (met deze rule dus: RewriteRule ^module/([0-9]+)/$ module.php?moduleid=$1 [L]).

Als ik hier nu nog extra parameters aan wil toevoegen, moet die RewriteRule anders... Omdat uit het moduleid niet af te leiden is over wat soort module het gaat (althans niet voor de htaccess), zou ik in de url evt de parameter namen zelf ook kunnen meegeven. Dat zou dan in de aard van het volgende zijn:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
/module/<module_id>/<parameternaam1>/<parametervalue1>/<parameternaam2>/<parametervalue2>/<parameternaam3>/<parametervalue3>/...
stuurt door naar
module.php?moduleid=<module_id>&<parameternaam1>=<parametervalue1>&<parameternaam2>=<parametervalue2>& .....

Is dit een goed idee? Zo ja, iemand een idee hoe ik deze rule dan maak? Het aantal parameters is dus variabel...

Groeten,
Jens
Gewijzigd op 19/01/2011 19:29:19 door Jens V
 
PHP hulp

PHP hulp

20/04/2024 10:32:23
 
Jaron T

Jaron T

19/01/2011 19:47:47
Quote Anchor link
Ik heb mijn rewrite voor mijn cms zoals onderstaand:

Quote:

Options +FollowSymLinks

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -f [NC,OR]
RewriteCond %{REQUEST_FILENAME} -d [NC]
RewriteRule ^(.*?)$ $1 [L]

RewriteRule ^([^/]*)/([^/]*)/([^/]*)/([^/]*)/([^/]*)\.*$ index.php?module=$1&action=$2&id=$3&subaction=$4&subid=$5
RewriteRule ^([^/]*)/([^/]*)/([^/]*)/([^/]*)\.*$ index.php?module=$1&action=$2&id=$3&subaction=$4
RewriteRule ^([^/]*)/([^/]*)/([^/]*)\.*$ index.php?module=$1&action=$2&id=$3
RewriteRule ^([^/]*)/([^/]*)\.*$ index.php?module=$1&action=$2
RewriteRule ^([^/]*)\.*$ index.php?module=$1
 
Jens V

Jens V

19/01/2011 19:49:31
Quote Anchor link
Dus voorgedefinieerd. De vraag is nu of het ook mogelijk is om die namen van de parameters variabel te maken. (als dat nut heeft ten minste...)
 

19/01/2011 21:21:10
Quote Anchor link
Ik doe gewoon één rule met QSA zodat alles daar binnenkomt en dat parse ik dan weer met php.
 
Jens V

Jens V

19/01/2011 21:23:16
Quote Anchor link
Dat had je vorige week ook al eens gezegd. Heb daarover gedacht, maar dat lijkt mij ook wel veel (denk)werk om dat ineens te steken. Opzicht is het niet zo moeilijk met de string operaties, maar de logica erachter om je parameters dan ook in order te krijgen (vb als je geen parameternaam geeft omdat dat niet nodig is...).
 

19/01/2011 21:34:47
Quote Anchor link
Jens V op 19/01/2011 21:23:16:
Dat had je vorige week ook al eens gezegd.

Open jij een nieuw topic voor eenzelfde probleem? :-X

Jens V op 19/01/2011 21:23:16:
Heb daarover gedacht, maar dat lijkt mij ook wel veel (denk)werk om dat ineens te steken. Opzicht is het niet zo moeilijk met de string operaties, maar de logica erachter om je parameters dan ook in order te krijgen (vb als je geen parameternaam geeft omdat dat niet nodig is...).

Achja, sowieso heb je wel iets nodig als een frontcontroller...
Volgens mij weet jijzelf wat je wilt accepteren, dus ook wat je erin kan stoppen en wat je eruit wilt hebben. Als je dat weet zie ik geen probleem.
 
Jens V

Jens V

19/01/2011 21:38:32
Quote Anchor link
Karl Karl op 19/01/2011 21:34:47:
Open jij een nieuw topic voor eenzelfde probleem? :-X


Haha, nee:) Nu gaat het effectief om 1 bepaalde rewriterule waarvoor ik ook niet direct iets op internet vindt. In het andere topic ging het om een syntax fout van een regex.
 
Pim -

Pim -

19/01/2011 22:35:33
Quote Anchor link
Gebruik een framework!!! Of bouw zelf iets eenvoudigs.

index.php
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?php
$query
= isset($_GET['q']) ? $_GET['q'] : '';

require_once 'router.php';
$action = router($query, $parameters);

if($action == false)
    $action = 'error404';

// Zelf even directory traversal aanpakken
$file = 'actions/'.str_replace('_', '/', $action).'.php';

if(!file_exsists($file)) {
    $action = 'error404';
    $file = 'actions/error404.php';
}


require_once $file;

$function = $action.'_action';

$function($parameters);
?>


router.php
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
function router($query, &$parameters)
{

    // Moet lukken
}
?>


actions/index.php
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
functions index_action($parameters)
{

    $name = isset($parameters['name']) ? $parameters['name'] : 'Jens';
    echo 'Hello, '.$name.'!';
}

?>


Oid, is niet zo moeilijk en veel flexibeler dan met .htaccess
OOP is nog wat mooier
 

19/01/2011 23:09:39
Quote Anchor link
Pim - op 19/01/2011 22:35:33:
Gebruik een framework!!! Of bouw zelf iets eenvoudigs.
(....)
Oid, is niet zo moeilijk en veel flexibeler dan met .htaccess
OOP is nog wat mooier


Woei, ding ding ding!!!
Jackpot ! :-D
 
Bas Cost Budde

Bas Cost Budde

19/01/2011 23:53:02
Quote Anchor link
Jens V op 19/01/2011 19:49:31:
Dus voorgedefinieerd. De vraag is nu of het ook mogelijk is om die namen van de parameters variabel te maken. (als dat nut heeft ten minste...)


de volgorde in de url ligt wel vast. Als je dan de namen 'variabel' maakt, ik hoop dan tussen controllers, niet tussen requests, hou je eigenlijk een array over waarvan de elementen verschillende dingen betekenen. Niet leuk.

In welke behoefte moet het voorzien? Kun je overwegen om de parameternaam ook op de url op te geven, zoals in

host/order/13/regel/22/edit

?

Edit: ow hell, dat zeg je erboven zelf ook. Wat dan te doen? Pak de hele url op, zoals Karl ook zegt, en blaas 'm met explode in stukjes, zodat je stuk voor stuk kunt behandelen. Twee-stuk voor twee-stuk denk ik, een parameternaam plus waarde.
Gewijzigd op 19/01/2011 23:55:53 door Bas Cost Budde
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.