RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
RewriteRule ^(.*)$ index.php?id=$1 [L,QSA]
I think you are still confused. The rewriterule is supposed to write q=requested/alias. This is how friendly URLs work.
Right, nevermind.
I solved it already
The rewrite rule wrote q=ID, while the url was id=ID.
So i changed this line
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
into
RewriteRule ^(.*)$ index.php?id=$1 [L,QSA]
Silly me.