Teraz używam jednego js
plik zawierający niektóre funkcje tego kalendarzakod, ale mój kalendarz zawsze pokazuje aktualną datę jako datę klienta. Próbowałem dużo, ale w końcu wiedziałem, że kalendarz javascript zawsze pobiera datę i godzinę klienta. Więc możesz mi powiedzieć, jak mój kalendarz aplikacji internetowej pokaże mi bieżącą datę jako bieżącą datę serwera zamiast aktualnej daty starego klienta
Odpowiedzi:
0 dla odpowiedzi № 1Jak wiesz, że js zawsze bierze datę po stronie klienta, więc musisz sobie z tym poradzić
jedna sztuczka, do której idę
w momencie renderowania html wezmę datę po stronie serwera w ukryte pole, a gdy jquery wywoła bieżącą datę, podam ją jako bieżącą datę
0 dla odpowiedzi nr 2
Możesz wysłać wartość z serwera, która przechowuje aktualny czas serwera i utworzyć nowy obiekt daty po stronie klienta, który przechowuje tę wartość, a zatem skutecznie pokazuje datę na serwerze.
Jednak musi istnieć BARDZO dobry powódrobi to, ponieważ może to być bardzo mylące dla użytkownika. Ponadto serwer może znajdować się teraz w jednej strefie czasowej, a jutro w innej (jeśli przeprowadzisz się do innego dostawcy), więc daty mogą być niespójne, jeśli zapiszesz odpowiedź od użytkownika.
Jeśli powiększysz się nieco i potrzebujesz redundancji w centrum danych, na pewno będziesz mieć różne strefy czasowe, ponieważ chcesz, aby centra danych były rozmieszczone geograficznie.
Zatem najlepszą praktyką jest pokazanie użytkownikowi własnego czasu i przetłumaczenie go na cokolwiek chcesz na serwerze.
0 dla odpowiedzi № 3
możesz po prostu odczytać zmienną podczas ładowania strony, taką jak:
$ startOfMonth = data („01-m-Y”);
i przypisz to do swojego pola datepicker, jak
">
0 dla odpowiedzi nr 4
Proszę Wypróbuj to
$( ".selector" ).datepicker({ defaultDate: "<?php date("m-d-y"); ?>" });