我正在尝试在注册期间获取用户的IP地址和位置...当用户第一次注册时,我想在用户表中保存IP地址及其在数据库中的位置。
请给我一个解决方案,以获取新用户的IP地址和位置......
下面是我正在使用的行,但是这给了我错误的localhost IP地址......
127.0.0.1
$user = new User([
'firstname' => $data['firstname'],
'lastname' => $data['lastname'],
'company' => $data['company'],
'email' => $data['email'],
'password' => bcrypt($data['password']),
'phone' => $data['phone'],
'country' => $data['country'],
'zipcode' => $data['zipcode'],
'city' => $data['city'],
'state' => $data['state'] == "other" ? $data['custom_state'] : $data['state'],
'ip_address' => request()->ip(),
]);
答案 0 :(得分:7)
尝试这个来获取用户的IP地址:
'ip_addres' => \Request::ip();
获取IP地址后,您可以使用以下包从该IP获取位置。
https://github.com/stevebauman/location
'position' = Location::get(ip_addres);
如果您获得localhost ip地址,请使用此包解决它:https://packagist.org/packages/fideloper/proxy