我仍然非常认真地使用PHP,而且我试图为我的复选框和收音机提供持久数据。我试图自己尝试这样做,但我觉得我可能会遗漏某些东西。我试图实现一个类似的解决方案,我发现here但无济于事。
编辑:我要问的是什么;是否有更好的方法来捕获复选框的持久数据,如果是这样,我将如何使用chk[]
进行处理。<这是我的问题而不是语法。
这是我拥有的;
PHP / HTML - (位于index.php)
<input type="checkbox" id="chk-1" class="ca" name="chk[]" value="JETvarnish 3D Evo"
<?php if (in_array('JETVarnish 3D Evo', $chk)) { echo 'checked'; } ?>
/>
<label for="chk-1">JETvarnish 3D Evo</label>
<br/>
PHP - (位于frmPost.php)
// set post data as array.
$_SESSION['post-data'] = $_POST;
// checkbox as array.
$selectedProjects = 'None';
if(isset($_POST['chk']) && is_array($_POST['chk']) && count($_POST['chk']) > 0){
$selectedProjects = implode(', ', $_POST['chk']);
}
我非常感谢你能得到的任何帮助。
答案 0 :(得分:2)
您获得的错误是语法。
而不是
<?php if (in_array('JETVarnish 3D Evo', $chk)) ? 'checked' : ''; ?>
做
<?php if (in_array('JETVarnish 3D Evo', $chk)) { echo 'checked'; } ?>
我无法保证您机制的其余部分能够正常运作。