CRM ak Done platfòmAnalytics & TèsZouti Maketing

Kalkile oswa rechèch Distans gwo sèk ant pwen latitid ak longè ak fòmil Havesine (PHP, JavaScript, Java, Python, MySQL, MSSQL Egzanp)

Mwa sa a mwen te pwogramasyon byen yon ti jan nan PHP ak miskl ki gen rapò ak GIS. Snooping alantou nèt la, mwen aktyèlman te gen yon tan difisil jwenn kèk nan la Kalkil jewografik jwenn distans ki genyen ant de kote Se konsa, mwen te vle pataje yo isit la.

Kat vòl Ewòp ak distans sèk Gran

Fason senp pou kalkile yon distans ant de pwen se lè l sèvi avèk fòmil pitagorik pou kalkile ipotenuz yon triyang (A² + B² = C²). Sa a se ke yo rekonèt kòm la Distans eklidyen.

Sa se yon kòmansman enteresan men li pa aplike avèk Jewografi depi distans ant liy latitid ak lonjitid yo pa egal distans apa. Kòm ou vin pi pre ekwatè a, liy latitid vin pi lwen apa. Si ou itilize kèk kalite ekwasyon triyangilasyon senp, li ka mezire distans avèk presizyon nan yon sèl kote ak fò anpil mal nan lòt la, paske nan deviation a sou Latè a.

Gran distans sèk

Wout yo ke yo vwayaje long distans alantou Latè a yo konnen kòm Gran distans sèk. Sa vle di... distans ki pi kout ant de pwen sou yon esfè diferan de pwen yo sou yon kat jeyografik plat. Konbine sa ak lefèt ke liy latitid ak lonjitid yo pa ekidistan... epi ou gen yon kalkil difisil.

Isit la nan yon eksplikasyon videyo kokenn sou ki jan Gran sèk travay.

Fòmil la Haversine

Distans lè l sèvi avèk koube Latè a enkòpore nan la Fòmil Haversine, ki itilize trigonometri pou pèmèt koub tè a. Lè w ap jwenn distans ki genyen ant 2 kote sou latè (tankou kòk la vole), yon liy dwat se reyèlman yon ark.

Sa a se aplikab nan vòl lè - ou te janm gade kat jeyografik aktyèl la nan vòl ak remake yo vout? Se paske li pi kout vole nan yon vout ant de pwen pase dirèkteman nan kote a.

PHP: Kalkile Distans Ant 2 Pwen Latitid ak Lonjitid

Men fòmil PHP pou kalkile distans ant de pwen (ansanm ak konvèsyon Mile vs Kilomèt) awondi ak de kote desimal.

function getDistanceBetweenPointsNew($latitude1, $longitude1, $latitude2, $longitude2, $unit = 'miles') {
  $theta = $longitude1 - $longitude2; 
  $distance = (sin(deg2rad($latitude1)) * sin(deg2rad($latitude2))) + (cos(deg2rad($latitude1)) * cos(deg2rad($latitude2)) * cos(deg2rad($theta))); 
  $distance = acos($distance); 
  $distance = rad2deg($distance); 
  $distance = $distance * 60 * 1.1515; 
  switch($unit) { 
    case 'miles': 
      break; 
    case 'kilometers' : 
      $distance = $distance * 1.609344; 
  } 
  return (round($distance,2)); 
}

Varyab yo se:

  • $Latitid1 – yon varyab pou latitid premye kote ou a.
  • $ Longitude1 – yon varyab pou lonjitid premye kote ou a
  • $Latitid2 – yon varyab pou dezyèm latitid kote w ye a.
  • $ Longitude2 – yon varyab pou lonjitid dezyèm kote ou a.
  • $inite - default ke yo te mil. Sa a ka mete ajou oswa pase kòm kilomèt.

Java: Kalkile Distans Ant 2 Pwen Latitid ak Lonjitid

public static double getDistanceBetweenPointsNew(double latitude1, double longitude1, double latitude2, double longitude2, String unit) {
    double theta = longitude1 - longitude2;
    double distance = 60 * 1.1515 * (180/Math.PI) * Math.acos(
        Math.sin(latitude1 * (Math.PI/180)) * Math.sin(latitude2 * (Math.PI/180)) + 
        Math.cos(latitude1 * (Math.PI/180)) * Math.cos(latitude2 * (Math.PI/180)) * Math.cos(theta * (Math.PI/180))
    );
    if (unit.equals("miles")) {
        return Math.round(distance, 2);
    } else if (unit.equals("kilometers")) {
        return Math.round(distance * 1.609344, 2);
    } else {
        return 0;
    }
}

Varyab yo se:

  • latitid1 – yon varyab pou latitid premye kote ou a.
  • lonjitid 1 – yon varyab pou lonjitid premye kote ou a
  • latitid2 – yon varyab pou dezyèm latitid kote w ye a.
  • lonjitid 2 – yon varyab pou lonjitid dezyèm kote ou a.
  • inite - default ke yo te mil. Sa a ka mete ajou oswa pase kòm kilomèt.

Javascript: Kalkile Distans Ant 2 Pwen Latitid ak Lonjitid

function getDistanceBetweenPoints(latitude1, longitude1, latitude2, longitude2, unit = 'miles') {
    let theta = longitude1 - longitude2;
    let distance = 60 * 1.1515 * (180/Math.PI) * Math.acos(
        Math.sin(latitude1 * (Math.PI/180)) * Math.sin(latitude2 * (Math.PI/180)) + 
        Math.cos(latitude1 * (Math.PI/180)) * Math.cos(latitude2 * (Math.PI/180)) * Math.cos(theta * (Math.PI/180))
    );
    if (unit == 'miles') {
        return Math.round(distance, 2);
    } else if (unit == 'kilometers') {
        return Math.round(distance * 1.609344, 2);
    }
}

Varyab yo se:

  • latitid1 – yon varyab pou latitid premye kote ou a.
  • lonjitid 1 – yon varyab pou lonjitid premye kote ou a
  • latitid2 – yon varyab pou dezyèm latitid kote w ye a.
  • lonjitid 2 – yon varyab pou lonjitid dezyèm kote ou a.
  • inite - default ke yo te mil. Sa a ka mete ajou oswa pase kòm kilomèt.

Python: Kalkile Distans Ant 2 Pwen Latitid ak Lonjitid

De tout fason, isit la se fòmil Python pou kalkile distans ant de pwen (ansanm ak konvèsyon Mile vs Kilomèt) awondi a de kote desimal. Kredi pou pitit gason m nan, Bill Karr ki se yon syantifik done pou OpenINSIGHTS, pou kòd la.

from numpy import sin, cos, arccos, pi, round

def rad2deg(radians):
    degrees = radians * 180 / pi
    return degrees

def deg2rad(degrees):
    radians = degrees * pi / 180
    return radians

def getDistanceBetweenPointsNew(latitude1, longitude1, latitude2, longitude2, unit = 'miles'):
    
    theta = longitude1 - longitude2
    
    distance = 60 * 1.1515 * rad2deg(
        arccos(
            (sin(deg2rad(latitude1)) * sin(deg2rad(latitude2))) + 
            (cos(deg2rad(latitude1)) * cos(deg2rad(latitude2)) * cos(deg2rad(theta)))
        )
    )
    
    if unit == 'miles':
        return round(distance, 2)
    if unit == 'kilometers':
        return round(distance * 1.609344, 2)

Varyab yo se:

  • latitid1 – yon varyab pou premye kote ou a latitid.
  • lonjitid 1 – yon varyab pou premye kote ou a lonjitid
  • latitid2 – yon varyab pou dezyèm kote ou a latitid.
  • lonjitid 2 – yon varyab pou dezyèm kote ou a lonjitid.
  • inite - default ke yo te mil. Sa a ka mete ajou oswa pase kòm kilomèt.

MySQL: Rekipere tout dosye ki nan yon seri lè w kalkile distans an mil ak latitid ak longè

Li posib tou pou itilize SQL pou fè yon kalkil pou jwenn tout dosye nan yon distans espesifik. Nan egzanp sa a, mwen pral mande MyTable nan MySQL pou jwenn tout dosye ki gen mwens pase oswa egal a varyab $ distans (an Kilomèt) kote mwen ye a $ latitid ak $ lonjitid:

Rekèt la pou rekipere tout dosye yo nan yon espesifik distans pa kalkile distans an mil ant de pwen latitid ak lonjitid yo se:

$query = "SELECT *, (((acos(sin((".$latitude."*pi()/180)) * sin((`latitude`*pi()/180)) + cos((".$latitude."*pi()/180)) * cos((`latitude`*pi()/180)) * cos(((".$longitude."- `longitude`)*pi()/180)))) * 180/pi()) * 60 * 1.1515) as distance FROM `table` WHERE distance <= ".$distance."

Ou pral bezwen Customize sa a:

  • $ lonjitid - sa a se yon varyab PHP kote mwen pase lonjitid la nan pwen an.
  • $ latitid - sa a se yon varyab PHP kote mwen pase lonjitid la nan pwen an.
  • $ distans - sa a se distans la ke ou ta renmen jwenn tout dosye yo mwens oswa egal a.
  • tab - sa a se tab la ... ou pral vle ranplase sa ak non tab ou.
  • latitid - sa a se jaden latitid ou.
  • lonjitid - sa a se jaden longitid ou.

MySQL: Rekipere tout dosye ki nan yon seri lè w kalkile distans an kilomèt ak latitid ak longè

Ak isit la nan rechèch la SQL lè l sèvi avèk kilomèt nan miskl:

$query = "SELECT *, (((acos(sin((".$latitude."*pi()/180)) * sin((`latitude`*pi()/180)) + cos((".$latitude."*pi()/180)) * cos((`latitude`*pi()/180)) * cos(((".$longitude."- `longitude`) * pi()/180)))) * 180/pi()) * 60 * 1.1515 * 1.609344) as distance FROM `table` WHERE distance <= ".$distance."

Ou pral bezwen Customize sa a:

  • $ lonjitid - sa a se yon varyab PHP kote mwen pase lonjitid la nan pwen an.
  • $ latitid - sa a se yon varyab PHP kote mwen pase lonjitid la nan pwen an.
  • $ distans - sa a se distans la ke ou ta renmen jwenn tout dosye yo mwens oswa egal a.
  • tab - sa a se tab la ... ou pral vle ranplase sa ak non tab ou.
  • latitid - sa a se jaden latitid ou.
  • lonjitid - sa a se jaden longitid ou.

Mwen itilize kòd sa a nan yon platfòm kat antrepriz ke nou itilize pou yon magazen an detay ak plis pase 1,000 kote atravè Amerik di Nò e li te travay trè byen.

Microsoft SQL Server Jeyografik Distans: STDistance

Si w ap itilize Microsoft SQL sèvè, yo ofri pwòp fonksyon yo, STDistans pou kalkile distans ki genyen ant de pwen lè l sèvi avèk kalite done Jeyografi.

DECLARE @g geography;  
DECLARE @h geography;  
SET @g = geography::STGeomFromText('LINESTRING(-122.360 47.656, -122.343 47.656)', 4326);  
SET @h = geography::STGeomFromText('POINT(-122.34900 47.65100)', 4326);  
SELECT @g.STDistance(@h);  

Chapo pwent pou Manash Sahoo, VP ak Achitek nan Highbridge.

Douglas Karr

Douglas Karr se fondatè a nan Martech Zone ak yon ekspè rekonèt sou transfòmasyon dijital. Douglas te ede kòmanse plizyè demaraj MarTech ki gen siksè, li te ede nan dilijans plis pase $ 5 milya nan akizisyon ak envestisman MarTech, epi li kontinye lanse pwòp platfòm ak sèvis li yo. Li se yon ko-fondatè Highbridge, yon konpayi konsiltasyon transfòmasyon dijital. Douglas se tou yon otè pibliye nan yon gid Dummie ak yon liv lidèchip biznis.

78 Kòmantè

  1. Mèsi anpil pou pataje. Sa a se te yon travay kopye ak kole fasil epi li travay byen. Ou te sove m anpil tan.
    FYI pou nenpòt moun ki pote sou C:
    doub deg2rad (double deg) { return deg * (3.14159265358979323846/180.0); }

  2. Trè bèl moso nan afiche - te travay trè bèl - mwen sèlman te oblije chanje non an nan tab la kenbe lat-long la. Li travay trè vit pou .. Mwen gen yon ti kantite lat-longs (< 400) men mwen panse ke sa a ta byen echèl. Bèl sit tou - mwen jis ajoute li nan kont del.icio.us mwen epi mwen pral tcheke tounen regilyèman.

  3. Mwen te chèche tout jounen an pou kalkil distans epi mwen te jwenn algorithm harversine a, gras a ou paske w te bay egzanp sou kòman yo mete l nan yon deklarasyon sql. Mèsi ak bonjou, Daniel

    1. M kontan ede w, zanmi rails!

      Koulye a, mwen se nan rechèch nan yon 'nan poligòn' fonksyon PHP ki pral pran yon etalaj de kowòdone latitid ak lonjitid sekans ak konnen si yon lòt pwen se nan oswa deyò nan poligòn nan.

  4. Mwen panse ke SQL ou bezwen yon deklarasyon ki gen.
    olye de WHERE distans <= $distans ou ta ka bezwen
    itilize HAVING distans <= $distans

    otreman mèsi pou ekonomize m 'yon pakèt tan ak enèji.

  5. Mèsi anpil pou pataje kòd sa a. Li te sove m 'anpil tan devlopman. Epitou, gras a lektè ou yo pou fè remake ke yon deklarasyon HAVING nesesè pou MySQL 5.x. Trè itil.

  6. Hello,

    Yon lòt kesyon. Èske gen yon fòmil pou strings NMEA tankou sa ki anba a?

    1342.7500,N,10052.2287,E

    $GPRMC,032731.000,A,1342.7500,N,10052.2287,E,0.40,106.01,101106,,*0B

    Mèsi,
    Harry

  7. Mwen te jwenn tou ke KOTE pa t travay pou mwen. Chanje li an GEN ak tout bagay ap travay pafè. Okòmansman, mwen pa t 'li kòmantè yo ak reekri li lè l sèvi avèk yon seleksyon enbrike. Tou de pral travay jis byen.

  8. Ekstrèmman itil, mèsi anpil! Mwen te gen kèk pwoblèm ak nouvo "HAVING la", olye ke "KOTE", men yon fwa mwen li kòmantè yo isit la (apre yon demi èdtan nan fanm k'ap pile dan mwen nan fristrasyon =P), mwen te jwenn li travay joliman. Mèsi ^_^

  9. Kenbe nan tèt ou ke yon deklarasyon chwazi tankou sa a pral trè entans enfòmatik epi kidonk ralanti. Si ou gen anpil nan demann sa yo, li ka boure bagay yo byen vit.

    Yon apwòch mwens entans se fè yon premye seleksyon (brit) lè l sèvi avèk yon zòn KARE defini pa yon distans kalkile sa vle di "select * soti nan tablename kote latitid ant lat1 ak lat2 ak lonjitid ant lon1 ak lon2". lat1 = targetlatitude – latdiff, lat2 = targetlatitude + latdiff, menm jan ak lon. latdiff ~= distans / 111 (pou km), oswa distans / 69 pou mil depi 1 degre latitid se ~ 111 km (tijè varyasyon depi tè a se yon ti kras oval, men ase pou objektif sa a). londiff = distans / (abs (cos (deg2rad (latitid)) * 111)) - oswa 69 pou mil (ou ka aktyèlman pran yon kare yon ti kras pi gwo yo nan lòd yo konte pou varyasyon). Lè sa a, pran rezilta a ak manje li nan seleksyon radial la. Jis pa bliye konte pou kowòdone andeyò limit yo - sa vle di ranje lonjitid akseptab se -180 a +180 ak ranje latitid akseptab se -90 a +90 - nan ka latdiff oswa londiff ou a kouri andeyò ranje sa a. . Remake byen ke nan pifò ka sa a ka pa aplikab paske li sèlman afekte kalkil sou yon liy atravè oseyan Pasifik la soti nan poto nan poto, menm si li kwaze yon pati nan chukotka ak yon pati nan Alaska.

    Ki sa ki nou akonpli pa sa a se yon rediksyon enpòtan nan kantite pwen kont ki ou fè kalkil sa a. Si ou gen yon milyon pwen mondyal nan baz done a distribye apeprè egalman epi ou vle fè rechèch nan yon distans 100 km, Lè sa a, premye rechèch (vit) ou a se nan yon zòn 10000 km sq epi li pral pwobableman bay apeprè 20 rezilta (ki baze sou distribisyon menm sou yon sifas apeprè 500M sq km), ki vle di ke ou kouri kalkil distans konplèks la 20 fwa pou rechèch sa a olye pou yo yon milyon fwa.

      1. Kokenn konsèy! Mwen aktyèlman te travay ak yon pwomotè ki te ekri yon fonksyon ki rale kare anndan an ak Lè sa a, yon fonksyon recursive ki te fè 'kare' alantou perimèt la enkli ak eskli pwen ki rete yo. Rezilta a se te yon rezilta ekstrèmman rapid - li te kapab evalye dè milyon de pwen nan mikrosgond.

        Apwòch mwen an pi wo a se definitivman 'brit' men ki kapab. Mesi anko!

        1. Doug,

          Mwen te eseye sèvi ak mysql ak php pou evalye si yon pwen lat long nan yon poligòn. Èske w konnen si zanmi pwomotè w la pibliye kèk egzanp sou fason pou w akonpli travay sa a. Oswa èske w konnen nenpòt bon egzanp. Mèsi davans.

  10. Bonjou tout moun sa a se deklarasyon SQL tès mwen an:

    SELECT DISTINCT area_id, (
    (
    (
    acos( sin( ( 13.65 * pi( ) /180 ) ) * sin( (
    `lat_dec` * pi( ) /180 ) ) + cos( ( 13.65 * pi( ) /180 ) ) * cos( (
    `lat_dec` * pi( ) /180 )
    ) * cos( (
    ( 51.02 - `lon_dec` ) * pi( ) /180 )
    )
    )
    ) *180 / pi( )
    ) *60 * 1.1515 * 1.609344
    ) AS distance
    FROM `post_codes` WHERE distance <= 50

    ak Mysql ap di m 'ke distans, pa egziste kòm yon kolòn, mwen ka itilize lòd pa, mwen ka fè li san KOTE, epi li travay, men se pa ak li ...

  11. Sa a se gwo, sepandan li se menm jan zwazo yo vole. Li ta bon pou eseye ak enkòpore Google Maps API sa a yon jan kanmenm (petèt lè l sèvi avèk wout elatriye) Jis bay yon lide lè l sèvi avèk yon fòm diferan nan transpò. Mwen toujou poko fè yon fonksyon annealing simulation nan PHP ki ta kapab ofri yon solisyon efikas nan pwoblèm nan vandè vwayaje. Men, mwen panse ke mwen ka kapab reitilize kèk nan kòd ou a pou fè sa.

  12. Bon atik! Mwen te jwenn yon anpil nan atik ki dekri ki jan yo kalkile distans ant de pwen men mwen te reyèlman kap chèche snippet la SQL.

  13. 2 jou rechèch poum jwenn finalman paj sa ki rezoud pwoblèm mwen an. Li sanble ke mwen pi bon jarèt soti WolframAlpha mwen epi brose sou matematik mwen an. Chanjman ki soti nan KOTE a HAVING gen script mwen an nan lòd travay. MÈSI

    1. Mèsi Georgi. Mwen te kontinye jwenn kolòn 'distans' pa jwenn. Yon fwa mwen chanje KOTE pou GEN li te travay tankou yon cham!

  14. Mwen swete sa a se premye paj mwen ta jwenn sou sa a. Apre w fin eseye anpil kòmandman diferan, sa a se sèlman youn nan travay byen, ak chanjman minimòm ki nesesè yo anfòm pwòp baz done mwen an.
    Thanks a lot!

  15. Mwen swete sa a se premye paj mwen ta jwenn sou sa a. Apre w fin eseye anpil kòmandman diferan, sa a se sèlman youn nan travay byen, ak chanjman minimòm ki nesesè yo anfòm pwòp baz done mwen an.
    Thanks a lot!

  16. mèsi paske w poste atik itil sa a,  
    men pou kèk rezon mwen ta renmen mande
    ki jan yo ka resevwa distans ki genyen ant koòd andedan mysql db ak koòd yo mete nan php pa itilizatè?
    pou dekri pi klè:
    1.Itilizatè a dwe mete [id] pou chwazi done espesifye nan db ak kòd itilizatè tèt li.
    2.Fisye php la jwenn done sib yo (kowòd) lè l sèvi avèk [id] ak Lè sa a, kalkile distans ant itilizatè ak pwen sib.

    oswa ou ka jis jwenn distans ak kòd ki anba a?

    $qry = “CHWAZI *,(((acos(sin((“.$latitid.”*pi()/180)) * sin((`Latitid`*pi()/180))+cos((“. $latitid.”*pi()/180)) * cos((`Latitid`*pi()/180)) * cos((((“.$longitud.”- `Lonjitid`)*pi()/180) )))*180/pi())*60*1.1515*1.609344) kòm distans DE `MyTable` WHERE distans >= ".$distans." >>>> Èske mwen ka "pran" distans la soti isit la?
    Mesi anko,
    Timmy S

  17. ok, tout sa mwen te eseye pa mache. Mwen vle di, sa mwen genyen travay, men distans yo byen lwen.

    Èske yon moun ta ka wè sa ki mal ak kòd sa a?

    if(isset($_POST['soumèt'])){ $z = $_POST['kod postal']; $r = $_POST['reyon']; eko “Rezilta pou “.$z; $sql = mysql_query(“SELECT DISTINCT m.zipcode, m.MktName,m.LocAddSt,m.LocAddCity,m.LocAddState,m.x1,m.y1,m.verified,z1.lat,z2.lon,z1. city,z1.state FROM mrk m, zip z1, zip z2 KOTE m.zipcode = z1.zipcode AND z2.zipcode = $z AND (3963 * acos( truncate( sin( z2.lat / 57.2958 ) * sin( m). y1 / 57.2958 ) + cos( z2.lat / 57.2958 ) * cos ( m.y1 / 57.2958 ) * cos ( m.x1 / 57.2958 – z2.lon / 57.2958 ), 8 ) ) ) <= $e ") (mysql_error()); while($row = mysql_fetch_array($sql)) { $store1 = $row['MktName']."”; $magazen = $row ['LocAddSt'].””; $store .= $row['LocAddCity'].”, “.$row['LocAddState'].” “.$ranje ['kod postal']; $latitid1 = $ranje ['lat']; $longitude1 = $ranje ['lon']; $latitid2 = $ranje ['y1']; $longitud2 = $ranje ['x1']; $vil = $ranje ['vil']; $eta = $ranje ['eta']; $dis = getnew($latitid1, $longitude1, $latitid2, $longitude2, $inite = 'Mi'); // $dis = distans($lat1, $lon1, $lat2, $lon2); $ verifye = $ ranje [ ' verifye ' ] ; si ($ verifye == '1'){ eko “”; eko "".$magazen.""; eko $dis . "mil (yo) lwen"; eko ""; } lòt bagay { eko “”.$magazen.””; eko $dis . "mil (yo) lwen"; eko ""; }}}

    kòd functions.php mwen an
    fonksyon getnew($latitid1, $longitud1, $latitid2, $longitud2, $inite = 'Mi') { $theta = $longitude1 – $longitude2; $distans = (sin(deg2rad($latitid1)) * sin(deg2rad($latitid2))) + (cos(deg2rad($latitid1)) * cos(deg2rad($latitid2)) * cos(deg2rad($theta)) ); $distans = acos($distans); $distans = rad2deg($distans); $distans = $distans * 60 * 1.1515; switch($inite) { ka 'Mi': kraze; ka 'Km' : $distans = $distans * 1.609344; } retounen (wonn($distans,2)); }

    Mèsi davans

  18. Hey Douglas, bèl atik. Mwen te jwenn eksplikasyon ou sou konsèp jeyografik yo ak kòd la vrèman enteresan. Sèl sijesyon mwen ta dwe espas ak endent kòd la pou ekspozisyon (tankou Stackoverflow, pou egzanp). Mwen konprann ke ou vle konsève espas, men espas konvansyonèl kòd / indentation ta fè li pi fasil pou mwen, kòm yon pwogramè, li ak diseksyon. De tout fason, sa se yon ti bagay. Kontinye gwo travay la.

  19. isit la pandan w ap itilize ak fonksyon nou ap resevwa yon sèl kalite distans .. pandan w ap itilize rechèch vini li yo lòt kalite distans

  20. li sanble pi vit (mysql 5.9) yo sèvi ak de fwa fòmil la nan seleksyon an ak ki kote:
    $formil = “(((acos(sin((“.$latitid.”*pi()/180)) * sin((`Latitid`*pi()/180))+cos(((“.$latitid. ”*pi()/180)) * cos((`Latitid`*pi()/180)) * cos(((“.$longitud.”- `Lonjitid`)*pi()/180)))) *180/pi())*60*1.1515*1.609344)”;
    $sql = 'SELECT *, '.$formil.' kòm distans Apati tab KOTE '..$formil.' <= '.$distans;

  21. Mèsi anpil pou taye atik sa a.li trè itil.
    Okòmansman, PHP te kreye kòm yon senp platfòm script ki rele "Pèson Kay Paj". Sèjousi PHP (ki kout pou Hypertext Preprocessor) se yon altènatif nan teknoloji Microsoft Active Server Pages (ASP).

    PHP se yon langaj sous ouvè bò sèvè ki itilize pou kreye paj wèb dinamik. Li ka entegre nan HTML. Anjeneral yo itilize PHP an konjonksyon avèk yon baz done MySQL sou serveurs entènèt Linux/UNIX. Li se pwobableman lang scripting ki pi popilè.

  22. Mwen jwenn solisyon pi wo a pa travay byen.
    Mwen bezwen chanje pou:

    $qqq = “CHWAZI *,(((acos(sin((“.$latitid.”*pi()/180)) * sin((`latt`*pi()/180))+cos((” . $latitid . “*pi()/180)) * cos((`latt`*pi()/180)) * cos(((” . $longitud . “- `longt`)*pi()/180) )))*180/pi())*60*1.1515) kòm distans soti nan `register` “;

  23. Bonjou, tanpri mwen pral reyèlman bezwen èd ou sou sa.

    Mwen te fè yon demann jwenn nan sèvè entènèt mwen an http://localhost:8000/users/findusers/53.47792/-2.23389/20/
    53.47792 = $latitid
    -2.23389 = $longitud
    ak 20 = distans mwen vle rekipere

    Sepandan lè l sèvi avèk fòmil ou a, li rekipere tout ranje nan db mwen an

    $rezilta = DB::select( DB::raw(“SELECT *, (((acos(sin((“.$latitid.”*pi()/180)) * sin((lat*pi()/180) ))+cos((“.$latitid.”*pi()/180)) * cos((lat*pi()/180)) * cos(((“.$longitud.”- lng)*pi( )/180))))*180/pi())*60*1.1515*1.609344) as distance FROM markers HAVING distance >= “.$distance ));

    [{“id”:1,”name”:”Frankie Johnnie & Luigo Too”,”address”:”939 W El Camino Real, Mountain View, CA”,”lat”:37.386337280273,”lng”:-122.08582305908, ”distans”:16079.294719663},{“id”:2,”name”:”Amici's East Coast Pizzeria”,”address”:”790 Castro St, Mountain View, CA”,”lat”:37.387138366699,”lng”: -122.08323669434,”distance”:16079.175940152},{“id”:3,”name”:”Kapp's Pizza Bar & Grill”,”address”:”191 Castro St, Mountain View, CA”,”lat”:37.393886566162, ”lng”:-122.07891845703,”distance”:16078.381373826},{“id”:4,”name”:”Round Table Pizza: Mountain View”,”address”:”570 N Shoreline Blvd, Mountain View, CA”, ”lat”:37.402652740479,”lng”:-122.07935333252,”distance”:16077.420540582},{“id”:5,”name”:”Tony & Alba's Pizza & Pasta”,”address”:”619 Escuela Ave, Mountain View, CA”,”lat”:37.394012451172,”lng”:-122.09552764893,”distance”:16078.563225154},{“id”:6,”name”:”Oregano's Wood-Fired Pizza”,”address4546”:” El Camino Real, Los Altos, CA”,”lat”:37.401725769043,”lng”:-122.11464691162,”distance”:16077.937560795},{“ id”:7,”name”:”Ba yo ak gri”, “adrès”:”24 Whiteley Street, Manchester”,”lat”:53.485118865967,”lng”:-2.1828699111938,”distance”:8038.7620112314}]

    Mwen vle rekipere jis ranje ak 20 mil men li pote tout ranje. Tanpri, kisa mwen fè mal

  24. Mwen ap chèche yon rechèch menm jan an men mwen te ogmante yon ti kras - an ti bout tan sa a se gwoup tout kowòdone nan 2 mil nan chak kowòdone ak Lè sa a, konte konbyen kowòdone nan chak gwoup ak pwodiksyon sèlman yon gwoup ki gen plis kowòdone - menm si ou gen plis pase yon gwoup nan mitan gwoup ki gen pi gwo kantite kowòdone - tou senpleman soti gwoup o aza nan gwoup yo ki gen menm pi gwo nimewo -

Ki sa ou panse?

Sit sa a sèvi ak Akismet diminye Spam. Aprann kijan kòmantè ou a trete.

Atik ki gen rapò