Hallo allemaal,

Ik heb al dagen ruzie met mijn htaccess bestand voor mooie urls. Nu werkt het allemaal fijn alleen kan er nu geen spatie in een link staan. Iets wat toch echt nodig is.

RewriteCond %{REQUEST_URI} !/data
RewriteCond %{REQUEST_URI} !/images
RewriteCond %{REQUEST_URI} !/website
RewriteRule ^([A-Za-z0-9-]+)/$ index.php?site=$1 [L]

RewriteCond %{REQUEST_URI} !/data
RewriteCond %{REQUEST_URI} !/images
RewriteCond %{REQUEST_URI} !/website
RewriteRule ^([A-Za-z0-9-]+)/item([A-Za-z0-9-]+)/$ index.php?site=$1&menuname=$2&set=item [L]

RewriteCond %{REQUEST_URI} !/data
RewriteCond %{REQUEST_URI} !/images
RewriteCond %{REQUEST_URI} !/website
RewriteRule ^([A-Za-z0-9-]+)/item([A-Za-z0-9-]+)/sub(.*)/$ index.php?site=$1&menuname=$2&subname=$3&set=sub [L]

RewriteCond %{REQUEST_URI} !/data
RewriteCond %{REQUEST_URI} !/images
RewriteRule ^website/$ index.php [L]

RewriteCond %{REQUEST_URI} !/data
RewriteCond %{REQUEST_URI} !/images
RewriteRule ^website/item([A-Za-z0-9-]+)/$ index.php?menuname=$1&set=item [L]

RewriteCond %{REQUEST_URI} !/data
RewriteCond %{REQUEST_URI} !/images
RewriteRule ^website/item([A-Za-z0-9-]+)/sub(.*)/$ index.php?menuname=$1&subname=$2&set=sub [L]

Ik heb bij item ([A-Za-z0-9-]+)/ staan omdat hij anders ook deze rule pakt als je een subitem hebt opgegeven. Hierdoor werken alleen de spaties niet meer. Ik zou super blij zijn als iemand mij kan helpen.

Alvast bedankt.

Groeten,

Stefan
Crazyme schreef op 24.07.2007 12:05
Nu werkt het allemaal fijn alleen kan er nu geen spatie in een link staan. Iets wat toch echt nodig is.


Stefan, spaties in een url zijn taboe. Als je dit nodig hebt zal je toch jezelf even achter de oren moeten krabben waar je mee bezig bent. Spaties horen NIET in een url
Vervang spaties door een _ of een - en je krijgt prachtige url's.
hmm. De titels van het menu worden vanuit de database met spaties uitgelezen. Deze namen worden vervolgens als titel maar ook als link gebruikt. Uit de link wordt de naam gehaalt en die weer vergeleken met de naam in de database hierin zitten allemaal spaties.. Vanaf waar ga ik die eruit halen en waar zet ik ze weer terug?

Hoe kan ik de spaties dan makkelijk vervangen door een _ en deze weer eruit laten halen voordat ik zoek in de db..
schop
tot over 24uur
Wat zegt de handleiding over dit soort dingen? Even zoeken en je hebt zo een oplossing...
Crazyme, ik denk dat je je script zult moeten veranderen, aangezien je nu een string met spaties in je url gaat stoppen. Misschien urlencode() ofzo? Maar beter is om a.d.h.v. een id de info op te halen.
Ik snap inderdaad dat het ophalen met id het beste werkt.
Dit is natuurlijk niet erg gebruiksvriendelijk.

Aan het begin van het script wordt de pagina naam ook omgezet naar het id...
pgFrank schreef op 24.07.2007 16:44
Wat zegt de handleiding over dit soort dingen? Even zoeken en je hebt zo een oplossing...


met zulke antwoorden kan je beter niet reageren. bedankt voor je hulp he!!
dit hoort andersom..
je hoort het id om te zetten naar een naam..
je hebt niks aan een id als je de naam naar het id omzet..
maar k denk dat je beter even opnieuw kunt beginnen,, en geen spaties gebruiken in urls en dat soort dingen.

Reageren