tags:

views:

57

answers:

2

I need something like: get_home_user($username)

A: 

You could try in Linux this.

function get_home_user($username)
{
 $username=$_POST["username"];
 if (!empty($username))                 
 {  if(exec ("test (home/$username)"))
     return true; 
 }
return false;
}
streetparade
That returns true or false, and also overrides the argument $username with the POST value. Looks bad.Thanks anyway!.
Castro
My bad sorry it should return true or false thats ok
streetparade
+1  A: 

This is how I did it:

class goDirAlias
{
    private function home_dir()
    {
        // Try to find out the home directory of the user running this script
        if(function_exists("posix_getpwnam"))
        {
            // using posix
            $user_info = posix_getpwnam(goDirAlias::whoami());
            $home_dir = $user_info['dir']."/";
        } else 
        {
            // Looking for Windows environment variables
            $home_dir = getenv('HOMEDRIVE').getenv('HOMEPATH').'\\';
            if($home_dir == "\\")
            {
                // Looking for *nix environment variables
                $home_dir = getenv('HOME')."/";
            }
        }

    return $home_dir;
    }

    private function whoami()
    {
        // Try to find out the username of the user running the script
        if(function_exists('posix_getpwuid'))
        {
            // using posix
            $user_info = posix_getpwuid(posix_geteuid());
            $running_user = $user_info['name'];
        } else {
            // Looking for Windows environment variables
            $running_user = getenv('USERNAME');
            if(empty($running_user))
            {
                // Running *nix whoami
                $running_user = exec('whoami');
            }
        }

    return $running_user;
    }
}
Sebastián Grignoli
Thats is exactly what i was looking for! Thanks sebastian.
Castro