• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Zliczanie zaznaczonych checkboxów PHP

VPS Starter Arubacloud
–1 głos
984 wizyt
pytanie zadane 3 marca 2019 w PHP przez zerakot Obywatel (1,870 p.)
Witam,

Jak mogę zliczyć zaznaczone checkboxy na stronie (przesyłane formularzem metodą POST). Wiem, że są takie pytania w necie, ale nie znalazłem odpowiedzi na to.
1
komentarz 3 marca 2019 przez Tomek Sochacki Ekspert (227,490 p.)
ej no bez jaj... dopiero co 1 czy 2 dni temu dawałem komuś gotowca na ten sam problem... ludzie czy Wy naprawdę nie umiecie korzystać z wyszukiwarki?
komentarz 3 marca 2019 przez Tomek Sochacki Ekspert (227,490 p.)
proszę: https://forum.pasja-informatyki.pl/417412/obsluga-checkboxa-js i to widzę, że własnie Tobie dałem gotowca :)
komentarz 3 marca 2019 przez zerakot Obywatel (1,870 p.)

@Tomek Sochacki,
No właśnie widzę ;)

komentarz 3 marca 2019 przez zerakot Obywatel (1,870 p.)

@Tomek Sochacki,

Teraz potrzebuję takie, ale w PHP, a temtego używam

1 odpowiedź

+1 głos
odpowiedź 3 marca 2019 przez Velta Maniak (52,750 p.)
wybrane 3 marca 2019 przez Arkadiusz Waluk
 
Najlepsza

Nazwij kontrolki, jakbyś chciał określić konkretny element w tablicy:

<input type="checkbox" value="whatever" name="checkbox[]">

Później wystarczy, że z POST-a pobierzesz o takiej nazwie i utworzy Ci się tablica zaznaczonych checkboxów, które możesz policzyć.

komentarz 3 marca 2019 przez zerakot Obywatel (1,870 p.)
A czy name musi być checkbox[], a nie np. nazwa[]
komentarz 3 marca 2019 przez Velta Maniak (52,750 p.)
Jaka chcesz.
komentarz 3 marca 2019 przez zerakot Obywatel (1,870 p.)
Tylko musi mieć nawiasy kwadratowe?
komentarz 3 marca 2019 przez Velta Maniak (52,750 p.)
Tak – chyba, że wolisz po kolei sprawdzać, czy w ogóle taki element w przesłanym $_POST istnieje. ;p
komentarz 3 marca 2019 przez zerakot Obywatel (1,870 p.)

Mam takie coś w kodzie PHP: (przegladaj.php)

echo '<div class="produktwyszukany">'.
					"<div class='zdjecie'>"."<img src='".$row['zdjecie']."'/>"."</div>".
					"<div class='nazwa'>".$row['nazwa']."</div>"."<br />"."<br />".
					"<div class='cena'>".$row['cena'].
					"<div class='zl'>zł</div>"."</div>".
					"<input type='submit' name='opis' value='OPIS' onClick='
						document.getElementById(\"Wopis\").innerHTML = \"".$row['opis']."\"
						document.getElementById(\"Wnazwa\").innerHTML = \"".$row['nazwa']."\"
						document.getElementById(\"produkt\").value = \"".$row['nazwa']."\"
						var mail = document.getElementById(\"mail\");
						mail.style.display = \"block\"	
						var wyjasnienie = document.getElementById(\"wyjasnienie\");
						wyjasnienie.style.display = \"block\"	
					' />".
						"<input type='checkbox' name='kosz[]' class='kosz' onClick='kosz()' value='".$row['nazwa']."' />"."<label>Koszyk</label>".
						"<input type='submit' value='PODSUMUJ' action='podsumowanie.php'/>".
					"</div>";

Proszę zwrócić uwagę na linijkę 15

I kod PHP: (podsumowanie.php)

$ile = count($_POST['kosz[]']);
		echo $ile;

Wiem, że jest niepoprawnie napisany ten pierwszy kod, ale nie nim teraz się zajmujemy. I gdzie ja błąd zrobiłem? Dodam, że dane są wysyłane formularzem, ale on obejmyje cały skrypt, więc go nie ma tu.

komentarz 3 marca 2019 przez Velta Maniak (52,750 p.)

Poczytaj o HTML5. Psujesz sobie tylko czytelność.

Elementy pobierz jako całą tablicę:

$count = count($_POST["kosz"]);
komentarz 3 marca 2019 przez zerakot Obywatel (1,870 p.)
Dziękuję za pomoc. Działa!
komentarz 3 marca 2019 przez zerakot Obywatel (1,870 p.)

@Velta,

Ale teraz mam taki kod:

if(isset($_POST['kosz']))
	{
		$count = count($_POST["kosz"])-1;
		$i = 0;
		while($i <= $count)
		{
		$nazwa = $_POST['kosz'];
		echo $nazwa[0];
		$i++;
		}
	}

I chcę, aby ze wszystkich checkboxów pobierało wartości, więc w echo $nazwa[] chcę po kolei zrobić indexy produktów, ale jak do echo $nazwa[] w nawiasach wpiszę 1 to juz błąd pokazuje.

Podobne pytania

0 głosów
1 odpowiedź 267 wizyt
pytanie zadane 22 marca 2018 w JavaScript przez hiper007 Stary wyjadacz (11,270 p.)
0 głosów
2 odpowiedzi 1,328 wizyt
pytanie zadane 12 marca 2018 w JavaScript przez hiper007 Stary wyjadacz (11,270 p.)
+1 głos
1 odpowiedź 646 wizyt
pytanie zadane 1 października 2020 w JavaScript przez dimek72 Nowicjusz (180 p.)

93,025 zapytań

141,990 odpowiedzi

321,292 komentarzy

62,371 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Wprowadzenie do ITsec, tom 2

Można już zamawiać tom 2 książki "Wprowadzenie do bezpieczeństwa IT" - będzie to około 650 stron wiedzy o ITsec (17 rozdziałów, 14 autorów, kolorowy druk).

Planowana premiera: 30.09.2024, zaś planowana wysyłka nastąpi w drugim tygodniu października 2024.

Warto preorderować, tym bardziej, iż mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy dodatkowe 15% zniżki! Dziękujemy zaprzyjaźnionej ekipie Sekuraka za kod dla naszej Społeczności!

...