Hi Jonathan,
my IP was greter thant 127.0.0.0 (207.x.x.x), when i recorder this ip, the ip recorded in the BD is 0.0.0.0 ....
The probleme is that that the php function ip2lon return a negative number (on my windows pc, and mac OS X server), then it can't be recorded in the database column (int(10), unsigned
).
I changed manually the mysql column type to int(10) (negative and positive) and every thing work No 1 !!!
Thx for your module
in the install this should be something like that (not tested ...)
'ip1' => array(
'description' => t('contains the first IP address'),
'type' => 'int',
'unsigned' => FALSE,
'not null' => TRUE
),
'ip2' => array(
'description' => t('contains the second IP address'),
'type' => 'int',
'unsigned' => FALSE,
'not null' => TRUE
),
Regards !
Comments
Comment #1
jonfrancisskydiver commentedCould you send me the PHP version that you are using? I haven't had this issue with the default install.
Thanks,
Jonathan
Comment #2
jptavan commentedSame problem/solution for me, with PHP Version 5.2.6 and 4.4.8.
It work after reinstalling the module with the suggested change in ip_authenticator_schema ('unsigned' => FALSE).
Comment #3
jonfrancisskydiver commentedIf you do that change, then IP ranges won't validate properly. It will give you a false positive. I have updated the code to replace all occurrences ip2long($ip) to sprintf("%u", ip2long($ip)). That should fix the issue. On October 18 download the development version and try it out. Make certain to revert your database to the unsigned int for the ip1 and ip2 tables. Thank you for bringing the issue up.
Comment #4
Anonymous (not verified) commentedAutomatically closed -- issue fixed for two weeks with no activity.