htaccess en special chars

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Femke

femke

18/09/2008 12:11:00
Quote Anchor link
Ik wil in de url van een pagina de titel meenemen, alleen nu stuit ik op het volgende probleem

stel de é (%C3%A9) komt voor in een titel, dan breekt htaccess zijn nek, ik heb van alles al geprobeerd

RewriteRule ^([A-Za-z0-9-_\%\;]+)/([A-Za-z0-9]+)/$ nieuws.php?titel=$1&id=$2 [L]

alleen niets werkt. Wat is de juiste oplossing? Moet ik de titel eerst nog encoden? \% aan de rewriterule toevoegen is niet genoeg.
 
PHP hulp

PHP hulp

14/11/2024 23:27:53
 
Han eev

Han eev

18/09/2008 12:22:00
Quote Anchor link
Als je je het goed doet, komen de %C3 en %A9 er niet in voor, ik dacht dat deze de < en de > zijn, die horen niet in een titel thuis. Zorg ervoor dat je de titel beter codeert.
 
Femke

femke

18/09/2008 12:25:00
Quote Anchor link
Han schreef op 18.09.2008 12:22:
Als je je het goed doet, komen de %C3 en %A9 er niet in voor, ik dacht dat deze de < en de > zijn, die horen niet in een titel thuis. Zorg ervoor dat je de titel beter codeert.


hoe codeer ik een string het beste dan?

ik doe nu dit

$string = urlencode(stripslashes(urldecode($string)));
Gewijzigd op 01/01/1970 01:00:00 door femke
 
Han eev

Han eev

18/09/2008 12:29:00
Quote Anchor link
Ik denk dat je de titel uit een database haalt, dan moet je zorgen dat er alleen nog maar letters en streepjes in de link zitten, en die zet je in de link. Er bestaan wel van die scriptjes.

http://www.phphulp.nl/php/scripts/4/1416/
http://www.phphulp.nl/php/scripts/11/1428/

Daarmee zorg je dat de titel goed is, dan maak je van de rewrite rule iets van dit:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
RewriteRule ^([0-9]+)/([a-zA-Z0-9\-]+)\.html$ nieuws.php?titel=$1&id=$2 [L]
Ik neem aan dat het mooier is om de ID voor de Titel te zetten
dus:
/88/titel-van-de-pagina.html
 



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.