Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [js] liczenie cen 1 doba za 50zł następna za 40zł
Lejto
post
Post #1





Grupa: Zarejestrowani
Postów: 1 385
Pomógł: 48
Dołączył: 23.05.2007

Ostrzeżenie: (0%)
-----


Mam taki system jak na stronie http://www.hotelgorski.com/rezerwacja.html główny kod mieści się w pliku cena.js kod podlicza cenę z pól input. Potrzebuje zrobić tak aby cena za 1 dobę wynosiła 50zł a za każdą następną 40zł, jak to zrobić?

myślałem o tej funkcji:
  1. function obliczCene(){
  2. wczytajDane();
  3. cena = ((room1 * 40) + (room2 * 40) + (room3 * 40) + (room4 * 40) + (room5 * 40)) * iloscDni;
  4.  
  5. $("#cena_do_zaplaty").text(cena);
  6. $("#naleznosc").val(cena);
  7. }

albo
  1. function obliczIloscDni(){
  2. from = $("#booking_date_from").val();
  3. to = $("#booking_date_to").val();
  4.  
  5. from = from.match(/^(\d{4,4})-(\d{2,2})-(\d{2,2})$/);
  6. to = to.match(/^(\d{4,4})-(\d{2,2})-(\d{2,2})$/);
  7.  
  8. var date1 = new Date(from[1], from[2]-1, from[3]);
  9. var date2 = new Date(to[1], to[2]-1, to[3]);
  10.  
  11. var minutes = 1000*60;
  12. var hours = minutes*60;
  13. var days = hours*24;
  14.  
  15. var diff = Math.abs(date1.getTime() - date2.getTime());
  16.  
  17. iloscDni = Math.round(diff / days);
  18. obliczCene();
  19. }
  20.  

Pozdrawiam

Ten post edytował Lejto 19.10.2010, 05:39:38
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Lejto
post
Post #2





Grupa: Zarejestrowani
Postów: 1 385
Pomógł: 48
Dołączył: 23.05.2007

Ostrzeżenie: (0%)
-----


próbowałem już tak ale nie chodzi dobrze, gdzie umieścić room1 i resztę?

trochę chyba to dziwne bo na początku kodu jest iloscDni = 1; dla tego chyba nie działało, nie wiem, ale jak zmieniłem na 0 to już w ogóle
  1. $(document).ready(function(){
  2. var cena = 0;
  3. var room1 = $("#booking_numRooms1").val();
  4. var room2 = $("#booking_numRooms2").val();
  5. var room3 = $("#booking_numRooms3").val();
  6. var room4 = $("#booking_numRooms4").val();
  7. var room5 = $("#booking_numRooms5").val();
  8. var room6 = $("#booking_numRooms6").val();
  9. var roomap = $("#booking_numRoomsAp").val();
  10. var iloscDni = 1;
  11.  
  12. $("#booking_numRooms1").change(function () {
  13. obliczCene();
  14. });
  15.  
  16. $("#booking_numRooms2").change(function () {
  17. obliczCene();
  18. });
  19.  
  20. $("#booking_numRooms3").change(function () {
  21. obliczCene();
  22. });
  23.  
  24. $("#booking_numRooms4").change(function () {
  25. obliczCene();
  26. });
  27.  
  28. $("#booking_numRooms5").change(function () {
  29. obliczCene();
  30. });
  31.  
  32. $("#booking_numRooms6").change(function () {
  33. obliczCene();
  34. });
  35.  
  36. $("#booking_numRoomsAp").change(function () {
  37. obliczCene();
  38. });
  39.  
  40. $("#booking_date_from").change(function () {
  41. if($("#booking_date_to").val()) obliczIloscDni();
  42. });
  43.  
  44. $("#booking_date_to").change(function () {
  45. if($("#booking_date_from").val()) obliczIloscDni();
  46. });
  47.  
  48. $("#cena_do_zaplaty").text(cena);
  49.  
  50.  
  51. function wczytajDane(){
  52. cena = 0;
  53. room1 = $("#booking_numRooms1").val();
  54. room2 = $("#booking_numRooms2").val();
  55. room3 = $("#booking_numRooms3").val();
  56. room4 = $("#booking_numRooms4").val();
  57. room5 = $("#booking_numRooms5").val();
  58. room6 = $("#booking_numRooms6").val();
  59. roomap = $("#booking_numRoomsAp").val();
  60. }
  61.  
  62. function obliczIloscDni(){
  63. from = $("#booking_date_from").val();
  64. to = $("#booking_date_to").val();
  65.  
  66. from = from.match(/^(\d{4,4})-(\d{2,2})-(\d{2,2})$/);
  67. to = to.match(/^(\d{4,4})-(\d{2,2})-(\d{2,2})$/);
  68.  
  69. var date1 = new Date(from[1], from[2]-1, from[3]);
  70. var date2 = new Date(to[1], to[2]-1, to[3]);
  71.  
  72. var minutes = 1000*60;
  73. var hours = minutes*60;
  74. var days = hours*24;
  75.  
  76. var diff = Math.abs(date1.getTime() - date2.getTime());
  77.  
  78. iloscDni = Math.round(diff / days);
  79. obliczCene();
  80. }
  81.  
  82. function obliczCene(){
  83. wczytajDane();
  84. cena = ((room1 * 160) + (room2 * 220) + (room3 * 170) + (room4 * 200) + (room5 * 270) + (room6 * 285) + (roomap * 550)) * iloscDni;
  85.  
  86. $("#cena_do_zaplaty").text(cena);
  87. $("#naleznosc").val(cena);
  88. }
  89. });
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 10.10.2025 - 14:04