При возвращение NULL, возвращается предыдущее значение?
У вас rec глобальная переменная. Перенесите ее объявление внутрь функции get_user() и других если есть.
Даже не смотря в код: переменные надо очищать :-)