Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> lista i selected
a79rtur
post 8.11.2004, 11:39:38
Post #1





Grupa: Zarejestrowani
Postów: 331
Pomógł: 1
Dołączył: 23.05.2004
Skąd: Tarnów/Londyn

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


czesc
jest taka sytuacja ze mam liste wyboru (pojedynczy wybor) i po wybraniu jakiejs opcji costam sie dzieje, strona sie odswieza i lista jest zresetowana, a ja bym chciał zeby byla na tej wybranej opcji . rozwiazuje to w ten sposob ze lista opcji jest generowana przez php i przy kazdej opcji sprawdzany jest warunek, jesli jest on spelniony to opcja dostaje argument "selected". da sie to jakos prosciej rozwiazac ?niz takie sprawdzanie przy kazdej opcji czy spelnia warunek?


--------------------
php 5.1.2 & Apache 2.0.50 & MySQL 4.1.7 @ WinXP Pro
..:: GG 6449856 ::..
www.londyn.me.uk - ogłoszenia mieszkaniowe dla Londynu
Go to the top of the page
+Quote Post
Kuziu
post 8.11.2004, 12:28:40
Post #2





Grupa: Zarejestrowani
Postów: 743
Pomógł: 0
Dołączył: 11.11.2003
Skąd: Toruń

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


Ostatnio widze że za bardzo się przejmujesz szybkością wykonywania skryptów ... co Ci to przeszkadza że sprawdzi sobie kilka warunków ?

Na liście masz pewnie 5-10 opcji ... dla php'a to naprawde mały ułamek sekundy ... po co kombinować ... napewno jest wiele innych rzeczy, które można poprawić ...


--------------------
Słońce zachodzi ... kolejna noc nadchodzi ...
Go to the top of the page
+Quote Post
a79rtur
post 8.11.2004, 17:17:07
Post #3





Grupa: Zarejestrowani
Postów: 331
Pomógł: 1
Dołączył: 23.05.2004
Skąd: Tarnów/Londyn

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


no tak.
ale jak mam np liste miesiecy, jej nie wygeneruje w petli, tylko trza ta wszystkie warunki zapisac a to kod wydłuza sporo.
moza szablonami dalo by sie to jakos zrobić ? (uzywam pear i smarty sie ucze).
ze np. mam
<option value="1" {COS}>styczen</option>
... itd
to tam gdzie COS == value wstawić "selected" a gdzie indzij "" .
wie ktos jak to zrobic ?

Ten post edytował a79rtur 8.11.2004, 17:20:16


--------------------
php 5.1.2 & Apache 2.0.50 & MySQL 4.1.7 @ WinXP Pro
..:: GG 6449856 ::..
www.londyn.me.uk - ogłoszenia mieszkaniowe dla Londynu
Go to the top of the page
+Quote Post
sf
post 8.11.2004, 17:24:23
Post #4





Grupa: Zarejestrowani
Postów: 1 597
Pomógł: 30
Dołączył: 19.02.2003
Skąd: Tychy

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


Nie rozumiem Twojego problemu. Masz tablice z nazwami miesięcy. Pętla foreach. Warunek if ... selected ... else ... END


--------------------
Zapraszam na mój php blog, tworzenie stron.
Go to the top of the page
+Quote Post
a79rtur
post 8.11.2004, 17:25:53
Post #5





Grupa: Zarejestrowani
Postów: 331
Pomógł: 1
Dołączył: 23.05.2004
Skąd: Tarnów/Londyn

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


dzieki smile.gif


--------------------
php 5.1.2 & Apache 2.0.50 & MySQL 4.1.7 @ WinXP Pro
..:: GG 6449856 ::..
www.londyn.me.uk - ogłoszenia mieszkaniowe dla Londynu
Go to the top of the page
+Quote Post
rzseattle
post 8.11.2004, 18:00:56
Post #6





Grupa: Przyjaciele php.pl
Postów: 554
Pomógł: 0
Dołączył: 4.04.2002
Skąd: Tychy

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


Nie zawsze generowanie tablicy jest wygodne. Jesli sie dziala w samym szablonie i nie zasmieca kodu php zbednymi zmiennymi pojawia sie problem. Mozna kombinowac przez wprowadzenie (rejestracje w smarty) wlasnych funkcji np:

Kod
{select name="nazwa" values="1,2,3,4" labels="jeden,dwa,trzy,cztery" selected="1"}


Przy wielu danych jest to bardzo wygodna alternatywa do pisania tablic w php i potem tworzenia dodatkowej petli w smartym.


--------------------
"Real children don't go hoppity-skip unless they are on drugs."
Go to the top of the page
+Quote Post
ganimedes
post 12.11.2004, 12:45:52
Post #7





Grupa: Zarejestrowani
Postów: 66
Pomógł: 0
Dołączył: 1.04.2004

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


Prosty przykład, każdy rozumie.. analogicznie zrób swój smile.gif
  1. <?
  2. echo '<select name=\"id\">';
  3. $i=1;
  4. foreach ( $tablica as $key => $value )
  5. {
  6. if ( ($_POST['id'] == $i) or ($_GET['id'] == $i) )
  7.  {
  8.  echo '<option value=\".$i.'&#092;" selected>'.$value.'</option>';
  9.  } 
  10.  else
  11. {
  12.  echo '<option value=\".$i.'&#092;">'.$value.'</option>';
  13.  }
  14. $i++;
  15. }
  16. echo '</select>';
  17. ?>
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.08.2025 - 09:45