Я общался с этим около четырех часов и решил поделиться этим с вами.
Вы можете отправить форму, установив флажок, но странно, что при проверке отправки в php вы ожидаете, что форма будет установлена, когда вы установите или снимите флажок. Но это не соответствует действительности. Форма только устанавливается, когда вы на самом деле отметьте флажок, если вы снимете его, он не будет установлен. слово, установленное в конце типа ввода флажка, приведет к тому, что флажок будет отображаться, и, если ваше поле отмечено, оно должно отражать это, как в приведенном ниже примере. Когда он получает флажок, php обновляет состояние поля, которое приведет к исчезновению слова.
Вы HTML должен выглядеть следующим образом:
<form method='post' action='#'>
<input type='checkbox' name='checkbox' onChange='submit();'
<?php if($page->checkbox_state == 1) { echo 'checked' }; ?>>
</form>
и PHP:
if(isset($_POST['checkbox'])) {
// the checkbox has just been checked
// save the new state of the checkbox somewhere
$page->checkbox_state == 1;
} else {
// the checkbox has just been unchecked
// if you have another form ont the page which uses than you should
make sure that is not the one thats causing the page to handle in input
otherwise the submission of the other form will uncheck your checkbox
// so this this line is optional:
if(!isset($_POST['submit'])) {
$page->checkbox_state == 0;
}
}
Ого, как то просто !! –
Как добавить javascript для подтверждения? –