带有php的复选框 - 语法错误,意外的'?'

时间:2016-05-03 12:05:59

标签: php html checkbox

我仍然非常认真地使用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']);
  }

我非常感谢你能得到的任何帮助。

1 个答案:

答案 0 :(得分:2)

您获得的错误是语法。

而不是

<?php if (in_array('JETVarnish 3D Evo', $chk)) ? 'checked' : ''; ?>

<?php if (in_array('JETVarnish 3D Evo', $chk)) { echo 'checked'; } ?>

我无法保证您机制的其余部分能够正常运作。