У меня есть и значение в моей базе данных. Это 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 для инициализации переменных перед их использованием 🙂