Avatar billede fonzie21 Novice
10. januar 2018 - 22:10 Der er 6 kommentarer og
1 løsning

Forkert beregning ved distance under 100 km

Hej folkens, I need help! :)

ligger og roder med en prisberegner ud fra google-maps hvor prisen bliver beregnet ud fra antal km fra A til B

Det virker egentlig som det skal, dog ved distancer under 100 km bliver "," sat forkert, dvs. det skal flyttes et ciffer til venstre for at beregningen passer, hvordan fixer jeg dette?

koden er således ud:

<?php
add_action("wp_ajax_ride_price","wprb_ride_calculation");
add_action("wp_ajax_nopriv_ride_price","wprb_ride_calculation");
function wprb_ride_calculation(){
    $distance = (float) str_replace(",","",$_POST['distance']);
    $rate = get_option("per_km_rate");
    $total_rate = $distance * $rate;
    $res_data = array("rate"=>$rate,"total_rate"=>$total_rate);
    echo json_encode($res_data);
exit();
}


?>
Avatar billede Slettet bruger
10. januar 2018 - 22:49 #1
hvis du bare skal et ciffer til venstre, så er det jo bare at dividere med 10 ?
Avatar billede fonzie21 Novice
10. januar 2018 - 22:54 #2
men det er kun ved distancer under 100km.. over passer beregningen...
Avatar billede Slettet bruger
11. januar 2018 - 00:05 #3
så må du lave en IF THEN ELSE?
Avatar billede fonzie21 Novice
11. januar 2018 - 00:19 #4
Men tror det er når jeg henter informationerne fra google maps, og distancen er undere 100km giver den et komma tal.. hvilket den ikke gør hvis det er over 100km
Avatar billede erikjacobsen Ekspert
11. januar 2018 - 06:18 #5
Prøv lige om det hjælper at erstatte komma med punktum, i stedet for bare at fjerne det:

$distance = (float) str_replace(",",".",$_POST['distance']);
Avatar billede fonzie21 Novice
11. januar 2018 - 16:12 #6
Perfekt!! det virkede, takker! giver egentlig også mening nu hvor jeg tænker over det!
Avatar billede erikjacobsen Ekspert
11. januar 2018 - 19:56 #7
For god ordens skyld bør du prøve for afstande over 1000 km. Der jo flere måder at gøre det på med decimal- og 1000-tals separator:

  333.444,00  (som vi kan li' på dansk)
  333,444.00  (som skøre udlændinge kan li')
  333444.00    (som programmeringssprog ka li')
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester