In making my first foray into javascript, I've run into an issue- I'm using EasyjQuery_Get_IP() to get the client ip and some basic geo-location into, which I think pass back using an ajax post to a php script on the server that writes the data to a mysql database.<div>
<br></div><div>Inside the ip_callback function, my debug screen pop shows the correct output. The screen pop in the onLoad() function, however, doesn't show the correct output - it shows all my variable contents as "undefined". I'm obviously missing something simple and basic to javascript here, so I'm hoping someone can help me out.</div>
<div><br></div><div>Thanks-</div><div>Joe</div><div><br></div><div><div><script type="text/javascript"></div><div><br></div><div>function ip_callback(json) {</div><div><br></div><div>        this.ip_addr = json.IP;</div>
<div>        this.country = json.Country;</div><div>        this.city = json.CityName;</div><div>        this.region =  json.RegionName;</div><div>        this.remote_ip = json.REMOTE_ADDR;</div><div>        this.x_forward = json.HTTP_X_FORWARDED_FOR;</div>
<div><br></div><div><br></div><div>// debug purposes - trigger screen pop with info   </div><div>          alert("IP:" + this.ip_addr + " Region:" + this.region +" City:"+this.city);</div><div>
<br></div><div>   return this;</div><div>}</div><div><br></div><div>function onLoad() {</div><div><br></div><div>  var now = new Date().getTime();</div><div>  </div><div>  var ip_callback = new ip_callback();</div><div>  EasyjQuery_Get_IP("ip_callback","full");</div>
<div> </div><div>// debug purposes - trigger screen pop with info</div><div>  alert("IP:" + ip_callback.ip_addr + " Region:" +ip_callback.region +" City:"+ip_callback.city);</div><div><br></div>
<div>  var params = {</div><div>        'client_region' : ip_callback.region,</div><div>        'client_city' : ip_callback.city,</div><div>        'client_ip' : ip_callback.ip_addr,</div><div><br>
</div><div>  };</div><div><br></div><div>  $.ajax({</div><div>        type: "POST",</div><div>        url: "<redacted>/cgi-bin/testloadhandler.php",</div><div>        async: false,</div><div>        data: params</div>
<div><br></div><div>  });</div><div><br></div><div>}</div><div><br></div><div></script></div></div>