Обновление php mysql IP-адреса не может работать правильно

Код используется для обновления зарегистрированного пользователя IP-адреса. Когда я печатаю строку $ sql, кажется, что это правильно, IP-адрес равен 1886883852, но после обновления до mysql значение равно 2149463110. Я попытался установить тип данных в mysql как INT (11) bigint (12), все тот же. Если я попытаюсь написать строку как

UPDATE ddns SET LastIP=1886883852, LastUpdate=now() WHERE ID=1 

напрямую, без использования какой-либо переменной, он работает правильно.

На самом деле не могу понять. Кто-нибудь может помочь?

 //get dns function getIP(){ //check the current ip address registered //Test if it is a shared client if (!empty($_SERVER['HTTP_CLIENT_IP'])){ $ipaddr=$_SERVER['HTTP_CLIENT_IP']; //Is it a proxy address }elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])){ $ipaddr=$_SERVER['HTTP_X_FORWARDED_FOR']; }else{ $ipaddr=$_SERVER['REMOTE_ADDR']; } $ipaddr = ip2long($ipaddr); return $ipaddr; } $ipaddr = getIP(); $sql = "UPDATE ddns SET LastIP=$ipaddr, LastUpdate=now() WHERE ID=1"; echo $sql; **//here UPDATE ddns SET LastIP=1886883852, LastUpdate=now() WHERE ID=1** $result = mysqli_query($dbh,$sql) or die("Query failed:"); **//Here after updated, the value of ipaddr in database is 2149463110** if ($result) echo "Update ddns successfully"; else echo "faild to update ddns";