htaccess met een vraagteken in url

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • Jboy1991
  • Registratie: September 2012
  • Laatst online: 10:48
Goedendag,

Ik loop vast op het volgende:
Ik wil op een pagina een zoeksysteempje maken. Ik heb het via Get gedaan omdat er max 20 records per pagina worden geshowt. En dmv get kan ik het pagina systeem gewoon behouden ipv post.

Nu komt door het zoekformpje automatisch ?search=<term> in de urlbalk. Dit is erg mooi alleen kan ik er verder niks mee...

Ik heb het volgende als htacces redirect:
RewriteRule ^console/([0-9]+)/games/?search=(.*) game_list.php?console_id=$1&search=$2 [L,QSA,NC]
De url is dan als volgt:
/console/3/games/?search=dfdfscc

Maar toch wordt de website niet gepakt...

Acties:
  • 0 Henk 'm!

  • simoncgbn
  • Registratie: Februari 2013
  • Laatst online: 02-12-2024
Je laatste slash na games zal sowieso weg moeten. Op dit moment probeer je een nieuwe pagina die '?search=dfdfscc' heet te raadplegen. Je wilt echter de parameters toevoegen op de pagina games.

/console/3/games?search=dfdfscc. Zo zal het eruit moeten zien.

Acties:
  • +1 Henk 'm!

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 09-09 13:58

NMe

Quia Ego Sic Dico.

Met of zonder die slash zou allebei moeten werken. Ironisch genoeg zorgt dat vraagteken daar al voor omdat het een regular expression is en dat vraagteken het karakter ervoor optioneel maakt. Maar dat zorgt dus ook dat het vraagteken niet gematcht wordt.

Je wil je vraagteken escapen.

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Acties:
  • 0 Henk 'm!

  • Jboy1991
  • Registratie: September 2012
  • Laatst online: 10:48
NMe schreef op maandag 3 juli 2017 @ 16:55:
Met of zonder die slash zou allebei moeten werken. Ironisch genoeg zorgt dat vraagteken daar al voor omdat het een regular expression is en dat vraagteken het karakter ervoor optioneel maakt. Maar dat zorgt dus ook dat het vraagteken niet gematcht wordt.

Je wil je vraagteken escapen.
nja het aparte was dat php op een of andere manier niet $_GET['search'] niet pakt als de url gewoon zo is
/console/2/games?search=32

Acties:
  • 0 Henk 'm!

  • Hiroj
  • Registratie: Mei 2010
  • Laatst online: 04-09 14:23
Omdat je bron adres ook een query parameter bevat, zul je de redirect iets anders moeten opstellen.

code:
1
2
3
RewriteCond %{REQUEST_URI} ^/console/([0-9]+)/games
RewriteCond %{QUERY_STRING} search=(.*)
RewriteRule ^(.*)$ game_list.php?console_id=$1&search=$2 [L,QSA,NC]


Ik heb hier in de REQUEST_URI bewust geen eindigende slash geplaatst. Zo kan er bijvoorbeeld ook nog /games/random-string komen te staan. Wil je toch hard eindigen op een slash of op /games, dan hoef je enkel de $ teken er nog achter te plaatsen.

Let er ook op dat REQUEST_URI ook moet beginnen met een slash, tenzij je een RewriteBase ingesteld hebt uiteraard.

Acties:
  • 0 Henk 'm!

  • Jboy1991
  • Registratie: September 2012
  • Laatst online: 10:48
Hiroj schreef op maandag 3 juli 2017 @ 22:38:
Omdat je bron adres ook een query parameter bevat, zul je de redirect iets anders moeten opstellen.

code:
1
2
3
RewriteCond %{REQUEST_URI} ^/console/([0-9]+)/games
RewriteCond %{QUERY_STRING} search=(.*)
RewriteRule ^(.*)$ game_list.php?console_id=$1&search=$2 [L,QSA,NC]


Ik heb hier in de REQUEST_URI bewust geen eindigende slash geplaatst. Zo kan er bijvoorbeeld ook nog /games/random-string komen te staan. Wil je toch hard eindigen op een slash of op /games, dan hoef je enkel de $ teken er nog achter te plaatsen.

Let er ook op dat REQUEST_URI ook moet beginnen met een slash, tenzij je een RewriteBase ingesteld hebt uiteraard.
Bedankt. Zal je voor mij ook kunnen uitleggen wat je gedaan hebt. Dan leer ik er ook nog wat van Haha

ah helaas werkt het als nog niet

Acties:
  • 0 Henk 'm!

  • b2vjfvj75gjx7
  • Registratie: Maart 2009
  • Niet online
Jboy1991 schreef op maandag 3 juli 2017 @ 22:41:
[...]

Bedankt. Zal je voor mij ook kunnen uitleggen wat je gedaan hebt. Dan leer ik er ook nog wat van Haha
Tweakers is geen goede bron voor dit soort zaken - check gewoon @overflow

https://stackoverflow.com...eserve-get-url-parameters

https://stackoverflow.com...s-for-multiple-parameters

etc...

Acties:
  • +1 Henk 'm!

  • Jboy1991
  • Registratie: September 2012
  • Laatst online: 10:48
Nee tweakers is geen plek voor kant en klare oplossingen. Als iemand een oplossing aandraagt is het voor mij maar ook voor anderen handiger dat er ook uitleg bij gegeven wordt anders neem ik het klakkeloos over zonder te weten wat ik doe.

En natuurlijk heb ik eerste Google op een evt oplossing. Alleen kwam ik niet verder omdat ik meerdere parameters in de url heb.

[ Voor 9% gewijzigd door Jboy1991 op 03-07-2017 22:51 ]

Pagina: 1