如何根据php中的值选中或取消选中单选按钮?
How to check or uncheck the radio button according to value in php?
我卡在这个问题上了。
我有两个单选按钮。一个是 Buyer
,第二个是 Seller
。
<input type="radio" name="account_type" value="1" id="acc_buyer" checked="checked">Buyer
<input type="radio" name="account_type" value="2" id="acc_seller">Seller
买家单选按钮已被选中。
现在我正在做的是,我有下面的代码,如果 $account_type==2
那么我必须 select seller
单选按钮并取消选中买家。
我尝试了下面的代码
if(isset($_SESSION['error'])){
$error = $_SESSION['error'];
$account_type = $_SESSION['account_type'];
unset($_SESSION['account_type']);
unset($_SESSION['error']);
}
<input type="radio" name="account_type" value="1" id="acc_buyer" checked="checked"> Buyer
<input type="radio" name="account_type" value="2" id="acc_seller" <?php if(isset($account_type) && $account_type=='2') { ?> checked="checked" <?php }?>> Seller
这是添加了 empty()
检查的更正。
$checked = [];
$checked[0] = empty($account_type) || (isset($account_type) && $account_type == 1) ? 'checked' : '';
$checked[1] = isset($account_type) && $account_type == 2 ? 'checked' : '';
<input type="radio" name="account_type" value="1" id="acc_buyer" checked="<?php echo $checked[0] ?>">
<input type="radio" name="account_type" value="2" id="acc_seller" checked="<?php echo $checked[1] ?>">
<?php
if(isset($_SESSION['error'])){
$error = $_SESSION['error'];
$account_type = $_SESSION['account_type'];
unset($_SESSION['account_type']);
unset($_SESSION['error']);
}
?>
<input type="radio" name="account_type" value="1" id="acc_buyer" checked="checked">
<input type="radio" name="account_type" value="2" id="acc_seller" <?php if($account_type==2){echo 'checked="checked"';}?>>
我希望我不会重复别人的答案并且我的解决方案不是不必要的,但我使用了这个代码片段:
<?php
if(isset($_SESSION['error']))
{
$error = $_SESSION['error'];
$account_type = $_SESSION['account_type'];
unset($_SESSION['account_type']);
unset($_SESSION['error']);
}
$account_type_set = isset($account_type);
$buyer = $account_type_set ? ($account_type == 2 ? 0 : 1) : null;
$seller = $account_type_set ? !$buyer : null;
?>
<input type="radio" name="account_type" value="1" id="acc_buyer" <?php if($buyer) { ?> checked="checked" <?php }?>> Buyer
<input type="radio" name="account_type" value="2" id="acc_seller" <?php if($seller) { ?> checked="checked" <?php }?>> Seller
我找到了答案:我所做的是检查 $account_type
是否为空,然后添加检查。所以我正在检查买家。
我不知道这是不是最佳答案,但它解决了我的问题。
我试过了
if(isset($_SESSION['error'])){
$error = $_SESSION['error'];
$account_type = $_SESSION['account_type'];
unset($_SESSION['account_type']);
unset($_SESSION['error']);
}
<input type="radio" name="account_type" value="1" id="acc_buyer" <?php if(empty($account_type)){?> checked="checked" <?}?>>Buyer
<input type="radio" name="account_type" value="2" id="acc_seller" <?php if( isset($account_type) && $account_type=='2'){?> checked="checked" <?}?>> Seller
我卡在这个问题上了。
我有两个单选按钮。一个是 Buyer
,第二个是 Seller
。
<input type="radio" name="account_type" value="1" id="acc_buyer" checked="checked">Buyer
<input type="radio" name="account_type" value="2" id="acc_seller">Seller
买家单选按钮已被选中。
现在我正在做的是,我有下面的代码,如果 $account_type==2
那么我必须 select seller
单选按钮并取消选中买家。
我尝试了下面的代码
if(isset($_SESSION['error'])){
$error = $_SESSION['error'];
$account_type = $_SESSION['account_type'];
unset($_SESSION['account_type']);
unset($_SESSION['error']);
}
<input type="radio" name="account_type" value="1" id="acc_buyer" checked="checked"> Buyer
<input type="radio" name="account_type" value="2" id="acc_seller" <?php if(isset($account_type) && $account_type=='2') { ?> checked="checked" <?php }?>> Seller
这是添加了 empty()
检查的更正。
$checked = [];
$checked[0] = empty($account_type) || (isset($account_type) && $account_type == 1) ? 'checked' : '';
$checked[1] = isset($account_type) && $account_type == 2 ? 'checked' : '';
<input type="radio" name="account_type" value="1" id="acc_buyer" checked="<?php echo $checked[0] ?>">
<input type="radio" name="account_type" value="2" id="acc_seller" checked="<?php echo $checked[1] ?>">
<?php
if(isset($_SESSION['error'])){
$error = $_SESSION['error'];
$account_type = $_SESSION['account_type'];
unset($_SESSION['account_type']);
unset($_SESSION['error']);
}
?>
<input type="radio" name="account_type" value="1" id="acc_buyer" checked="checked">
<input type="radio" name="account_type" value="2" id="acc_seller" <?php if($account_type==2){echo 'checked="checked"';}?>>
我希望我不会重复别人的答案并且我的解决方案不是不必要的,但我使用了这个代码片段:
<?php
if(isset($_SESSION['error']))
{
$error = $_SESSION['error'];
$account_type = $_SESSION['account_type'];
unset($_SESSION['account_type']);
unset($_SESSION['error']);
}
$account_type_set = isset($account_type);
$buyer = $account_type_set ? ($account_type == 2 ? 0 : 1) : null;
$seller = $account_type_set ? !$buyer : null;
?>
<input type="radio" name="account_type" value="1" id="acc_buyer" <?php if($buyer) { ?> checked="checked" <?php }?>> Buyer
<input type="radio" name="account_type" value="2" id="acc_seller" <?php if($seller) { ?> checked="checked" <?php }?>> Seller
我找到了答案:我所做的是检查 $account_type
是否为空,然后添加检查。所以我正在检查买家。
我不知道这是不是最佳答案,但它解决了我的问题。
我试过了
if(isset($_SESSION['error'])){
$error = $_SESSION['error'];
$account_type = $_SESSION['account_type'];
unset($_SESSION['account_type']);
unset($_SESSION['error']);
}
<input type="radio" name="account_type" value="1" id="acc_buyer" <?php if(empty($account_type)){?> checked="checked" <?}?>>Buyer
<input type="radio" name="account_type" value="2" id="acc_seller" <?php if( isset($account_type) && $account_type=='2'){?> checked="checked" <?}?>> Seller