Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [Symfony] Ustawienie stałej wartości dla ukrytego pola formularza wysyłanego metodą GET
Forum PHP.pl > Forum > PHP > Frameworki
eerie
Wysyłam metodą GET formularz, który ma ukryte pole "level". W klasie "UserSearchType" ustawiłem coś takiego:

Kod
->add('level', HiddenType::class, ['data' => 1])


Wydaje mi się, iż pole "level" powinno mieć cały czas wartość 1, a nie ma. Jest tak tylko po pierwszym kliknięciu "submit". Potem zmieniam wartość "level" w url'u i klikam ponownie "submit", ale wartość nie jest równa 1. Jest równa tyle, ile wcześniej ustawiłem w url'u (w tym przypadku edytując go ręcznie). Jak zrobić, aby po każdorazowym zatwierdzeniu formularza wartość "level" wynosiła zawsze 1, a nie tyle, ile ma akurat w url'u?
ohm
Nigdy nie probowalem, ale wydaje mi sie ze attr read_only badz disabled powinien rozwiazac problem. Dziala w POST, w GET nigdy nie sprawdzalem.
eerie
Udało mi się rozwiązać problem dodając parametr "level" na końcu uri (poza formularzem). W kodzie wystarczyło użyć:

Kod
$level = (int) ($request->query->get('level') questionmark.gif 1);
czachor
Trochę usprawniając:
  1. $level = $request->query->getInt('level', 1);

- drugi parametr to domyślna wartość, jeśli nie podano jest w requeście.
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-2024 Invision Power Services, Inc.