我希望单选按钮在所有分页中保持选中状态。为此
我已经在页面顶部的分页中收集了检查值。
但它效果不佳。
这段代码有什么问题?
这就是我在会话中获取单选按钮的选定值的方式
session_start();
if(isset($_POST['answer'])) {
$_SESSION['answer'] = $_POST['answer'];
}
这是我的php代码
<input type="radio" name="answerswer" value="yes" <?php if(isset($_SESSION['answer'])=='yes') {echo "checked"; }?> />
<input type="radio" name="answerswer" value="no" <?php if(isset($_SESSION['answer'])=='no') {echo "checked"; }?> />
<input type="radio" name="answerswer" value="yes1" <?php if(isset($_SESSION['answer'])=='yes1') {echo "checked"; }?> />
<input type="radio" name="answerswer" value="yes2" <?php if(isset($_SESSION['answer'])=='yes2') {echo "checked"; }?> />
它给了我错误(通知),就像答案是未定义的索引一样。
isset() 返回 true 或 false。 例如,您的 if 语句应该是:
if (isset($_SESSION['answer']) && $_SESSION['answer'] == 'yes')
尝试:
$values = array('yes', 'no', 'yes1', 'yes2');
foreach ( $values as $value ) {
$checked = isset($_SESSION['answer']) && $_SESSION['answer'] == $value ? 'checked="checked"' : '';
echo '<input type="radio" name="answerswer" value="' . $value . '" ' . $checked . '/>';
}
<input type="radio" name="answerswer" value="yes" <?php if($_SESSION['answer']=='yes') { ?> checked="checked" <?php }?> />
<input type="radio" name="answerswer" value="no" <?php if($_SESSION['answer']=='no') { ?> checked="checked" <?php }?> />
<input type="radio" name="answerswer" value="yes1" <?php if($_SESSION['answer']=='yes1') { ?> checked="checked" <?php }?> />
<input type="radio" name="answerswer" value="yes2" <?php if($_SESSION['answer']=='yes2') { ?> checked="checked" <?php }?> />
please use this html