Geo Target Script

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • PXN
    Confirmed User
    • Jun 2008
    • 1548

    #1

    Geo Target Script

    Can anyone recommend me a good geo target script? Free or paid version, doesn't matter.
  • Mr Pheer
    So Fucking Banned
    • Dec 2002
    • 22083

    #2
    I like Dr Pepper.

    Comment

    • PXN
      Confirmed User
      • Jun 2008
      • 1548

      #3
      Originally posted by Mr Pheer
      I like Dr Pepper.
      Thanks for the bump mate!

      Comment

      • HomerSimpson
        Too lazy to set a custom title
        • Sep 2005
        • 13826

        #4
        MaxMind - you have API and free GeoIP database version in there....
        Make a bank with Chaturbate - the best selling webcam program
        Ads that can't be block with AdBlockers !!! /// Best paying popup program (Bitcoin payouts) !!!

        PHP, MySql, Smarty, CodeIgniter, Laravel, WordPress, NATS... fixing stuff, server migrations & optimizations... My ICQ: 27429884 | Email:

        Comment

        • synapse
          NameNetwork.com
          • Jan 2003
          • 1175

          #5
          MaxMind's really about it i believe ... would love to hear more if there out there ?

          We implemented MaxMind about 3 years ago or so and removed it after a year.
          - their data's fine down to the country and state level but outside of the US just falls apart or is plain wrong
          - there's no way to push updates / changes back to them
          - their DB id's change *when* they make updates which when your saving the ID's into your member DB can cause a bunch of probs

          Again would love to hear of some better alternatives to MaxMind ... and if their not out there sure sounds like a biz opportunity for someone

          Comment

          • NemesisEnforcer
            Confirmed User
            • Aug 2003
            • 2122

            #6
            Check out IP2Location.
            The Only Time When Success Comes Before Work Is In A Dictionary.

            Did you ever notice: When you put the 2 words 'The' and 'IRS' together it spells 'Theirs.'

            Comment

            • grumpy
              Too lazy to set a custom title
              • Jan 2002
              • 9870

              #7
              i vote for maxmind
              Don't let greediness blur your vision | You gotta let some shit slide
              icq - 441-456-888

              Comment

              • Stephen McTowelie
                Confirmed User
                • Nov 2006
                • 734

                #8
                Originally posted by synapse
                MaxMind's really about it i believe ... would love to hear more if there out there ?

                We implemented MaxMind about 3 years ago or so and removed it after a year.
                - their data's fine down to the country and state level but outside of the US just falls apart or is plain wrong
                - there's no way to push updates / changes back to them
                - their DB id's change *when* they make updates which when your saving the ID's into your member DB can cause a bunch of probs

                Again would love to hear of some better alternatives to MaxMind ... and if their not out there sure sounds like a biz opportunity for someone
                Its so true we had a similar problem with our UK dating and contacts site BritishSexContacts.com the geo location from maxmind started off well and the last few years it really has sucked !
                The US and country wide location is fine its just outside of the US down to city level its just plain wrong not even close most of the time !
                Would love to find a accurate alternative
                396019140

                Comment

                • synapse
                  NameNetwork.com
                  • Jan 2003
                  • 1175

                  #9
                  Originally posted by NemesisEnforcer
                  Check out IP2Location.
                  looks interesting, anybody got any experience with them ?

                  Comment

                  • SmokeyTheBear
                    ►SouthOfHeaven
                    • Jun 2004
                    • 28609

                    #10
                    geoplugin.com has a free php class that works pretty good

                    just save this as geoplugin.class.php
                    Code:
                    <?php
                    /*
                    This PHP class is free software: you can redistribute it and/or modify
                    the code under the terms of the GNU General Public License as published by
                    the Free Software Foundation, either version 3 of the License, or
                    (at your option) any later version. 
                    
                    However, the license header, copyright and author credits 
                    must not be modified in any form and always be displayed.
                    
                    This class is distributed in the hope that it will be useful,
                    but WITHOUT ANY WARRANTY; without even the implied warranty of
                    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
                    GNU General Public License for more details.
                    
                    @author geoPlugin ([email protected])
                    @copyright Copyright geoPlugin ([email protected])
                    $version 1.01
                    
                    
                    This PHP class uses the PHP Webservice of http://www.geoplugin.com/ to geolocate IP addresses
                    
                    Geographical location of the IP address (visitor) and locate currency (symbol, code and exchange rate) are returned.
                    
                    See http://www.geoplugin.com/webservices/php for more specific details of this free service
                    
                    */
                    
                    class geoPlugin {
                    	
                    	//the geoPlugin server
                    	var $host = 'http://www.geoplugin.net/php.gp?ip={IP}&base_currency={CURRENCY}';
                    		
                    	//the default base currency
                    	var $currency = 'USD';
                    	
                    	//initiate the geoPlugin vars
                    	var $ip = null;
                    	var $city = null;
                    	var $region = null;
                    	var $areaCode = null;
                    	var $dmaCode = null;
                    	var $countryCode = null;
                    	var $countryName = null;
                    	var $continentCode = null;
                    	var $latitute = null;
                    	var $longitude = null;
                    	var $currencyCode = null;
                    	var $currencySymbol = null;
                    	var $currencyConverter = null;
                    	
                    	function geoPlugin() {
                    
                    	}
                    	
                    	function locate($ip = null) {
                    		
                    		global $_SERVER;
                    		
                    		if ( is_null( $ip ) ) {
                    			$ip = $_SERVER['REMOTE_ADDR'];
                    		}
                    		
                    		$host = str_replace( '{IP}', $ip, $this->host );
                    		$host = str_replace( '{CURRENCY}', $this->currency, $host );
                    		
                    		$data = array();
                    		
                    		$response = $this->fetch($host);
                    		
                    		$data = unserialize($response);
                    		
                    		//set the geoPlugin vars
                    		$this->ip = $ip;
                    		$this->city = $data['geoplugin_city'];
                    		$this->region = $data['geoplugin_region'];
                    		$this->areaCode = $data['geoplugin_areaCode'];
                    		$this->dmaCode = $data['geoplugin_dmaCode'];
                    		$this->countryCode = $data['geoplugin_countryCode'];
                    		$this->countryName = $data['geoplugin_countryName'];
                    		$this->continentCode = $data['geoplugin_continentCode'];
                    		$this->latitude = $data['geoplugin_latitude'];
                    		$this->longitude = $data['geoplugin_longitude'];
                    		$this->currencyCode = $data['geoplugin_currencyCode'];
                    		$this->currencySymbol = $data['geoplugin_currencySymbol'];
                    		$this->currencyConverter = $data['geoplugin_currencyConverter'];
                    		
                    	}
                    	
                    	function fetch($host) {
                    
                    		if ( function_exists('curl_init') ) {
                    						
                    			//use cURL to fetch data
                    			$ch = curl_init();
                    			curl_setopt($ch, CURLOPT_URL, $host);
                    			curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
                    			curl_setopt($ch, CURLOPT_USERAGENT, 'geoPlugin PHP Class v1.0');
                    			$response = curl_exec($ch);
                    			curl_close ($ch);
                    			
                    		} else if ( ini_get('allow_url_fopen') ) {
                    			
                    			//fall back to fopen()
                    			$response = file_get_contents($host, 'r');
                    			
                    		} else {
                    
                    			trigger_error ('geoPlugin class Error: Cannot retrieve data. Either compile PHP with cURL support or enable allow_url_fopen in php.ini ', E_USER_ERROR);
                    			return;
                    		
                    		}
                    		
                    		return $response;
                    	}
                    	
                    	function convert($amount, $float=2, $symbol=true) {
                    		
                    		//easily convert amounts to geolocated currency.
                    		if ( !is_numeric($this->currencyConverter) || $this->currencyConverter == 0 ) {
                    			trigger_error('geoPlugin class Notice: currencyConverter has no value.', E_USER_NOTICE);
                    			return $amount;
                    		}
                    		if ( !is_numeric($amount) ) {
                    			trigger_error ('geoPlugin class Warning: The amount passed to geoPlugin::convert is not numeric.', E_USER_WARNING);
                    			return $amount;
                    		}
                    		if ( $symbol === true ) {
                    			return $this->currencySymbol . round( ($amount * $this->currencyConverter), $float );
                    		} else {
                    			return round( ($amount * $this->currencyConverter), $float );
                    		}
                    	}
                    	
                    	function nearby($radius=10, $limit=null) {
                    
                    		if ( !is_numeric($this->latitude) || !is_numeric($this->longitude) ) {
                    			trigger_error ('geoPlugin class Warning: Incorrect latitude or longitude values.', E_USER_NOTICE);
                    			return array( array() );
                    		}
                    		
                    		$host = "http://www.geoplugin.net/extras/nearby.gp?lat=" . $this->latitude . "&long=" . $this->longitude . "&radius={$radius}";
                    		
                    		if ( is_numeric($limit) )
                    			$host .= "&limit={$limit}";
                    			
                    		return unserialize( $this->fetch($host) );
                    
                    	}
                    
                    	
                    }
                    
                    ?>
                    then to use it in a php just call it like this
                    Code:
                    require_once('geoplugin.class.php');
                    $geoplugin = new geoPlugin();
                    
                    $geoplugin->locate();
                     
                    $city = "{$geoplugin->city}";
                    echo "We have detected , you live in $city";
                    ?>
                    hatisblack at yahoo.com

                    Comment

                    • SmokeyTheBear
                      ►SouthOfHeaven
                      • Jun 2004
                      • 28609

                      #11
                      here is an example of it in action
                      hatisblack at yahoo.com

                      Comment

                      Working...