its very long... and is it necessary ? I think that you think (lol.. my "perfect" english.) that
get_user_userid(gi_Sellection)
is wrong, because gi_sellection is invalid? no, it works perfect... i think problem is with banning

amx_banip nick/userid "time" "reason"

normaly then I try it in console, it ban players by userid.