ghostrifle wrote:
I thought I could use $params for getting the $_GET variables too.
I am SO SORRY, I was study documentation comments right now and You are partially right - array $params contains merged params from module declaration and all items of array $_REQUEST,
BUT (!!) with prefix ($id) of this module only. This is reason what array $params don't contains those values from Your HTML anchor, because You omit this 'id-prefix' and there is no way how to reliably determine which $id will module obtain from CMSMS at other page where it will be calling from. So, this is true reason why You have to use $_GET or $_REQUEST for Your purpose.

Of course, if You create module which will be called from already loaded page or from admin, I recommend to You using of its id prefix in requests - most simple way to do this is by using functions CreateXXXX() from class CMSModule (by example: I mean 'echo $this->CreateLink(....);' of course).
OR - there is best and clean way to do this - just turn this module into new content type like module News doing - page with content type 'News' is called by module 'News' from any page - and it can deliver GET parameters over different pages by 'CMSMS friendly' way.