I have'nt used
Win32::NetAdmin, but the document says this:
LoggedOnUsers(server, userRef)
Gets an array or hash with the users logged on at the specified computer. If userRef is a hash reference, the value is a semikolon separated string of username, logon domain and logon server.
so I presume, you should be doing this:
my %user_ref;
LoggedOnUsers( "$data", %user_ref);
if (!%user_ref){
print "\n\n Not happening\n\n";
}else{
print "\n\nwahey\n\n";
}