2017-08-16 9 views
0

私が提出してページをリロードした後、どうすればこのチェックボックスをチェックすることができますか?ユーザーがチェックした場合。投稿後にチェックボックスをオンにしたままにする

$ 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>'; 

答えて

1

まず、次のelseブロックを削除します。チェックボックスがオフの場合は、$defaultを配列にしないでください。

else 
{ 
    $default = array(); 
} 

そして

$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>'; 
+0

に次の2行

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

を交換おかげで、それは働きます! – Parkolo11

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"に結合します。

関連する問題