![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 254 Pomógł: 3 Dołączył: 23.02.2006 Ostrzeżenie: (0%) ![]() ![]() |
Mam trzy pola w które należy wpisywać liczby:
Sprawdzam czymś takim czy pola są numeryczne: da rade to jakoś prościej/optymalniej sprawdzić? bo przy sprawdzaniu 150 pól to ten kod urośnie że... A może dodatkowo coś co już na poziomie wprowadzania danych zablokuje wprowadzanie innych znaków niż cyfry? Ten post edytował @rtur 9.09.2012, 21:02:00 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 2 350 Pomógł: 512 Dołączył: 4.01.2009 Skąd: Wrocław / Świdnica Ostrzeżenie: (0%) ![]() ![]() |
Porządnie się to powinno zrobić tak:
1. Najpierw HTML 5:
2. Następnie zabezpieczenie JS: wertujesz po wszystkich elementach(pętla) <input> sprawdzając czy pole type==number i jeśli tak to sprawdzasz czy to jest liczba i wysyłasz odpowiednie komunikaty 3. Na końcu PHP: tylko używając pętli a nie tylko if-ów Pseudokod - pisane na szybko:
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 254 Pomógł: 3 Dołączył: 23.02.2006 Ostrzeżenie: (0%) ![]() ![]() |
którą pętlę tu zastosować?
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 340 Pomógł: 49 Dołączył: 3.07.2009 Skąd: Rzeszów Ostrzeżenie: (0%) ![]() ![]() |
Chyba jeszcze za wcześnie na piątkę. Firefox nie obsługuje, IE nie obsługuje......
http://html5test.com/ |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 2 350 Pomógł: 512 Dołączył: 4.01.2009 Skąd: Wrocław / Świdnica Ostrzeżenie: (0%) ![]() ![]() |
Cytat Chyba jeszcze za wcześnie na piątkę. Firefox nie obsługuje, IE nie obsługuje...... Dlatego trzba jeszcze użyć JS( dla starszych przeglądarek), aby "dodać" obsługę HTML5 Cytat którą pętlę tu zastosować? W JS: for w PHP: foreach |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 254 Pomógł: 3 Dołączył: 23.02.2006 Ostrzeżenie: (0%) ![]() ![]() |
Jak źle wypełnię wyświetla kod html: Gdzie robię błąd? Ten post edytował @rtur 9.09.2012, 23:26:35 |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 1 933 Pomógł: 460 Dołączył: 2.04.2010 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
Zauważ, że Twoje tablice mają indeksy 0,1. Więc takie wywołanie:
daje $_POST[''], bo $tablica_name[$ar] nie istnieje, musisz wstawić tak: $tablica_name[$key] w echo wywolujesz $tablica_text[$ar], takie indeksy dla tablicy $tablica_text zwyczajnie nie istnieją, bo są to kolejno 0,1. Powinno być tak:
Ten post edytował b4rt3kk 10.09.2012, 00:08:13 |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 254 Pomógł: 3 Dołączył: 23.02.2006 Ostrzeżenie: (0%) ![]() ![]() |
czyli
zwraca wartości: wiek, ile_filmow bo $ar to wartości a $key to klucze 0,1 w $tablica_text nie ma wartości wiek, ile_filmow to i nie znajdzie ich i nic nie wyświetli (IMG:style_emoticons/default/smile.gif) , dobrze rozumiem? to może mi wystarczy , a nie ? |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 1 933 Pomógł: 460 Dołączył: 2.04.2010 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
Foreach, ma następującą definicję:
Wyłożę to łopatologicznie dla Twojego wcześniejszego przykładu:
1 obrót pętli: - $key przyjmuje wartość 0 - $ar przyjmuje wartość 'wiek' 2 obrót pętli: - $key przyjmuje wartość 1 - $ar przyjmuje wartość 'ile_filmow' Tak więc: - is_numeric($_POST[$tablica_name[$ar]]), zawsze będzie false, bo $tablica_name[wiek] oraz $tablica_name[ile_filmow] nie istnieje - to samo się tyczy $tablica_text[$ar], dla tej tablicy, takie indeksy również nie istnieją |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 254 Pomógł: 3 Dołączył: 23.02.2006 Ostrzeżenie: (0%) ![]() ![]() |
b4rt3kk, kamil4u, dzięki, b4rt3kk Tobie szczególnie za łopatologiczne wyjaśnienie działania pętli foreach. Wielkie dzięki.
Ten post edytował @rtur 10.09.2012, 20:00:59 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 24.08.2025 - 22:47 |