【问题标题】:display radio button value from sql on page load在页面加载时显示来自 sql 的单选按钮值
【发布时间】:2014-11-17 22:23:36
【问题描述】:

制作一个表单来编辑 sql 表,表单使用单选按钮,因此用户可以看到现有值,当页面加载时,我希望我的单选按钮根据数据库指示打开/关闭。有 2 个按钮,它们发送值 0 和 1。我目前正在使用 isset,但没有成功。有没有更好(正确)的方法来做到这一点?我的 php 正在处理文本字段,但没有选择收音机。

            <label>
              <input type="radio" name="transaction" value="0" <?php if (isset($transaction) && $transaction === '0' ) { echo 'checked="checked"';}?>/>
              Listings</label>
            <br />
            <label>
              <input type="radio" name="transaction" value="1" <?php if (isset($transaction) && $transaction === '1' ) { echo 'checked="checked"';}?>/>
              Transaction History</label>

【问题讨论】:

  • 既然您使用的是===,您确定$transaction 的值是一个字符串吗?
  • so 应该等于 0 或 1 使用 ===。 @alliterativeAlice,我很尴尬我没有在这里关注你
  • === 检查变量的类型,而不仅仅是它的值,尝试只使用==

标签: php sql forms radio-button


【解决方案1】:

$transaction 的值很可能是一个数字,而不是一个字符串。更改比较以检查数字,而不是字符串:

<input type="radio" name="transaction" value="0" <?php if (isset($transaction) && $transaction === 0 ) { echo 'checked';}?>/>
<input type="radio" name="transaction" value="1" <?php if (isset($transaction) && $transaction === 1 ) { echo 'checked';}?>/>

或者,使用弱相等 == 运算符只比较值,而不是类型:

<input type="radio" name="transaction" value="0" <?php if (isset($transaction) && $transaction == '0' ) { echo 'checked';}?>/>
<input type="radio" name="transaction" value="1" <?php if (isset($transaction) && $transaction == '1' ) { echo 'checked';}?>/>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-11-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-23
    • 1970-01-01
    • 2022-09-23
    • 1970-01-01
    相关资源
    最近更新 更多