Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Przekazanie kilku wartości checkbox metodą GET
Flanker
post
Post #1





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 10.06.2007
Skąd: Rzeszów

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


Witam serdecznie

Posiadam listę checkbox pobieraną z bazy danych (a więc nie statyczną) i chciałbym przekazać value wybranych checkboxów metodą GET. Niestety skrypt robi to w ten sposób:
skrypt.php?checkbox=1&checkbox=2&checkbox=3

Przez to GET tak naprawdę przekazuje tylko ostatni zaznaczony checkbox. Czy jest możliwość ustawienia, aby przesyłać te informacje np. w postaci:
skrypt.php?checkbox=1,2,3

Ma to być wyszukiwarka dlatego chcę to zrobić na GETcie, jednak jeśli nie ma takiej możliwość skonstruuję to za pomocą POSTa.

Dziękuję i pozdrawiam
Go to the top of the page
+Quote Post
fander
post
Post #2





Grupa: Zarejestrowani
Postów: 231
Pomógł: 22
Dołączył: 6.10.2008

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


pokaż skrypt generujący checkbox-y
Go to the top of the page
+Quote Post
Flanker
post
Post #3





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 10.06.2007
Skąd: Rzeszów

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


  1. <?php while ($poszukiwanie=mysql_fetch_array($poszukiwania))
  2. {
  3. echo "<p><input type='checkbox' name='poszukiwania' value='".$poszukiwanie['id_poszukiwania']."' />".$poszukiwanie['nazwa_poszukiwania']."</p>";
  4. } ?>

Standardowa lista.

Ten post edytował Flanker 29.07.2010, 12:36:51
Go to the top of the page
+Quote Post
krispak
post
Post #4





Grupa: Zarejestrowani
Postów: 250
Pomógł: 55
Dołączył: 27.08.2008

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


A jakbyś checkboxy numerowal, np checkbox1, checkox2.. A pozniej sprawdzal z geta jakie masz zmienne

albo

ustaw dla checkboxow name="poszukiwania[]" i bedziesz mial jako tablice

i wynik bedzie
  1. (
  2. [0] => 1
  3. [1] => 2
  4. )


Ten post edytował krispak 29.07.2010, 12:48:55
Go to the top of the page
+Quote Post
Flanker
post
Post #5





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 10.06.2007
Skąd: Rzeszów

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


Zastanawiałem się nad takim rozwiązaniem, jednak oprócz tej listy jest jeszcze parę innych inputów i druga taka lista.
Przy zaznaczonych np. 20 elementach na listach link byłby niesamowicie długi.

Próbowałem jako tablicę, niestety GET zachowuje się w inny sposób:
skrypt.php?poszukiwania[]=2&poszukiwania[]=3&poszukiwania[]=4

Edycja:
Mimo wszystko wrzuca to do tablicy, denerwujący jest jedynie ten generowany bardzo długi adres.

Ma ktoś jeszcze jakiś pomysł jak w inny sposób rozwiązać ten problem?

Ten post edytował Flanker 29.07.2010, 13:02:15
Go to the top of the page
+Quote Post
erix
post
Post #6





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Bez JS - zapomnij.
Go to the top of the page
+Quote Post
Flanker
post
Post #7





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 10.06.2007
Skąd: Rzeszów

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


A gdybym chciał to zrobić z JavaScriptem, czy mój tok rozumowania jest ok (dopiero poznaję JS):
Po wykonaniu akcji (np. kliknięciu szukaj) JavaScriptem pobieram wyniki, kształtuję adres ze wszystkimi wprowadzonymi zmiennymi GET i przekierowuję na niego.
Jest to dobry sposób?
Go to the top of the page
+Quote Post
erix
post
Post #8





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Cytat
Po wykonaniu akcji (np. kliknięciu szukaj) JavaScriptem pobieram wyniki, kształtuję adres ze wszystkimi wprowadzonymi zmiennymi GET i przekierowuję na niego.

Tak.

Cytat
Jest to dobry sposób?

Nie - bez JS nie zadziała.
Go to the top of the page
+Quote Post
Flanker
post
Post #9





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 10.06.2007
Skąd: Rzeszów

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


Jeżeli komuś kiedykolwiek będzie potrzebne to gotowy kod JS do tego problemu w tym wątku.

Pozdrawiam i dzięki za pomoc
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 22.08.2025 - 17:29