Php form проверяется, когда значение флажка в массиве mysql-запроса?

У меня есть и значение в моей базе данных. Это type вызова

У меня есть 2 флажка в моей форме html.

 <input name="barea[]" type="checkbox" id="barea[]" value="1" {$cbvar}/>Normal <input name="barea[]" type="checkbox" value="2" id="barea[]" {$cbvar}/>Gold 

И я храню данные как код ниже:

 $checkboxvar = implode(',', $_GET['barea']); 

Итак, мои данные таблицы:

 +-------+-----------+ | ID | type | +-------+-----------+ | 1 | 1 | | 2 | 1,2 | | 3 | 2 | | 4 | 1,2 | | 5 | 1,2 | | 6 | 1 | +-------------------+ 

Когда пользователь редактирует эти данные, как установить флажок, когда значение barea[] value существует mysql_query в mysql_query ?

Я пытаюсь сделать следующее кодирование в моем php-файле:

 $checkbox = explode(',',$row['type']); if (in_array($_GET['barea'],$checkbox)){ $cbvar = "checked=\"checked\""; }else{ $cbvar = ''; } 

В моем html

 <input name="barea[]" type="checkbox" id="barea[]" value="1" {$cbvar}/>Normal <input name="barea[]" type="checkbox" value="2" id="barea[]" {$cbvar}/>Gold 

Но это не сработает, я думаю, возможно, проблема в том, if (in_array($_GET['barea'],$checkbox)){ .

так как улучшить мое кодирование или любое другое хорошее предложение кодирования? Спасибо.

// html-страница ..

 <label>Select State</label><br> <?php $allgroup = mysql_query("SELECT * FROM state"); $flag=false; while($state_list = mysql_fetch_array($allgroup)) { $parr=explode(',',$er['state_id']); $size = sizeof($parr); for($i=0;$i<$size;$i++) { if($parr[$i]==$state_list['id']) { $flag=true; } } if($flag==true) { ?> <input type='checkbox' name='state[]' style="margin-left:5px;" value="<?php echo $state_list['id']; ?>" checked > <?php echo $state_list['name']; ?> <br> <?php $flag=false; } else { ?> <input type='checkbox' name='state[]' style="margin-left:5px;" value="<?php echo $state_list['id']; ?>" > <?php echo $state_list['name']; ?> <br> <?php } } ?> 

// php-код.

 <?php $states=""; $i=0; foreach( $_POST['state'] as $selected) { echo sizeof($_POST['state']); if($i==sizeof($_POST['state'])-1) { $states = $states.$selected; } else { $states = $states.$selected.","; } $i++; } ?> 

Не забудьте очистить $_POST , это хорошая практика кодирования, чтобы напрямую не получить доступ к суперглобальному POST.

+1 для инициализации переменных перед их использованием 🙂