我将ip地址存储在数据库中作为整数,ip2long(),列类型为unsigned int,但对于数据库中的某些ip,它保存为0,我测试了一些ip for ip2long函数返回负整数当我将它插入数据库时,它保存为0.我googled,每个人都说该列必须是unsigned int。
例如:ip2long("212.36.25.15");
将返回-735831793
,在数据库中,它将保存为0
答案 0 :(得分:4)
使用INET_ATON插入IP地址。
例如:INET_ATON('127.0.0.1');
使用INET_NTOA获取IP地址
例如:SELECT INET_NTOA('2130706433');
答案 1 :(得分:3)
您可以使用MySQL函数INET_ATON。