FYI, http://www.maxmind.com/app/geolitecity, best to check with them
about your particular use case to ensure you are good to use the free
version.

Best Regards,
Donnie Bachan
"Nitendo Vinces - By Striving You Shall Conquer"
======================================================================
The information transmitted is intended only for the person or entity to
which it is addressed and may contain confidential and/or privileged
material. Any review, retransmission, dissemination or other use of, or
taking of any action in reliance upon, this information by persons or
entities other than the intended recipient is prohibited. If you received
this in error, please contact the sender and delete the material from any
computer.



On Sun, Dec 25, 2011 at 4:18 PM, Phillip Vector
<vec...@mostdeadlygame.com> wrote:
>
> *nods* I was looking for city and state actually.
>
> and it would need to be free. I can't drop $370 on this.
>
> On Sun, Dec 25, 2011 at 3:48 AM, Donnie Bachan (Gmail)
> <donnie.bac...@gmail.com> wrote:
>>
>> Although this isn't a completely free solution we've used it with very
>> good success without any updates for a while now.
>> http://www.maxmind.com/app/geoip_features. If you are using it for
>> just country level access for $50 it's not a bad investment.
>>
>> I've included some code for accessing checking the IP, once you have
>> the database loaded. Please note that the java database is much, much
>> faster than using the data in  a database table.
>>
>> <cffunction name="getIsBadIP" access="public" returntype="boolean"
>> output="false">
>>                <cfargument name="theIP" default="" required="false" 
>> type="string" />
>>
>>                <cfset var isBadIP = false />
>>                <cfset var clientip = arguments.theIP />
>>                <cfset var aIPParts = '' />
>>                <cfset var iIPNum = '' />
>>                <cfset var getIP = '' />
>>                <cfset var getBlackListed = '' />
>>
>>                <!--- If no IP passed use CGI.REMOTE_ADDR if exists --->
>>                <cfif not len(clientIP)>
>>                        <cfif structKeyExists(CGI,"REMOTE_ADDR") and len 
>> (CGI.REMOTE_ADDR)>
>>                                <cfset clientip = CGI.REMOTE_ADDR />
>>                        </cfif>
>>                </cfif>
>>                <!--- Check that this is a valid country, if not no actions 
>> to be
>> performed --->
>>
>>                <!--- Perform the GEOIP limiting --->
>>                <!--- Check if the IP address is provided --->
>>                <cfif len (clientIP)>
>>                        <cfset aIPParts = listToArray(clientip, ".") />
>>                        <cfif arrayLen(aIPParts) eq 4 and 
>> isNumeric(aIPParts[1]) and
>> isNumeric(aIPParts[2]) and isNumeric(aIPParts[3]) and
>> isNumeric(aIPParts[4])>
>>                                <cfset iIPNum = (aIPParts[1] * (256^3)) + 
>> (aIPParts[2] * (256^2))
>> + (aIPParts[3] * (256^1)) + (aIPParts[4]) />
>>                                <cfquery name="getIP" 
>> datasource="#getDatasource()#">
>>                                        SELECT TOP 1 country FROM GeoIP
>>                                        WHERE
>>                                        CAST(#iIPNum# AS bigint) between 
>> CAST(begin_num AS bigint) and
>> CAST(end_num AS bigint)
>>                                </cfquery>
>>                                <!--- Check if the country is in the bad 
>> range --->
>>                                <cfif getIP.recordcount>
>>                                        <cfquery name="getBlackListed" 
>> datasource="#getDatasource()#">
>>                                                SELECT * FROM countryBlacklist
>>                                                WHERE country = <cfqueryparam 
>> cfsqltype="cf_sql_varchar"
>> value="#getIP.country#" />
>>                                        </cfquery>
>>                                        <cfif getBlackListed.recordcount>
>>                                                <cfset isBadIP = true />
>>                                        </cfif>
>>                                </cfif>
>>                        </cfif>
>>
>>                </cfif>
>>
>>
>>                <cfreturn isBadIP />
>>        </cffunction>
>>
>> Hope this helps.
>>
>> Best Regards,
>> Donnie Bachan
>> "Nitendo Vinces - By Striving You Shall Conquer"
>> ======================================================================
>> The information transmitted is intended only for the person or entity to
>> which it is addressed and may contain confidential and/or privileged
>> material. Any review, retransmission, dissemination or other use of, or
>> taking of any action in reliance upon, this information by persons or
>> entities other than the intended recipient is prohibited. If you received
>> this in error, please contact the sender and delete the material from any
>> computer.
>>
>>
>>
>> On Sun, Dec 25, 2011 at 5:56 AM, Phillip Vector
>> <vec...@mostdeadlygame.com> wrote:
>>>
>>> Is there a server side solution for GeoIP that I can use? I'd like to
>>> make up some CF code that can detect when sites are connecting in
>>> area

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Order the Adobe Coldfusion Anthology now!
http://www.amazon.com/Adobe-Coldfusion-Anthology/dp/1430272155/?tag=houseoffusion
Archive: 
http://www.houseoffusion.com/groups/cf-talk/message.cfm/messageid:349242
Subscription: http://www.houseoffusion.com/groups/cf-talk/subscribe.cfm
Unsubscribe: http://www.houseoffusion.com/groups/cf-talk/unsubscribe.cfm

Reply via email to