我想在 php 中显示来自 mysql 的单选按钮值

Posted

技术标签:

【中文标题】我想在 php 中显示来自 mysql 的单选按钮值【英文标题】:i want to display the radio button value from mysql in php 【发布时间】:2019-06-03 04:11:47 【问题描述】:
<div class="form-group">
    <label>Gender</label>
    <label class="radio-inline"><input type="radio"   name="gender" value="male"<?php
        if ($row["gender"] == 'male') 
            echo"checked";
        
        ?>/>male</label>
    <label class="radio-inline"><input type="radio"  name="gender" value="female" <?php
        if ($row["gender"] == 'female') 
            echo "checked";
        
        ?>/>Female</label>
    <label class="radio-inline"><input type="radio" value="others" name="gender"
       <?php if ($row["gender"] == 'others') 
             echo "checked";
            ?>/>Others</label>
</div>

我想通过 php 从 mysql 获取单选按钮的值,它不显示结果

【问题讨论】:

你能分享你的代码吗? 可能是因为您在echo"checked"; 中缺少一个空格。查看页面的来源并确保value="male"checked 之间有空格。还有,这么多标签。 你能检查一下你在$row["gender"]得到了什么吗? 【参考方案1】:

你快到了,唯一的问题是“value”和“checked”属性之间的空格。您的代码将被翻译成:

<input type="radio" name="gender" value="male"checked/>

应该是:

<input type="radio" name="gender" value="male" checked />

你可以像这样使它更简单:

<div class="form-group">
    <label>Gender</label>
    <label class="radio-inline">
        <input type="radio" name="gender" value="male" <?=$row["gender"] == 'male' ? 'checked' : ''?>/>
        Male
    </label>
    <label class="radio-inline">
        <input type="radio"  name="gender" value="female" <?=$row["gender"] == 'female' ? 'checked' : ''?>/>
        Female
    </label>
    <label class="radio-inline">
        <input type="radio" value="others" name="gender" <?=$row["gender"] == 'others' ? 'checked' : ''?>/>
        Others
    </label>
</div>

【讨论】:

【参考方案2】:

这应该可行,而且看起来更整洁:

<?php
  function echoChecked($val)
    if($row["gender"] == $val)
      return 'checked = "checked"';
    
  
?>
<div class="form-group">
  <label>Gender</label>
  <label class="radio-inline">
    <input type="radio" name="gender" value="male" <?= echoChecked("male") ?> />
    Male
  </label>
  <label class="radio-inline">
    <input type="radio" name="gender" value="female" <?= echoChecked("female") ?> />
    Female
  </label>
  <label class="radio-inline">
    <input type="radio" name="gender" value="others" <?= echoChecked("others") ?> />
    Others
  </label>
</div>

【讨论】:

【参考方案3】:
 <h2>CRUD OPERATION</h2>
                <?php
                 $id=$_GET['id'];
                $query_update = "select * from crudtable where id=$id";
                $res_update = mysqli_query($conn, $query_update);
                ?>    
                <!--crud form start here-->
                <form action="" method="post" enctype="multipart/form-data">
                    <?php
                      $row_update = mysqli_fetch_array($res_update);
                      $id = $row_update['id'];
                      $name=$row_update['first_name'];
                      $gender=$row_update['gender'];
                    ?>
                    <div class="form-group">
                        <label for="name">First Name</label>
                        <input type="text" class="form-control" name="fname" value="<?php echo $row_update['first_name']; ?>">
                    </div>
                    <div class="form-group">
                        <label for="lastname">Last name</label>
                        <input type="text" class="form-control" name="lname" value ="<?php echo $row_update['last_name']; ?>">
                    </div>
                    <div class="form-group">
                        <label for="email">Email</label>
                        <input type="email" class="form-control" name="email" value ="<?php echo $row_update['email']; ?>">
                    </div>
                    <div class="form-group">
                        <label>Phone</label>
                        <input type="text" class="form-control" name="phone" value ="<?php echo $row_update['phone']; ?>">
                    </div>
                    <div class="form-group">
                        <label>Gender:</label>
                        <label class="radio-inline">
                            <input type="radio" name="gender"  <?php if($gender == 'male')
                                echo "checked";  ?> value= "male"/>
                            Male
                        </label>
                       <label class="radio-inline">
                            <input type="radio" name="gender"  <?php if($gender == 'female') 
                                echo "checked";
                                ?> value= "female"/>
                            Female
                        </label>
                       <label class="radio-inline">
                            <input type="radio" name="gender" value= "others" <?php if($gender == 'others')
                                echo "checked";
                            ?> />
                            Others
                       </label>

                    </div>
                    <div class="form-group">
                        <label>country</label>
                        <select class="form-control" name="country" >
                            <option>india</option>
                            <option>pakistan</option>
                            <option>australia</option>
                            <option>usa</option>
                            <option>Uk</option>
                            <option>nepal</option>
                            <option>australia</option>
                            <option>usa</option>
                        </select>
                    </div>
                    <div class="form-group">
                        <label>Hobbies</label>
                        <label class="checkbox-inline"><input  type="checkbox"  value="cricket" name="hobbies[]">Cricket</label>
                        <label class="checkbox-inline"><input  type="checkbox" value="singing"  name="hobbies[]">singing</label>
                        <label class="checkbox-inline"><input  type="checkbox"  value="dancing" name="hobbies[]">dancing</label>
                    </div>
                    <div class="form-group">
                        <textarea type="textarea" class="form-control" rows="5" name="message">
                        </textarea>
                    </div>
                    <div class="form-group">
                        <label>Image </label>
                        <input type="file" name="uploadfiles">
                    </div>

                    <div class="form-group">
                        <input tenter code hereype="submit" class="btn btn-default btn-primary form-control " value="submit" name="updatebtn">
                    </div>

                </form>


  [1]: https://i.stack.imgur.com/h5ekf.png

【讨论】:

以上是关于我想在 php 中显示来自 mysql 的单选按钮值的主要内容,如果未能解决你的问题,请参考以下文章

Zend 框架中的单选按钮分组

如何使用PHP [重复]显示提交的单选按钮值的计数

根据表格数据隐藏和显示单选按钮

在会话中存储单选按钮值 - PHP

如何控制单选按钮?从数据库、PHP、MYSQL 回显的数据

如何在单选按钮中集成 php 代码?