Оставьте флажок установленным после отправки

Как я могу оставить этот флажок после отправки и перезагрузки страницы? Если это было проверено пользователем.

В переменной $ checked мне не нужен in_array, но я не знаю, что мне нужно.

echo '<div class="sidebar_szuro_div">
<span class="sidebar_title"><i class="fa fa-caret-down" aria-hidden="true"></i> Akció</span>';
$gyartok = runsql_array("SELECT gyarto_id, gyarto_nev FROM gyarto WHERE gyarto_id in (SELECT DISTINCT termek_gyarto FROM termek WHERE termek_id IN (  SELECT   kat_kapcs_termek_id FROM  `termek_katgoria_kapcsolo` WHERE kat_kapcs_kategoria_id='$kat_id'  )) ORDER BY gyarto_nev ASC");
if(isset($_REQUEST["csak_akcios"]))
{
$default = $_REQUEST["csak_akcios"];
}
else
{
$default = array();
}
echo '<div class="filters_container">';

$termekdarab = runsql("SELECT COUNT(termek_id) AS counted FROM termek WHERE termek_status = 1 AND termek_akcio = 1
AND termek_id IN (  SELECT   kat_kapcs_termek_id FROM  `termek_katgoria_kapcsolo` WHERE kat_kapcs_kategoria_id='$kat_id'  )
");

//$checked = in_array($gy["gyarto_id"] , $default)?' checked ':''; ????
echo '<div class="checkbox padding_left_10 filter_div"><label><input type="checkbox"  name="csak_akcios" value="1">Csak az akciós termékek mutatása ('.$termekdarab["counted"].')'.'</label></div>';

echo '<div class="text-center"><button type="submit" name="filter_submit_btn" class="btn szures_btn">Mehet</button></div>';
echo '</div>';
echo '</div>';

0

Решение

Прежде всего, удалите следующее else блокировать, не делать $default массив, если флажок не установлен.

else
{
$default = array();
}

И заменить следующие две строки

//$checked = in_array($gy["gyarto_id"] ...
echo '<div class="checkbox padding_left_10 ...

с

$checked = (isset($default) && $default == '1') ? 'checked="checked"' : '';
echo '<div class="checkbox padding_left_10 filter_div">
<label>
<input type="checkbox"  name="csak_akcios" value="1" '.$checked.' />
Csak az akciós termékek mutatása ('.$termekdarab["counted"].')'.'
</label>
</div>';
1

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

что-то вроде этого:
(если вы используете POST в вашей форме)

<label><input type="checkbox" name="myName" value="myValue" <?php if(isset($_POST['myName'])) echo "checked='checked'"; ?> > This is checkbox</label>

$_POST['myName'] привязывается к name="myName",

1

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector