Thread: [Geoip-php-discuss] Format changes
Brought to you by:
tjmather
From: Steven R. <sro...@ne...> - 2003-03-11 05:11:24
|
I have purchased the full City/ISP version of GeoIP and it looks like the format changed early this year. Does the pure PHP version account for this? I'm having trouble getting postal code, ISP, etc. -steve- |
From: T.J. M. <tjm...@ma...> - 2003-03-11 05:31:55
|
Have you tried running the sample_city.php script included with the distribution? The ISP information is contained in a separate database, so in order to get both the city and ISP info, you have to open both databases, and query the city one using geoip_record_by_addr, and the ISP one by using geoip_org_by_addr. Support for GeoIP ISP and Organization has recently been added to the PHP API. We just uploaded the latest CVS to the website at: http://www.maxmind.com/download/geoip/api/php/ sample_org.php demonstrates how to query the GeoIP ISP or Organization database. Hope this helps. -TJ On Mon, 10 Mar 2003, Steven Roussey wrote: > I have purchased the full City/ISP version of GeoIP and it looks like > the format changed early this year. Does the pure PHP version account > for this? I'm having trouble getting postal code, ISP, etc. > > -steve- > |
From: Steven R. <sro...@ne...> - 2003-03-11 06:17:22
|
Thanks for the updated versions. I have GeoIPCity.dat, GeoIPISP.dat, and GeoIPOrg.dat sample_city.php uses GeoIPCity.dat sample_org.php uses GeoIPOrg.dat what is an example of GeoIPISP.dat? Also, the postal code still does not show: # ./sample_city.php Notice: Undefined variable: record_buf_pos in geoipcity.inc on line 48 US USA United States NJ Pleasantville 39.4709 -74.686 The line after Pleasantville should have the postal code, right? -steve- > -----Original Message----- > > Have you tried running the sample_city.php script included with the > distribution? > > The ISP information is contained in a separate database, so in order to > get both the city and ISP info, you have to open both databases, and > query the city one using geoip_record_by_addr, and the ISP one by using > geoip_org_by_addr. > > Support for GeoIP ISP and Organization has recently been added to the > PHP API. We just uploaded the latest CVS to the website at: > http://www.maxmind.com/download/geoip/api/php/ > > sample_org.php demonstrates how to query the GeoIP ISP or Organization > database. > > Hope this helps. > -TJ > > On Mon, 10 Mar 2003, Steven Roussey wrote: > > > I have purchased the full City/ISP version of GeoIP and it looks like > > the format changed early this year. Does the pure PHP version account > > for this? I'm having trouble getting postal code, ISP, etc. > > > > -steve- > > |
From: T.J. M. <tjm...@ma...> - 2003-03-11 15:13:21
|
Hi, the sample_org.php can also use GeoIPISP.dat as well as GeoIPOrg.dat, simply change the open statement to use GeoIPISP.dat instead of GeoIPOrg.dat (geoip_org_by_addr is used for the ISP database as well as the Organization database). The postal code does not show in this case because we don't know what the postal code for 67.242.4.86 is. If you were to try 207.171.181.16 in sample_city.php line 12, then you will see the postal code. As for the warning shown below, the following diff should take care of the problem: =================================================================== RCS file: /cvsroot/geoip/php/geoipcity.inc,v retrieving revision 1.3 diff -u -3 -p -r1.3 geoipcity.inc --- geoipcity.inc 6 Mar 2003 20:54:46 -0000 1.3 +++ geoipcity.inc 11 Mar 2003 15:07:48 -0000 @@ -44,8 +44,8 @@ function _get_record($gi,$ipnum){ fseek($gi->filehandle, $record_pointer, SEEK_SET); $record_buf = fread($gi->filehandle,FULL_RECORD_LENGTH); $record = new geoiprecord; - $char = ord(substr($record_buf,$record_buf_pos,1)); $record_buf_pos = 0; + $char = ord(substr($record_buf,$record_buf_pos,1)); $record->country_code = $GLOBALS['GEOIP_COUNTRY_CODES'][$char]; $record->country_code3 = $GLOBALS['GEOIP_COUNTRY_CODES3'][$char]; $record->country_name = $GLOBALS['GEOIP_COUNTRY_NAMES'][$char]; Regards, TJ On Mon, 10 Mar 2003, Steven Roussey wrote: > Thanks for the updated versions. > > I have GeoIPCity.dat, GeoIPISP.dat, and GeoIPOrg.dat > > sample_city.php uses GeoIPCity.dat > sample_org.php uses GeoIPOrg.dat > > what is an example of GeoIPISP.dat? > > Also, the postal code still does not show: > > # ./sample_city.php > > Notice: Undefined variable: record_buf_pos in geoipcity.inc on line 48 > US USA United States > NJ > Pleasantville > > 39.4709 > -74.686 > > The line after Pleasantville should have the postal code, right? > > -steve- > > > > > -----Original Message----- > > > > Have you tried running the sample_city.php script included with the > > distribution? > > > > The ISP information is contained in a separate database, so in order to > > get both the city and ISP info, you have to open both databases, and > > query the city one using geoip_record_by_addr, and the ISP one by using > > geoip_org_by_addr. > > > > Support for GeoIP ISP and Organization has recently been added to the > > PHP API. We just uploaded the latest CVS to the website at: > > http://www.maxmind.com/download/geoip/api/php/ > > > > sample_org.php demonstrates how to query the GeoIP ISP or Organization > > database. > > > > Hope this helps. > > -TJ > > > > On Mon, 10 Mar 2003, Steven Roussey wrote: > > > > > I have purchased the full City/ISP version of GeoIP and it looks like > > > the format changed early this year. Does the pure PHP version account > > > for this? I'm having trouble getting postal code, ISP, etc. > > > > > > -steve- > > > > > |