Rewrite url: ?id=2 naar /id/2 (.htaccess) vraagje...
Kan iemand mij vertellen hoe ik mijn url kan rewriten zodat ik in plaats van:
http://localhost/cms/admin/pages/content/page-overview?id=4
http://localhost/cms/admin/pages/content/page-overview/id/4 krijg.
Er staan online wel wat voorbeelden maar ik kom er maar niet uit, waar plaats ik het httaccess bestand, welke url gebruik ik voor links?
Ik heb al een htaccess bestand in de root van mijn admin folder welke er voor zorgt dat de pagina's netjes worden opgebouwd dus wellicht moet ik iets toevoegen in dat bestandje...
de code is als volgt:
Bedoel je dat je van de eerste link wilt maken:
"localhost/cms/admin/pages/content/page-overview/id/4" ?
En is de root altijd hetzelfde? (localhost/cms/admin/pages/content/page-overview)
En misschien dat het nog van belang kan zijn...
Ik neem aan dat die link in een bestandje staat genoemd, maar wat maakt die link aan?
Wordt die link n.a.v. de code .htaccess naar een bestand geschreven?
Bedankt voor uw reactie!
Ik wil inderdaad van die eerste link maken /id/4 in plaats van die lelijke ?id=4
De root is niet altijd hetzelfde, zo zijn er ook andere pagina's waar dit zou moeten werken bijv:
http://localhost/cms/admin/pages/your-website/settings
http://localhost/cms/admin/pages/content/add-page
Bij al mijn pagina's zou het mogelijk moeten zijn om achter de url: /id/4 te kunnen linken in plaats van ?id=4
De opmaak is als volgt: admin/pages in pages staan mappen, bijv: your-website en content, dit zijn de namen voor de url, in die mappen zit een bestand die de functie weergeeft in de url bijv: add-page of settings. Het .htaccess bestand in de admin root zorgt ervoor dat er geen index.php?pagina staat....
Ik wil dus dat het mogelijk is na de functie pagina /id/4 te zetten.
Hopelijk is het een beetje duidelijk, mvg Furio
Als ik het goed begrijp zorgt die .htaccess er dan voor dat een bepaald bestand wordt weggeschreven,
in je voorbeeld dan dus 'page-overview' ?
In principe behoor je dan de link al in orde te maken in je .htaccess bestand/code...
Maar dat is een beetje off-topic eigenlijk.
Misschien dat dit een oplossing is? ->
- Maak in deze folder 'localhost/cms/admin/pages/content' een pagina met de naam 'page-overview'
- Schrijf in die pagina een html meta-refresh van 0 sec op deze wijze:
<html>
<meta http-equiv='refresh' content='0; url=http://localhost/cms/admin/pages/content/page-overview/id/'>"
</html>
Maar mogelijk begrijp ik niet 100% exact wat het doel is...
Eventueel kun je binnen php ook nog met strpos() de postie van het vraagteken zoeken, en daarmee iets doen.
Maar ik denk dat je binnen de htaccess e.e.a. zal moeten aanpassen.
Helaas is het voor mij te lang geleden dat ik nog weet hoe dat zou moeten vrees ik :-(
Ik hoop dat je iets aan mn info hebt desondanks...
Als het goed is moet je dan voor 'pagina' de waarde 'page-overview/id/4' hebben. Die kan je dan gewoon exploden op '/' en dan heb je alle gegevens die je nodig hebt.
Ik heb nu als link: <a href="http://localhost/cms/admin/pages/content/page-overview/id/'.$row['id'].'">
Dus als voorbeeld krijg je dan: http://localhost/cms/admin/pages/content/page-overview/id/4
Ik krijg dan telkens te zien, pagina niet gevonden...dus waarschijnlijk werkt het toch nog niet?
In mijn index had ik de code gezet van jouw en helaas zegt die daar ook steeds pagina niet gevonden.
Alvast heel erg bedankt voor de hulp!
Mvg Furio
Waar staat je htaccess bestand?
Erwin H op 10/06/2013 11:23:34:
Waar staat je htaccess bestand?
Het .htaccess bestand staat in de admin folder.
cms - admin - .htaccess
In de admin folder staan ook de volgende folders:
css
functions
images
languages
modules
pages
scripts
index.php
Omdat je een directory pages hebt zal je rewrite denk ik niet werken. Als je de url even iets anders maakt:
http://localhost/cms/admin/pages2/content/page-overview/id/4
dan zou je rewrite wel gebruikt moeten worden en zal je dus naar de index.php verwezen worden. Daarna weer wat ik eerder al gaf.
Mocht u nog andere opties weten dan hoor ik dit graag :)
Toevoeging op 10/06/2013 15:20:25:
Als voorbeeld wil ik dus wat dit forum ook heeft, zie de url.
http://www.phphulp.nl/php/forum/topic/rewrite-url-id2-naar-id2-htaccess-vraagje/91098/
91098 is de id.