Moeilijke RewriteRule

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

PEGA Senior System Architect

BNP Paribas Cardif is looking for: PEGA Senior System Architect Do you have an excellent knowledge about PEGA development? Do you want to put this know-how to use and create innovative technical solutions for business & IT challenges? Would you like to work for an international Insurance Company? In that case you may be the new PEGA Senior System Architect we’re looking for! What’s the job about? You will be responsible for the development activities on our PEGA platform. You report to the Deputy Manager Software Development & Tests and you’ll collaborate closely with other internal and external developers and

Bekijk vacature »

Applicatiebeheerder

Applicatiebeheerder (40 uur) Word jij onze nieuwe collega? Dagelijks creëren wij bewustwording bij organisaties over bedrijfsveiligheid en trainen wij mensen om bij een acute noodsituatie adequaat te handelen. Op een innovatieve manier maken we zo samen Nederland een stukje veiliger. Dit doen we met enthousiaste en gedreven mensen. Ervaren professionals binnen hun vakgebied! Kun jij hierbij van toegevoegde waarde zijn? De komende jaren zetten we vol in op automatisering om onze klanten nog beter van dienst te kunnen zijn. Onze huidige ICT afdeling uitbreiden is dan ook een must. Daarom zijn wij per 1 januari 2020 op zoek naar een

Bekijk vacature »

.NET Developer Medicatie / Apotheek

Jij krijgt een kick van het ontwikkelen van complexe software. Voor onze vestiging in Hoogeveen zoeken wij een .NET Developer Medicatie / Apotheek die graag met de laatste Microsoft-tools en -technieken wilt werken, interessant? Jouw baan Je bent verantwoordelijk voor het ontwerpen, ontwikkelen, ondersteunen en onderhouden van de module Medicatie / Logistiek & Apotheek. Je gaat nauw samen werken met zowel interne als externe klant om nieuwe functionaliteiten te ontwikkelen om onze klanten te ondersteunen in hun werkproces. Het gaat om complexe ICT-producten die feilloos moeten functioneren binnen de complexe omgeving van een zorgorganisatie. ChipSoft maakt gebruik van een zelf

Bekijk vacature »

Medior/Senior C# .NET Developer; interne functie!

Functieomschrijving Je komt hier terecht in een klein ontwikkelteam, bestaande uit jouw en twee andere Senior programmeurs. Samen gaan jullie ervoor zorgen dat het CRM-systeem continu optimaal werkt, zodat alle overige werknemers van de organisatie hier ten alle tijden in kunnen en in kunnen werken. Jullie houden je bezig met bugfixing, maar ook met het ontwikkelen van nieuwe modules. Omdat jullie met zo'n klein team zijn is er sprake van hele korte lijnen. Jullie staan continu met elkaar in contact en werken nauw samen. Er is veel sprake voor eigen inbreng en je hebt veel verantwoordelijkheid. Je werkzaamheden zijn het

Bekijk vacature »

Senior Java Developer vacature

Jij volgt ontwikkelingen op de voet. Sterker nog: jij bent er onderdeel van. Jij loopt voorop. Jij denkt met klanten mee en helpt hen innoveren. Zo kun jij een bijdrage leveren aan de Rabobank-app, de beveiliging van treinen voor Pro-rail verbeteren of de website van ING een boost geven. Vergaderen? Liever gewoon zorgen dat het werkt! Hoe omschrijft men een Sogetist? Gedreven, resultaatgericht en niet snel tevreden. Wat niet wil zeggen dat je nooit met hem of haar kunt lachen. Integendeel. Plezier hoort wat ons betreft net zo goed bij werken. Maar we gaan op de eerste plaats voor de

Bekijk vacature »

Technisch Ontwerper / Applicatieontwikkelaar max.

Wie zoeken we? Je bent de beste in je vak of hebt de ambitie en de potentie om de beste te worden. Je hebt de passie om nieuwe technologieën te blijven leren en continu jezelf te ontwikkelen. Je hebt de pioniersgeest en drive om nieuwe technologieën, methodieken en concepten toe te passen in projecten en bij klanten. Je vindt het leuk om kennis te delen met collega’s, klanten en vakgenoten. Je bent een ware professional en ambassadeur voor CIMSOLUTIONS. Je voelt je thuis in een informele, collegiale en professionele sfeer waar de aandacht voor de klant en voor de medewerker

Bekijk vacature »

PHP developer

Heb jij uitgebreide kennis van PHP, Linux en front-end? En hou je van een dynamische omgeving, waarin jouw baan er toe doet, jouw ideeën worden gehoord en waar je werkelijk het verschil kan maken voor jouw collega’s en het bedrijf? Zo ja, dan zijn wij op zoek naar jou in de positie van: PHP developer voor onze locatie in Veghel Over de positie: Als PHP programmeur bouw je aan diverse webbased applicaties in nauwe samenwerking met collega’s van IT, E-commerce en externe partners. Jouw taken omvatten, maar zijn niet gelimiteerd tot: gave internationale (web) applicaties bedenken, ontwerpen, maken en implementeren;

Bekijk vacature »

SMART SERVICES SOFTWARE DEVELOPER

SMART SERVICES SOFTWARE DEVELOPER Heerlen Technology 13th month pay & Holiday allowance Bonus Program 26 holidays Training & Learning opportunities Laptop & Smartphone 32-40 hours p.w. Smart Services Software Developer – Heerlen, Limburg How does your job as Software Developer look like at Accenture? Within Accenture’s Innovation Center for Smart Services in Heerlen, you will be joining a highly skilled team professionals working on Blockchain, Artificial Intelligence, Salesforce.com, Java, Web Development, VR/AR, and IoT solutions. As Developer your main responsibilities include creating requirements, software development and integrating applications for large international clients. Project complexity is high and the technical challenge

Bekijk vacature »

Senior Front-end Developer

Senior Front-end Developer bij Capgemini Bij Capgemini bouwen we niet zomaar webapplicaties en mobiele apps waar onze opdrachtgevers en hun klanten mee overweg kunnen. Nee, we ontwikkelen applicaties voor miljoenen gebruikers en dan ook nog apps waar men écht gelukkig van wordt. Van de medewerkers in de organisatie zelf tot aan de eindgebruikers. En als Senior Front-end Developer ben jij hierbij onmisbaar! De rol Van het bouwen van nieuwe functionaliteiten, het behouden, bewaken en verbeteren van de huidige infrastructuur en applicaties tot aan het ontwikkelen van nieuwe innovaties. Als Front-end Developer ben je de lead developer binnen jouw scrumteam en

Bekijk vacature »

Jr Business Intelligence developer

Functieomschrijving Hoor jij ook vaak dat je nog net niet genoeg werkervaring hebt als Business Intelligence developer? Terwijl jij nou juist beschikt over de technische skills en drive om een Business Intelligence developer te worden… Wil jij een BI developer worden en met grote hoeveelheden data werken binnen een grote en complexe (internationale) omgeving? Yacht IT en Randstad Groep Nederland bieden jou een fantastische kans om jouw expertise te vergroten en jouw carrière een boost te geven middels het Talent Programma van Yacht IT. Veel bedrijven zetten in op de transformatie naar ‘digital’ en vormen daarbij nieuwe teams. Naast jouw

Bekijk vacature »

Senior ICT Consultant / SQL Ontwikkelaar

Functieomschrijving SQL / database ontwikkelaar / consultant De requirements in kaart brengen van de klant Het analyseren en ontwerpen maken de bedrijfsprocessen van de klant Het maken van functioneel ontwerp Het ontwikkelteam aansturen De database ontwikkelen en onderhouden Queries schrijven en inrichten Tabellen maken in SQL Programmeren in lowcode Het testen en uitleveren van nieuwe functionaliteiten naar de acceptatie en productieomgeving Het bieden van customer support Functie-eisen HBO werk en/of denkniveau, opgedaan door ervaring of opleiding is een eis; Ruime ervaring met SQL (tabellen maken / stored procedures / inrichten) is een eis;Zowel Nederlands als Engels spreken en schrijven; Kennis

Bekijk vacature »

Software Engineer medior

Over de functie Als Software Engineer ben je met jouw scrumteam van A tot Z betrokken bij het (door)ontwikkelen van de software. Naast het ontwikkelen en testen van de software geef je ook passend advies aan onze klanten. Je maakt daarbij gebruik van de nieuwste technieken waaronder o.a. Azure, Angular,.Net core, MS-SQL server en de elastic search stack. Om je kennis up-to-date te houden verdiep je je regelmatig in nieuwe ontwikkelingen omtrent je vakgebied en probeer je deze effectief te vertalen naar mogelijkheden voor ons bedrijf. Jij als medior bent gedreven om dagelijks de mooiste ontwikkelingen te realiseren en neemt

Bekijk vacature »

Medior C#.Net / Ontwikkelaar / Developer / Softwar

Functieomschrijving C#.Net / Ontwikkelaar / Developer / Software Engineer Ontwerpen van nieuwe applicaties; Herschrijven van bestaande applicaties; Meedraaien in uitdagende projecten; Code reviewen; Communiceren met de business. Functie-eisen HBO werk- en denk niveau; Minimaal 3 jaar ervaring als Software Engineer; Kennis van C# en SQL server zijn een eis; Je hebt ervaring met het werken in een Scrum / Agile omgeving; Heb je al kennis van Micrsoft Azure, dan is dit een belangrijke pré; Kennis van ASP .NET, MVC, Rest, Xamarin, XML/JSON en HTML5/CSS3 zijn mooi meegenomen. Bedrijfsomschrijving Deze organisatie is werkzaam in de e-commerce branche. Het is een snel

Bekijk vacature »

PHP developer

Heb jij uitgebreide kennis van PHP, Linux en front-end? En hou je van een dynamische omgeving, waarin jouw baan er toe doet, jouw ideeën worden gehoord en waar je werkelijk het verschil kan maken voor jouw collega’s en het bedrijf? Zo ja, dan zijn wij op zoek naar jou in de positie van: PHP developer voor onze locatie in Veghel Over de positie: Als PHP programmeur bouw je aan diverse webbased applicaties in nauwe samenwerking met collega’s van IT, E-commerce en externe partners. Jouw taken omvatten, maar zijn niet gelimiteerd tot: gave internationale (web) applicaties bedenken, ontwerpen, maken en implementeren;

Bekijk vacature »

C# Developer

De uitgebreide versie Jij hebt ruim twee jaar ervaring als developer. Nu wil je graag je tanden zetten in nog complexere projecten. Samen met je team bereik je nieuwe hoogtes en zelfstandig maak je meters. Je hebt behoefte aan collegae die jou alles leren op het gebied van technologie maar wilt tegelijkertijd ook graag je eigen opgedane kennis delen. Alles wat vandaag nog onbekend is, moet je morgen toepassen in de volgende uitdaging en dàt is wat jou scherp houdt. Je hebt geen zin in een 60-urige werkweek maar haalt wel plezier uit zo nu en dan een technische meeting,

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

19/01/2020 05:34:40
 
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...)
 
Karl Karl

Karl Karl

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...).
 
Karl Karl

Karl Karl

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
 
Karl Karl

Karl Karl

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.