Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Operator porównania dziwnie działa
Forum PHP.pl > Forum > Przedszkole
bor1904
Witam
Straciłem cały ranek i nie udało mi się wyjaśnić dlaczego nie działa mi zapamiętywanie wybranego "radio" w formularzu.

Mamy formularz:
<input <?php if($amortyzacja=='2.5') echo 'checked="checked"'; ?> style="margin-top: 5px" name="amortyzacja" value="2.5" type="radio" /> 2,5% <br />
<input <?php if($amortyzacja=='10') echo 'checked="checked"'; ?> style="margin-top: 5px" name="amortyzacja" value="10" type="radio" /> 10% <br />
...
...

To wysyłam do kontrolera.
W kontrolerze dla uproszczenia tylko odbieram i wysyłam w tej samej postaci do szablonu zawierającego ten formularz. Dodatkowo przez echo tuż przed if'ami sprawdzam jaka jest wartość zmiennej amortyzacja.

Działa dla 3 pozycji a dla liczby 14 nie działa. Wiele razy kopiowałem powyższe albo poniższe działające inputy ale to nie ma wpływu.

Poradziłem sobie robiąc warunek przez alternatywe wykluczającą z użyciem wszystkich innych opcji i to działa ... ale dlaczego jest tak że echo pokazuje 14 a w kolejnej instrukcji warunek amortyzacja==14 nie działa questionmark.gif?


Za wskazówki dziękuję
tehaha
1. skoro to jest liczba to czemu robisz porównanie do string'a?
spróbuj tak:
  1. if((float)$amortyzacja==2.5)
bor1904
bo zawsze tak robiłem i działało.

poza tym jest problem z liczbą całkowitą 14.


tehaha
to robiłeś źle. Pokaż cały skrypt bo z Twojego opisu nic nie wiadomo
bor1904
myśle że nie ma potrzeby wrzucać 200 LOK skryptu.

w kontrolerze jest dosłownie

$amortyzacja=$_POST['amortyzacja'];

i zmienna amortyzacja jest wysyłana do widoku (formularza).


-------


Naprowadziłeś mnie ... (integer)$amienna pomogło


dzieki
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.