У меня есть форма с флажками, которые используются для выбора данных из mysql. Я также хотел бы, чтобы флажки сохранялись, если пользователь сделал это. Кроме того, эти флажки генерируются из выбора mysql. Каждый пользователь имеет различные флажки в зависимости от их уровней разрешений и т.д.change checkbox checked via session variable
Так что я получил этот код работать:
<form method="post" id="someselect">
<?php
function checked() {
if (in_array("somestring", $_SESSION['specificvalue'])) {
return "checked";
};
}
$i = 0;
while ($row = $result->fetch_assoc()) {
echo "<input id='specificvalue' type='checkbox' " . checked() . " name='specificvalue[]' value='" . $row['specificvalue'] . "'>" . $row['longvalue'] . "<br>";
};
mysqli_close($con);
//$_SESSION['specificvalue']=implode("','",$specificvalue);
$_SESSION['specificvalue'] = $specificvalue;
?>
<input type="submit" value="Submit">
</p>
</form>
Он работает, создает определенный пользователь флажки и function checked()
также работает с вместо этого exeption that
in_array("somestring", $_SESSION['subunit'])
, я бы как использовать in_array($row['subunit'], $_SESSION['subunit'])
, который просто не работает. Я хочу, чтобы понять, почему или придумать лучшее решение. Суть этого заключалась бы в создании списка флажков и уже проверке ящиков, которые ранее были сохранены в переменной сеанса.
На данный момент этот рабочий код. Если у меня есть список флажков, и я устанавливаю флажок с specificvalue
«somestring», все флажки будут проверяться при создании формы флажка.
Я думаю, что смогу использовать jquery для этого, но google дает мне различные решения, которые нельзя использовать в моих. Я также не могу вручную записывать флажки, потому что их около 70, и они меняются во времени. Я хочу, чтобы они были автоматически заполнены при обновлении базы данных mysql.
нет. есть куча включений на этом, что id не включает в этот вопрос. Сессия и все переменные работают нормально. единственный вопрос в том, как правильно сохранить проверенные значения через каждую строку флажка, сгенерированную с циклом while. – Gusmar
сеанс уже запущен. – Gusmar
почти, а не checked = 'checked'. Я только что проверил. Кажется, что он работает, но точно не сохраняет все отмеченные флажки – Gusmar