2016-05-13 6 views
0

ich diese Checkbox in meinem htmlCheckbox immer „on“ beim Senden

<input name="cb" class="cmn-toggle cmn-toggle-round" type="checkbox"> 

Was muss ich php verstanden, wie Checkbox arbeitete, war, dass, wenn „aktiviert“, wenn Sie die Eingabe isset dann wäre es „existieren “und wenn nicht‚geprüft‘nicht will, so habe ich dies:

if(isset($_REQUEST['cb'])){ 
    //do something 
}else{ 
    //do something else 
} 

Das Problem ist, dass, wenn das Formular sendet, es existieren immer, egal, ob kontrolliert oder nicht, ich don Ich weiß nicht, wie ich wirklich prüfen soll, was mache ich falsch?

+0

Veröffentlichen Sie Ihre vollständige HTML-Code !! – Saty

Antwort

2

isset() bestimmen, ob eine Variable existiert und nicht NULL. Also in Ihrem Fall, die $_REQUEST['cb'] immer existieren, so isset() wird wahr sein. Wenn Sie also isset() in Ihrer Bedingung haben, müssen Sie eine Überprüfung hinzufügen, wenn der Wert wahr oder falsch ist.

Sie benötigen eine Bedingung bearbeiten:

if($_REQUEST['cb']) { ... 
oben

oder

if($_REQUEST['cb'] == true){ ... 

und der beste Weg ist die Verwendung isset mit Scheck:

if(isset($_REQUEST['cb']) && $_REQUEST['cb'] == true) { ... 
+0

Verwenden von 'isset()' ist immer eine gute Idee – Drone

+0

@MiskateEorr ich stimme zu – pes502

+0

Das tat es wirklich für mich, vielen dank – elunap

1

können Sie prüfen, wie diese

if(isset($_REQUEST['cb']) && $_REQUEST['cb']){ 
Verwandte Themen