lorax - 3:41 pm on Mar 12, 2013 (gmt 0)
My thoughts on the issue are that there may be issues with the variables on the URL on the client side - could be browser security setting, AV program, or who knows what (this is a guess). But if the server is handling them behind the scenes then they're out of the picture. Cleaner URL == eliminates the possibility.
The ### is just a placeholder in the example and would be replaced by an affiliate ID. You could write the URL any way you see fit - skip the /aff/ and just use the /###/ if you want. As long as you can reliably extract the URL into a usable variable when the user hits it.