# Thread: Calculate distance with variable lat and lon values

1. Registered User
Join Date
Jun 2007
Posts
25

## Calculate distance with variable lat and lon values

Hi

I have a problem with implementing variables into a function that calculate distance between 2 latitudes, longitudes.
One of them is constant, and the second one being passed from the form.

Here is the code:

PHP Code:
``` \$lon1 = \$_POST['lon1'];         \$lat1 = \$_POST['lat1'];         \$lon2 = '-0.30020239';         \$lat2 = '51.58734910';          function distance(\$lat11, \$lon11, \$lat22, \$lon22) {          \$theta = \$lon11 - \$lon22;          \$dist = sin(deg2rad(\$lat11)) * sin(deg2rad(\$lat22)) +  cos(deg2rad(\$lat11)) * cos(deg2rad(\$lat22)) * cos(deg2rad(\$theta));          \$dist = acos(\$dist);          \$dist = rad2deg(\$dist);          \$miles = \$dist * 60 * 1.1515;                 return \$miles; } echo " \$lon1, \$lat1<br> \$lon2, \$lat2<br>"; //////////  return good calculation echo distance(52.611644, -0.26304, 51.58734910, -0.30020239) . " miles<br>"; ////////// my way - return wrong calculation  echo distance("\$lon1", "\$lat1", 51.58734910, -0.30020239) . " miles<br>";  ```
As long as i have lat, lon values hardcoded is fine, but idea is to have this calculation done from variables.
Both will vary .... tried different configurations ... i'm losing it ...

How should I code it ??

2. Looks like you have your latitude and longitude parameters transposed when you call your distance() function. (It's defined as lat, long, lat, long, but you've called it as long, lat, log, lat.)

3. Registered User
Join Date
Jun 2007
Posts
25
wow, how could i not see that .. blind ... works perfect.

Thank you for opening my eyes.

SOLVED
Last edited by nitapita; 01-06-2013 at 04:01 AM.

There are currently 1 users browsing this thread. (0 members and 1 guests)

#### Posting Permissions

• You may not post new threads
• You may not post replies
• You may not post attachments
• You may not edit your posts
•

"

"

## X vBulletin 4.2.2 Debug Information

• Page Generation 0.28524 seconds
• Memory Usage 2,865KB
• Queries Executed 15 (?)
Template Usage (33):
• (1)bbcode_php
• (1)footer
• (1)forumjump
• (1)forumrules
• (1)gobutton
• (3)memberaction_dropdown
• (1)navbar
• (1)navbar_moderation
• (1)navbar_noticebit
• (1)navbar_tabs
• (2)option
• (3)postbit
• (3)postbit_onlinestatus
• (3)postbit_wrapper
• (1)spacer_close
• (1)spacer_open
• (1)tagbit_wrapper

Phrase Groups Available (6):
• global
• inlinemod
• postbit
• posting
• reputationlevel
Included Files (26):
• ./global.php
• ./includes/class_bootstrap.php
• ./includes/init.php
• ./includes/class_core.php
• ./includes/config.php
• ./includes/functions.php
• ./includes/class_friendly_url.php
• ./includes/class_hook.php
• ./includes/class_bootstrap_framework.php
• ./vb/vb.php
• ./vb/phrase.php
• ./includes/functions_calendar.php
• ./includes/functions_bigthree.php
• ./includes/class_postbit.php
• ./includes/class_bbcode.php
• ./includes/functions_reputation.php
• ./includes/functions_notice.php
• ./packages/vbattach/attach.php
• ./vb/types.php
• ./vb/cache.php
• ./vb/cache/db.php
• ./vb/cache/observer/db.php
• ./vb/cache/observer.php

Hooks Called (72):
• init_startup
• friendlyurl_resolve_class
• init_startup_session_setup_start
• database_pre_fetch_array
• database_post_fetch_array
• init_startup_session_setup_complete
• global_bootstrap_init_start
• global_bootstrap_init_complete
• cache_permissions
• fetch_postinfo_query
• fetch_postinfo
• fetch_foruminfo
• global_state_check
• global_bootstrap_complete
• global_start
• style_fetch
• global_setup_complete
• strip_bbcode
• friendlyurl_clean_fragment
• friendlyurl_geturl
• forumjump
• cache_templates
• cache_templates_process
• template_register_var
• template_render_output
• fetch_template_start
• fetch_template_complete
• parse_templates
• notices_check_start
• notices_noticebit
• process_templates_complete
• friendlyurl_redirect_canonical
• bbcode_fetch_tags
• bbcode_create
• postbit_factory
• postbit_display_start
• postbit_imicons
• bbcode_parse_start
• bbcode_parse_complete_precache
• bbcode_parse_complete
• postbit_display_complete
• memberaction_dropdown
• tag_fetchbit_complete
• forumrules
• navbits
• navbits_complete