【发布时间】:2017-04-22 19:03:15
【问题描述】:
我创建了一个包含三个输入字段的表单。保存表单后,我设法找出如何保留数据,但是当我离开页面并返回此表单时,字段又是空的。
这是我的代码:
<?php
if(isset($_POST['save_home_details'])) {
$home_title = escape_string($_POST['home_title']);
$home_desc = escape_string($_POST['home_desc']);
$home_keywords = escape_string($_POST['home_keywords']);
$query = "INSERT INTO settings(home_title, home_desc, home_keywords) ";
$query .= "VALUES('{$home_title}', '{$home_desc}', '{$home_keywords}') ";
$home_details_query = mysqli_query($conn, $query);
confirm($home_details_query);
echo "<div class='alert alert-success'>Settings saved successfully!</div>";
}
?>
<form action="" method="post">
<div class="form-group">
<label for="home_title">Home title</label>
<input type="text" class="form-control" name="home_title" value="<?php if(isset($_POST['home_title'])) { echo htmlentities ($_POST['home_title']); }?>">
</div>
<div class="form-group">
<label for="home_title">Home description</label>
<input type="text" class="form-control" name="home_desc" value="<?php if(isset($_POST['home_desc'])) { echo htmlentities ($_POST['home_desc']); }?>">
</div>
<div class="form-group">
<label for="home_title">Home keywords</label>
<input type="text" class="form-control" name="home_keywords" value="<?php if(isset($_POST['home_keywords'])) { echo htmlentities ($_POST['home_keywords']); }?>">
</div>
<div class="form-group">
<input class="btn btn-primary" type="submit" name="save_home_details" value="Save settings">
</div>
</form>
基本上我想要的是:
- 能够为这些字段增加价值
- 保存值
- 每次返回此页面时保留字段中的值
- 如果我单击保存设置按钮,请更新值而不向数据库添加新记录。
我知道我尚未添加更新查询,但我可以在将值插入数据库的同一页面上执行此操作吗?
谢谢
【问题讨论】:
-
使用
Select查询从数据库中获取数据不要使用$_POST并显示来自选定查询结果的数据。 -
如果我这样做,我会得到一个未定义的变量错误。