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

Odbieranie danych z checkboxa i radio

0 głosów
245 wizyt
pytanie zadane 11 października 2017 w HTML i CSS przez adrian588 Początkujący (470 p.)
Witam.

Mam w html checkboxy. Jak odebrać dane w php z takiego formularza?

czy to przez name czy value? Próbuję i nie wychodzi:/...

Chcę tak aby np. po zaznaczeniu checkboxa odpowiednia zmienna w PHP przyjmowała jakaś wartość np. 2

a jeżeli nie zaznaczone np. 1

3 odpowiedzi

0 głosów
odpowiedź 11 października 2017 przez Malias Początkujący (300 p.)
Nazywasz tego checkboxa.

np:

<input type="checkbox" name="check"/>

Następnie w php tworzysz zmienną:

$_POST['check'];

I w sumie masz pobrane czy checkbox jest zaznaczony, czy nie :)
komentarz 12 października 2017 przez adrian588 Początkujący (470 p.)
A może problem jest z tym iż korzystam z ajax?

i Dane podane z checkboxa są przesyłane na tą samą stronę za pomocą skryptu:

<script>
function runAjax()
{
    var numer =  document.getElementById("rodzajobliczen").value;
    var numer =  document.getElementById("rodzajpretow").value;
    var numer =  document.getElementById("zakonczeniepreta").value;
    var numer =  document.getElementById("srednicaglowne").value;
    var numer =  document.getElementById("klasastalipretyglowne").value;
    var numer =  document.getElementById("warunkiprzyczepnosci").value;
 

 // pobieramy wartość inputa
  var xmlhttp = new XMLHttpRequest(); // tworzymy obiekt XMLHttpRequest

  // definiujemy funkcję callback dla zdarzenia onreadystatechange
  xmlhttp.onreadystatechange = function()
  {
    if(xmlhttp.readyState == 4 && xmlhttp.status == 200)
    {
      // jeśli otrzymamy odpowiedź, to wpisujemy ją do DIV-a o id=response
      document.getElementById("response").innerHTML = xmlhttp.responseText;
    }
  };

  // tworzymy żądanie i wysyłamy
      xmlhttp.open("POST", "wynikzbrojenieminimalne.php", true);
      xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
    
// tutaj należy wpisać wszelkie zdefiniowane zmienne !
    xmlhttp.send("rodzajobliczen="+ document.getElementById("rodzajobliczen").value +"&rodzajpretow="+ document.getElementById("rodzajpretow").value +"&zakonczeniepreta="+ document.getElementById("zakonczeniepreta").value +"&srednicaglowne="+ document.getElementById("srednicaglowne").value  +"&klasastalipretyglowne="+ document.getElementById("klasastalipretyglowne").value +"&warunkiprzyczepnosci="+ document.getElementById("warunkiprzyczepnosci").value);
}
</script>
komentarz 12 października 2017 przez Malias Początkujący (300 p.)

To może spróbuj bez deklaracji zmiennej przed ifem.

czyli tylko tak:

if(isset($_POST['warunkiprzyczepnosci']))
    {
        echo "Zaznaczono";
    }else{
        echo "Nie zaznaczono!";
    } 

 

komentarz 12 października 2017 przez adrian588 Początkujący (470 p.)

Powyższe działa tak :

jeżeli kod jest zgodny czyli:

if(isset($_POST['warunkiprzyczepnosci']))
    {
        echo "Zaznaczono";
    }else{
        echo "Nie zaznaczono!";
    }

a jeżeli zmienię go na :

if(isset($_POST['XXXXXX]))
    {
        echo "Zaznaczono";
    }else{
        echo "Nie zaznaczono!";
    }

wyświetla iż nie działa.

Ale nie ważne czy checkbox jest zaznaczony czy też nie..

kurcze niby taka prosta rzecz jak odebranie danych a tu taki problem:/

 

komentarz 12 października 2017 przez Malias Początkujący (300 p.)
Możliwe, że AJAX coś tam psuje, ale niestety z tym już nie pomogę.
komentarz 12 października 2017 przez adrian588 Początkujący (470 p.)
Wyłączyłem ajax i dalej to samo:/

Ale dzięki wielkie za pomoc.. jak znajdę rozwiązanie wrzucę na forum:)
0 głosów
odpowiedź 11 października 2017 przez marcin99b Maniak (50,370 p.)

Jeśli nie wiesz jakiego typu są dane w zmiennej, sprawdź je print_r() lub var_dump()

Dowiesz sie w ten sposób dokładnie jak wygląda wnętrze zmiennej w różnych sytuacjach

0 głosów
odpowiedź 12 października 2017 przez sc4rface Mądrala (6,610 p.)

Jeśli dobrze rozumiem to co chcesz osiągnąć, to kombinujesz jak koń pod górkę.

Jak mniemam, chcesz wyświetlić jakiś tekst jeżeli checkbox jest zaznaczony, oraz jeżeli nie zaznaczony to inny. W założeniu checkbox oraz radio jest booleanem, stąd przyjmuje wartości true/false.

Na podstawie tego co zamieściłeś


<input type="checkbox" id="warunkiprzyczepnosci" name="warunkiprzyczepnosci" value="warunkiprzyczepnosci" checked>

W PHP odbierzesz to w sposób taki

$_POST['warunkiprzyczepnosci'];

A porównanie będzie wyglądać w ten sposób

if ($_POST['warunkiprzyczepnosci'] == true) {
	echo "Checkbox zaznaczony";
} else {
	echo "Checkbox odznaczony";
}

 

 

komentarz 12 października 2017 przez adrian588 Początkujący (470 p.)
Po wklejeniu Twojego kodu zawsze wyświetla iż zaznaczony.

Właśnie w tym mam problem stąd tyle kombinacji:/
komentarz 12 października 2017 przez sc4rface Mądrala (6,610 p.)
Spróbuj usunąć atrybut checked w HTML'u ;)
komentarz 12 października 2017 przez adrian588 Początkujący (470 p.)
Ciągle to samo.

Może przez to że dane przesyłam przez skrypt ajax i wyniki do tego samego pliku?
komentarz 12 października 2017 przez Malias Początkujący (300 p.)

Gdzieś coś musisz mieć co Ci koliduje z tym kodem cheeky

komentarz 12 października 2017 przez adrian588 Początkujący (470 p.)
Jeszcze takie pytanie aby nie zakłądać kolejnego wątku:

Czy w IFie można zadeklarować sprawdzenie dwóch wartości?

Tzn If ( a>2 i b>4 )

{}

? Czy jakoś inaczej trzeba to sprawdzać?
komentarz 12 października 2017 przez Malias Początkujący (300 p.)

Tak:

if(a > 2 && b>4)
{

}

 

komentarz 12 października 2017 przez adrian588 Początkujący (470 p.)
Super :) Dzięki:)
komentarz 19 października 2017 przez adrian588 Początkujący (470 p.)
Witam.

Nie zakładam kolejnego wątku tylko próbuję rozwiązać dalej sytuację z checkboxem.

Mianowicie zawsze wyświetla mi jako zaznaczony czyli zwraca wartość ON.

Nie ważne czy jest zaznaczony czy też nie.

Czy ktoś miał taki problem?

Może coś doradzić o co chodzi?

Podobne pytania

0 głosów
1 odpowiedź 89 wizyt
pytanie zadane 16 października 2016 w SQL, bazy danych przez Rafik Obywatel (1,830 p.)
0 głosów
0 odpowiedzi 30 wizyt
pytanie zadane 24 czerwca w PHP, Symfony, Zend przez Proth Nowicjusz (160 p.)
0 głosów
0 odpowiedzi 44 wizyt
Porady nie od parady
Wynikowy wygląd pytania, odpowiedzi czy komentarza, różni się od tego zaprezentowanego w edytorze postów. Stosuj więc funkcję Podgląd posta znajdującą się pod edytorem, aby upewnić się, czy na pewno ostateczny rezultat ci odpowiada.Podgląd posta

54,454 zapytań

98,348 odpowiedzi

202,301 komentarzy

26,749 pasjonatów

Przeglądających: 322
Pasjonatów: 21 Gości: 301

Motyw:

Akcja Pajacyk

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

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...