RE: [PHP] MySQl IP Address Storage
On 20-Sep-2001 Felix wrote: > Hello all > > Can anyone suggest their best idea for a way to store IP addresses in a > MySQL Database? > INT UNSIGNED and use the MySQL functions INET_ATON() & INET_NTOA() for converting. If you're on a pre-3.23 MySQL server then: // Convert IP string (XXX.YYY.WWW.ZZZ) to float and back function inet_aton($a) { $inet = 0.0; // $a=preg_replace('/^[0-9a-f:]*:/', '', $a); // eat IPv6 off the front $t = explode('.', $a); while (list(,$i) = each($t)) { $inet *= 256.0; $inet += $i; }; return $inet; } function inet_ntoa($n) { $t=array(0,0,0,0); $msk = 16777216.0; $n += 0.0; if ($n < 1) return(' '); for ($i = 0; $i < 4; $i++) { $k = (int) ($n / $msk); $n -= $msk * $k; $t[$i]= $k; $msk /=256.0; }; $a=join('.', $t); return($a); } Regards, -- Don Read [EMAIL PROTECTED] -- It's always darkest before the dawn. So if you are going to steal the neighbor's newspaper, that's the time to do it. -- PHP General Mailing List (http://www.php.net/) To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]
Re: [PHP] MySQl IP Address Storage
Thank you very much. Felix - Original Message - From: "Jason Bell" <[EMAIL PROTECTED]> To: "PHP list" <[EMAIL PROTECTED]> Sent: Thursday, September 20, 2001 12:49 PM Subject: Re: [PHP] MySQl IP Address Storage > Felix, > > Just to save you the headache that I encountered, the column that you plan > to store your IP address in needs to be an unsigned integer when using > INET_ATON and INET_NTOA > > If it's not, all addresses stored will come out as 127.0.0.0 (I think that > was what it was...). > > Also, these are MySQL functions, not PHP functions. Not sure if you knew > that already, but it wasn't specified on the list... > > > INET_ATON converts from Decimal IP and INET_NTOA converts back to Decimal > IP, so you'd use it like this: > > INSERT INTO mytable (ipaddress) VALUES (INET_ATON('192.168.1.1')); > > SELECT INET_NTOA(ipaddress) FROM mytable; > > Make sense? > > - Original Message - > From: "Felix" <[EMAIL PROTECTED]> > To: "Robert Covell" <[EMAIL PROTECTED]>; "PHP list" > <[EMAIL PROTECTED]> > Sent: Thursday, September 20, 2001 11:29 AM > Subject: Re: [PHP] MySQl IP Address Storage > > > > Thank you Robert. > > Felix > > ----- Original Message - > > From: "Robert Covell" <[EMAIL PROTECTED]> > > To: "Felix" <[EMAIL PROTECTED]>; "PHP list" > <[EMAIL PROTECTED]> > > Sent: Thursday, September 20, 2001 10:55 AM > > Subject: RE: [PHP] MySQl IP Address Storage > > > > > > > INET_ATON > > > > > > and > > > > > > INET_NTOA > > > > > > -Original Message- > > > From: Felix [mailto:[EMAIL PROTECTED]] > > > Sent: Thursday, September 20, 2001 11:49 AM > > > To: PHP list > > > Subject: [PHP] MySQl IP Address Storage > > > > > > > > > Hello all > > > > > > Can anyone suggest their best idea for a way to store IP addresses in a > > > MySQL Database? > > > > > > Felix > > > > > > > > > -- > > > PHP General Mailing List (http://www.php.net/) > > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > > For additional commands, e-mail: [EMAIL PROTECTED] > > > To contact the list administrators, e-mail: [EMAIL PROTECTED] > > > > > > > > > > > > -- > > > PHP General Mailing List (http://www.php.net/) > > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > > For additional commands, e-mail: [EMAIL PROTECTED] > > > To contact the list administrators, e-mail: [EMAIL PROTECTED] > > > > > > -- > > PHP General Mailing List (http://www.php.net/) > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > To contact the list administrators, e-mail: [EMAIL PROTECTED] > > > > > > > -- > PHP General Mailing List (http://www.php.net/) > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > To contact the list administrators, e-mail: [EMAIL PROTECTED] -- PHP General Mailing List (http://www.php.net/) To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]
Re: [PHP] MySQl IP Address Storage
Felix, Just to save you the headache that I encountered, the column that you plan to store your IP address in needs to be an unsigned integer when using INET_ATON and INET_NTOA If it's not, all addresses stored will come out as 127.0.0.0 (I think that was what it was...). Also, these are MySQL functions, not PHP functions. Not sure if you knew that already, but it wasn't specified on the list... INET_ATON converts from Decimal IP and INET_NTOA converts back to Decimal IP, so you'd use it like this: INSERT INTO mytable (ipaddress) VALUES (INET_ATON('192.168.1.1')); SELECT INET_NTOA(ipaddress) FROM mytable; Make sense? - Original Message - From: "Felix" <[EMAIL PROTECTED]> To: "Robert Covell" <[EMAIL PROTECTED]>; "PHP list" <[EMAIL PROTECTED]> Sent: Thursday, September 20, 2001 11:29 AM Subject: Re: [PHP] MySQl IP Address Storage > Thank you Robert. > Felix > - Original Message - > From: "Robert Covell" <[EMAIL PROTECTED]> > To: "Felix" <[EMAIL PROTECTED]>; "PHP list" <[EMAIL PROTECTED]> > Sent: Thursday, September 20, 2001 10:55 AM > Subject: RE: [PHP] MySQl IP Address Storage > > > > INET_ATON > > > > and > > > > INET_NTOA > > > > -Original Message- > > From: Felix [mailto:[EMAIL PROTECTED]] > > Sent: Thursday, September 20, 2001 11:49 AM > > To: PHP list > > Subject: [PHP] MySQl IP Address Storage > > > > > > Hello all > > > > Can anyone suggest their best idea for a way to store IP addresses in a > > MySQL Database? > > > > Felix > > > > > > -- > > PHP General Mailing List (http://www.php.net/) > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > To contact the list administrators, e-mail: [EMAIL PROTECTED] > > > > > > > > -- > > PHP General Mailing List (http://www.php.net/) > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > To contact the list administrators, e-mail: [EMAIL PROTECTED] > > > -- > PHP General Mailing List (http://www.php.net/) > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > To contact the list administrators, e-mail: [EMAIL PROTECTED] > > -- PHP General Mailing List (http://www.php.net/) To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]
Re: [PHP] MySQl IP Address Storage
Thank you Robert. Felix - Original Message - From: "Robert Covell" <[EMAIL PROTECTED]> To: "Felix" <[EMAIL PROTECTED]>; "PHP list" <[EMAIL PROTECTED]> Sent: Thursday, September 20, 2001 10:55 AM Subject: RE: [PHP] MySQl IP Address Storage > INET_ATON > > and > > INET_NTOA > > -Original Message- > From: Felix [mailto:[EMAIL PROTECTED]] > Sent: Thursday, September 20, 2001 11:49 AM > To: PHP list > Subject: [PHP] MySQl IP Address Storage > > > Hello all > > Can anyone suggest their best idea for a way to store IP addresses in a > MySQL Database? > > Felix > > > -- > PHP General Mailing List (http://www.php.net/) > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > To contact the list administrators, e-mail: [EMAIL PROTECTED] > > > > -- > PHP General Mailing List (http://www.php.net/) > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > To contact the list administrators, e-mail: [EMAIL PROTECTED] -- PHP General Mailing List (http://www.php.net/) To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]
RE: [PHP] MySQl IP Address Storage
INET_ATON and INET_NTOA -Original Message- From: Felix [mailto:[EMAIL PROTECTED]] Sent: Thursday, September 20, 2001 11:49 AM To: PHP list Subject: [PHP] MySQl IP Address Storage Hello all Can anyone suggest their best idea for a way to store IP addresses in a MySQL Database? Felix -- PHP General Mailing List (http://www.php.net/) To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED] -- PHP General Mailing List (http://www.php.net/) To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]