我有一个包含字段名称和性别的表格。我得到数据,我尝试在输入字段中显示信息,它在输入文本名称上工作,但我想知道我是否可以根据从表中获得的数据检查单选按钮?
<?php
$sql="select * from empleo where id='$id';";
if (!mysqli_query($con,$sql)) {
die('Error: ' . mysqli_error($con));}
$cs=mysqli_query($con,$sql);
while($resul=mysqli_fetch_array($cs)){
$name=$resul[0];
$sexo=$resul[1];
}
?>
Name: <input type="text" value="<?php echo $name?>"/><br>
<label for="radio">Hombre</label>
<input type="radio" name="gender" id="radio" value="men">
<label for="radio" > Mujer</label>
<input type="radio" name="gender" id="radio" value="women">
答案 0 :(得分:0)
假设女性$result[1]
为W
,男性为M
(更改代码,如果不是):
<label for="radio">Hombre</label>
<input type="radio" name="gender" id="radio" value="men" <?php if($sexo=="M") echo "checked" ?>>
<label for="radio" > Mujer</label>
<input type="radio" name="gender" id="radio2" value="women" <?php if($sexo=="W") echo "checked" ?>>
答案 1 :(得分:0)
<label for="sexo-men">Hombre</label>
<input type="radio" name="gender" id="sexo-men" value="men" <?php $sexio === 'men' ? 'checked="checked"' : '' ?> />
<label for="sexo-women">Mujer</label>
<input type="radio" name="gender" id="sexo-women" value="women" <?php $sexio === 'women' ? 'checked="checked"' : '' ?> />
并且html的id
属性在页面上也必须是唯一的。
答案 2 :(得分:0)
使用checked
属性
<input name="awesome" type="checkbox" checked="checked" />
所以我们可以设置一个小功能来帮助我们输出:
function check_if($condition) {
if ($condition) {
echo 'checked="checked"';
}
}
您的脚本存在的问题是您只能从empleo
表格为您的第一条记录设置变量。
您最想要的是循环遍历所有记录:
// Lets get all the records from result and as an associative array
$employees = mysqli_fetch_all($cs, MYSQLI_ASSOC);
// this lets us use column names instead of indexes - much easier to read the code.
foreach($employees as $e) { ?>
<label for="name">Name<label><input name="name" type="text" value="<?php echo $e['name']?>"/>
<label for="gender">Hombre</label>
<input type="radio" name="gender" id="radio" value="male" <?php check_if($e['gender'] === 'male') ?>>
<label for="gender">Mujer</label>
<input type="radio" name="gender" id="radio" value="female" <?php check_if($e['gender'] === 'female') ?>>
<?php } // end foreach ?>
我假设empleo
表中的列gender
和name
。
您还应该注意,每个<input>
都应该有一个name
属性,每个<label>
都应该有一个for
属性与其标记的输入的name
匹配。