Установка флажка Bootstrap-Switch проверяется с помощью PHP или jQuery

Мне нужно установить состояние флажка с помощью загрузчика-переключателя на основе значений из базы данных MySQL.

Я пытаюсь сделать это с PHP, как это, но это не похоже на работу, код является выдержкой:

while ($row = $result->fetch_assoc()) {

$checkdevicestate = $row["devicestatus"];
if ($checkdevicestate == "false") {
$devstatus = "";
} else if ($checkdevicestate == "true") {
$devicestatus = "checked";
}

$devicecontent .= '<tr><td style="width:60%"><span data-icon="7" class="linea-icon linea-basic fa-fw"></span>'. $row["devicename"] .'</td><td style="width:100%"><input type="checkbox" id="' . $row["devicecode"].'" '.$devicestatus.' class="devicebtn"data-on-color="info" data-size="small"data-off-color="danger"></td></tr>';
}

Состояние проверки коммутатора кажется случайным и не основано на значениях, которые я получаю из БД.

1

Решение

Код выглядит нормально, я бы просто исправил оператор сравнения === быть уверенным в типе.

while ($row = $result->fetch_assoc()) {
$checkdevicestate = $row["devicestatus"];
if ($checkdevicestate === "false") {
$devstatus = "";
} else if ($checkdevicestate === "true") {
$devicestatus = "checked";
}

$devicecontent .= '<tr><td style="width:60%"><span data-icon="7" class="linea-icon linea-basic fa-fw"></span>'. $row["devicename"] .'</td><td style="width:100%"><input type="checkbox" id="' . $row["devicecode"].'" '.$devicestatus.' class="devicebtn"data-on-color="info" data-size="small"data-off-color="danger"></td></tr>';
}

Если у вас нет странного состояния в $row["devicestatus"] Вы можете даже просто использовать троичный оператор.

$devicestatus = ($checkdevicestate === "true") ? "checked='checked'" : '';
0

Другие решения

Других решений пока нет …