I had some trouble getting mod rewrite to work also...
Another solution is to explode the path in your script (you just insert it near the start), ie:
list($dummy, $page, $id) = explode('/', $PATH_INFO);
The $dummy variable seemed superfluous when I was first shown this method, but including it doesn't seem to hurt (I should have experimented without it, but I was so relieved to solve the problem I had quickly moved on to something else) - the variables following are up to you, according to how many queries you're running in the path.
Basically this will replace the question marks with slashes - for example:
http://www.mydomain.com/index.php?page=full&id=7
becomes
http://www.mydomain.com/index.php/full/7
It's a decent workaround if mod rewrite is proving a problem. To get rid of the .php extension, this worked for me in .htaccess:
Options +MultiViews
DirectoryIndex index index.html
Which made my URL:
http://www.mydomain.com/index/full/7
Of course, for it all to come together, you have to change any links that occur on your pages - so if you have links such as ?page=full&id=3 etc, you'll want to change them to full/3 and so on.
I think mod rewrite is a more comprehensive way of doing things, but this works as an alternative.