Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Pole datetime
Forum PHP.pl > Forum > PHP
kraks
Witam, mam w formularzu pole <input type="datetime" name="wjazd" />. Chcialbym uniknac sytuacji gdzie uzytkownik ktory bedzie wypelnial formularz poda date i czas w zlym formacie. (o ile wiem prawidlowo powinno byc RRRR-MM-DD HH-MM-SS). Jak wiec wprowadzic jakas maske wprowadzania dla tego pola tak aby uzytkownik musial wpisac date w dobrej formie. No i przydaloby sie tez aby ta maska uwzgledniala tylko RRRR-MM-DD HH-MM a sekundy np zawsze wstawiala na 00 bo chyba bez sensu zeby uzytkownik musial podawac czas z dokladnoscia do sekund,wystarczy ze wpisze date godzine i minuty. Prosze o pomoc i pozdrawiam
legorek
Musisz założyć, że użytkownik jest idiotą. Jeśli dasz mu jedno pole i napiszesz że wypełnić w formacie RRRR-MM-DD to i tak duża szansa że wypełni DD-MM-RRRR, albo nawet MM-DD-RRRR. Nie będziesz wiedział czy użytkownik pisząc 01-12-2008 ma na mysli 1 grudnia czy 12 stycznia. Dlatego najlepiej rozbić pole z datą na 3 oddzielne pola select, przy czym miesiąc zapisać za pomocą nazwy zamiast liczb. Tak samo z godziną. Jeśli rozmawiamy o polu datatime, końcówkę się nie martw, jeśli pominiesz minuty czy sekundy, baza automatycznie podstawi za nie 00.
kraks
Przerobilem kalendarzyk w javascripcie wstawiajacy wybrana z kalendarza date do pola w ten sposob ze dodaje rowniez aktualna godzine. Z tego co jednak zauwazylem godzina jest w formacie np 12:4 zamiast 12:04 tak wiec dla dzisiejszego dnia moje pole wyglada nastepujaco 2008-06-23 12:9. To pole w bazie danych jest typu datetime. Czy jesli otrzyma wartosc 2008-06-23 12:9 nie wyrzuci bledu? No i jak wyglada sprawa z separatorami daty i godziny czyli : i /. Z tego co sie orientuje pole datetime musi dostac wartosci w formacie RRRR:MM:DD HH:MM:SS wiec czy sie nie wysypie cos jesli sprobuje dodac rekord o wartosci 2008-06-23 12:9? Dzieki za pomoc winksmiley.jpg
legorek
Może po prostu sprawdź smile.gif Data 2008-06-23 12:9 na pewno zostanie przyjęta. Zawsze możesz przed wrzuceniem do zrobić w PHP: date(Y-m-d H:i:s, strtotime($_POST['datetime'));
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.