Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Zamiana przecinka na kropke
supler
post 16.11.2009, 14:15:19
Post #1





Grupa: Zarejestrowani
Postów: 41
Pomógł: 0
Dołączył: 6.10.2009

Ostrzeżenie: (0%)
-----


Ludzie jestem tepakiem wiec dajcie prosze gotowca sad.gif

Mam taki formularz:
<?php echo $form->create('butt', array('url' => '/add/'.$stopka['stopa']['id']));?>
<fieldset class="auto">
<label for="MinimumPrice">Minimalna</label><input class="disabled" name="data[minimum_price]" type="text" maxlength="9" value="" id="MinimumPrice" /><span class="unit">zł</span>
<label for="MaximumPrice">Maksymalna</label><input class="disabled" name="data[maximum_price]" type="text" maxlength="9" value="" id="MaximumPrice" /><span class="unit">zł</span>
<label for="Start">Ilosc</label><input class="disabled" name="data[bids]" type="text" maxlength="9" value="" id="start" /><span class="unit"></span>
</fieldset>
<span class="submit"><input type="submit" value="Set"/></span>

i to jest ok - wszystko dziala na wszystkie sposoby ale tylko gdy liczby wpisuje z kropka (np: 100.32) a jesli juz wpisze z przecinkiem (np 1000,23) to juz mi wyskakuje do poprawki formularz inny.

Czy da sie jakos zmienic przecinki na kropke przed wyslaniem formularza? Jesli nie do moze jakos inaczej?

uzylem str_replace i zmienialo ladnie ale skrypt jest tak napisany ze najpierw to jest sprawdzane a pozniej jak nie jest ok to sie wyswietla formularz i napisane co poprawic - dopiero wtedy wyswietlalo sie bez przecinka a z kropka ale to jest zbyt pozno bo inaczej nie powinno poakzac wogole formularza sad.gif

Prosze lopatologicznie napisac jak to zrobic mozna
Go to the top of the page
+Quote Post
skowron-line
post 16.11.2009, 14:20:16
Post #2





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

Ostrzeżenie: (0%)
-----


  1. <input type="text" name="abc" onkeyup="this.value=this.value.replace( /,/g,'.' );">

*pisane z palca

Ten post edytował skowron-line 16.11.2009, 14:22:06


--------------------
I'm so fast that last night I turned off the light switch in my hotel room and was in bed before the room was dark - Muhammad Ali.
Peg jeżeli chcesz uprawiać sex to dzieci muszą wyjść, a jeżeli chcesz żeby był dobry ty też musisz wyjść - Al Bundy.

QueryBuilder, Mootools.net, bbcradio1::MistaJam
http://www.phpbench.com/
Go to the top of the page
+Quote Post
Ges
post 16.11.2009, 14:22:36
Post #3





Grupa: Zarejestrowani
Postów: 61
Pomógł: 9
Dołączył: 22.02.2008

Ostrzeżenie: (0%)
-----


Proponuje zmienić logike w skrypcie, tak, żeby najpierw sprawdziło "," i "." (ewentualnie zamienić je aby były poprawne) a dopiero potem decydować o pokazaniu formularza.

Oczywiście możesz zastosować Javascripta, który może na onSubmitForm wyrzucić Ci błąd, bo go poprawić. Ale to jest mało bezpieczne rozwiązanie moim zdaniem (Javascripta można wyłączyć), więc i tak zapewniłbym walidacje po stronie odbierania formularza i tam to walidował jako podstawowy mechanizm rozwiązania Twojego problemu.

Najlepszym rozwiązaniem i najmniej uciążliwym dla użytowników będzie oczywiście podwójna walidacja i po Javascripcie i po stronie PHPa.
Go to the top of the page
+Quote Post
supler
post 16.11.2009, 14:54:53
Post #4





Grupa: Zarejestrowani
Postów: 41
Pomógł: 0
Dołączył: 6.10.2009

Ostrzeżenie: (0%)
-----


skowron a mozesz tak w skrócie opisac co to znaczy ten aly kod i co robi ktora jego czesc: onkeyup="this.value=this.value.replace( /,/g,'.' )

PS: dziala doskonale ale chcialbym na przyslzosc troche teorii poznac biggrin.gif
Go to the top of the page
+Quote Post
skowron-line
post 16.11.2009, 15:09:54
Post #5





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

Ostrzeżenie: (0%)
-----


Cytat(supler @ 16.11.2009, 14:54:53 ) *
skowron a mozesz tak w skrócie opisac co to znaczy ten aly kod i co robi ktora jego czesc


A proszę bardzo
- onkeyup to zdarzenie o którym poczytaj w googlu
- replace odpowiednik phpowskiego str_replace
- this.value oznacza wartość tego konkretnego elementu
- this.value = this.value + 'a' oznacza przypisanie elementowi wartosci wlasnej i dodanie do niej litery a, czyli w kodzie który Ci dałem do value przypisujesz value z inputa ale z zamienionymi przecinkami na kropki.
- g to global tak żeby zamieniał wszystkie przecinki na kropkę


--------------------
I'm so fast that last night I turned off the light switch in my hotel room and was in bed before the room was dark - Muhammad Ali.
Peg jeżeli chcesz uprawiać sex to dzieci muszą wyjść, a jeżeli chcesz żeby był dobry ty też musisz wyjść - Al Bundy.

QueryBuilder, Mootools.net, bbcradio1::MistaJam
http://www.phpbench.com/
Go to the top of the page
+Quote Post
supler
post 16.11.2009, 15:23:57
Post #6





Grupa: Zarejestrowani
Postów: 41
Pomógł: 0
Dołączył: 6.10.2009

Ostrzeżenie: (0%)
-----


echo $form->input('minimum_price',' array('label' => __('Minimum Price *', true)));

a czy tu tez mozna to zastosowac?

tot ez niby formularz ale nie wiem czy to php jest (chetnie sie dowiem co bo nawet nie wiem czego szukac zeby jakies podstawy zlapac)

Go to the top of the page
+Quote Post
skowron-line
post 16.11.2009, 15:29:27
Post #7





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

Ostrzeżenie: (0%)
-----


Cytat(supler @ 16.11.2009, 15:23:57 ) *
echo $form->input('minimum_price',' array('label' => __('Minimum Price *', true)));

a czy tu tez mozna to zastosowac?

tot ez niby formularz ale nie wiem czy to php jest (chetnie sie dowiem co bo nawet nie wiem czego szukac zeby jakies podstawy zlapac)

  1. $form

To obiekt jakiejś klasy do tworzenia formularzy ja niewiem jakiej może jak byś to napisał to było by prościej Ci pomóc ( lub ewentualnie jaki fw )


--------------------
I'm so fast that last night I turned off the light switch in my hotel room and was in bed before the room was dark - Muhammad Ali.
Peg jeżeli chcesz uprawiać sex to dzieci muszą wyjść, a jeżeli chcesz żeby był dobry ty też musisz wyjść - Al Bundy.

QueryBuilder, Mootools.net, bbcradio1::MistaJam
http://www.phpbench.com/
Go to the top of the page
+Quote Post
supler
post 16.11.2009, 16:07:46
Post #8





Grupa: Zarejestrowani
Postów: 41
Pomógł: 0
Dołączył: 6.10.2009

Ostrzeżenie: (0%)
-----


wlasnie problem w tym ze plikow jes tyle ze nie wiem w ktorym tej klasy szukac sad.gif

total commander tez nie pomaga
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.05.2025 - 06:33