我不确定之前是否曾经问过这个问题。
我有一个表单<input name="name" value=<?php echo $myName; ?>
我遇到的问题是:
如果用户存在,我正在检查数据库,如果是,那么这就是我的工作:
$ MYNAME = $ DB-&GT;字段[ '名称'];
所以此名称在此输出:<input name="name" value=<?php echo $myName; ?>,
然而,当我提交表格时,我也会对其进行验证,所以如果:
original name in db was: John,
new name after form submit is: John Adam.
但是因为我输出$ myName,所以它覆盖了它? 如何使用相同的变量名来回显输入?在这种情况下$ myName,下面没有这样做!
if($db->recordCount>0)
{
$myName=$db->fields['name'];
}
else
{
$myName=$_POST['name'];
}
<input name="name" value="<?php echo $myName; ?>">
答案 0 :(得分:0)
您能否只是切换if
声明的顺序?
$myName = '';
if (isset($_POST['name']) {
$myName = $_POST['name'];
} else {
$myName = $db->fields['name'];
}
...
<input name="name" value="<?php echo $myName; ?>">
如果没有看到代码的整体结构,就很难回答,看看逻辑出错的地方。