我是php和mysql的新手。我已经使用单选按钮来保存我的帐户记录的类型我可以成功插入数据但是当我尝试从sql获取该数据(无论是选择了类型S还是选择了类型T)时,我还无法更新它去做。我不知道如何从我的sql获取单选按钮的数据..请帮助
<form method="post" action="users-edit-action.php">
<input type="hidden" value="<?php echo $accountid; ?>" name="id" />
<label>Email/Username:</label><input type="text" name="email" value="<?php echo $email; ?>" /><br /><br />
<label>Password:</label><input type="password" name="password" value="<?php echo $password;?>" /><br /><br />
<label>First Name:</label><input type="text" name="firstname" value="<?php echo $firstname; ?>" /><br /><br />
<label>Last Name:</label><input type="text" name="lastname" value="<?php echo $lastname; ?>" /><br /><br />
<label>Type:</label><br />
<input type="radio" name="type" value="<?php echo $type; ?>" /> Student<br />
<input type="radio" name="type" value="<?php echo $type; ?>" /> Teacher<br />
<input type="submit" value="Edit" />
</form>
这是我从数据库中获取价值的方式..我确定我做错了,请帮我解决这个问题。
答案 0 :(得分:6)
您必须检查从数据库中获取的类型,并根据该类型将此属性添加到输入元素:checked="checked"
。所以整个选定的标签看起来像这样:
<input name="type" type="radio" checked="checked" value="the one PHP returned" />
另一个输入标记也会出现,但没有checked
属性。
您只需要对要放置属性的元素进行PHP检查。
整个部分:
<input type="radio" name="type" value="S" <?php if ($type == 'S') echo 'checked="checked"'; ?>" /> Student<br />
<input type="radio" name="type" value="T" <?php if ($type == 'T') echo 'checked="checked"'; ?>" /> Teacher<br />
答案 1 :(得分:0)
您的单选按钮的值是固定的,并且不依赖于数据库中的值,只是它是否被选中。
应该是这样的:
<input type="radio" name="type" value="S" <?php echo ($type == 'S') ? 'checked' : ''; ?> /> Student<br />
<input type="radio" name="type" value="T" <?php echo ($type == 'T') ? 'checked' : ''; ?> /> Teacher<br />