Welcome to WebmasterWorld Guest from 50.16.78.128

Forum Moderators: coopster & jatar k

Message Too Old, No Replies

Writing URI's differently but still accessing $ GET variables

   
4:40 pm on Jan 20, 2008 (gmt 0)

5+ Year Member



Hello, I am wondering how you can dynamically build URI's so you dont have to show the id=3

Given this example URL
www.example.com/area-information.php?countryID=12&stateID=4&cityID=3892

How could you dynamically refer to the same information but displayed like this:
www.example.com/area-information/United-States/Texas/Houston

So basically dropping the .php from area-information.php, and converting all the variables to look like sub folders?

Any ideas?

Thanks,
Ryan

5:44 pm on Jan 20, 2008 (gmt 0)

10+ Year Member



To access this url:
www.example.com/area-information.php?countryID=12&stateID=4&cityID=3892

You may rewrite it as:
www.example.com/area-information/12/4/3892

You should create an .htaccess file with this content should looks like:

RewriteEngine on
RewriteCond %{REQUEST_URI}!\.(gifjpgphpplswfcsstxt)$
RewriteRule ^([0-9]+)/([0-9]+)/([0-9]+)$ /area-information.html?countryID=$1&stateID=$2&cityID=$3 [L]

(It may not work at once, this is just an example, the idea how it should be.)

5:47 pm on Jan 20, 2008 (gmt 0)

WebmasterWorld Senior Member eelixduppy is a WebmasterWorld Top Contributor of All Time 5+ Year Member



You could still rewrite the URI as the following:

www.example.com/area-information/United-States/Texas/Houston

However you'd have to find the IDs again for that data through your php script. If you can't do this, or it causes too much of a problem, you are probably better off going with the URI format described in the post above.

6:36 pm on Jan 20, 2008 (gmt 0)

WebmasterWorld Senior Member henry0 is a WebmasterWorld Top Contributor of All Time 10+ Year Member



To use eelix format: If the ID exists (as it should) then it could be passed via a SESSION or by a HIDDEN value