【发布时间】:2014-12-06 12:59:29
【问题描述】:
我从 mysql 加载表格形式的数据。到现在为止还挺好。现在我制作了名为Update 的按钮,它打开了新页面,我可以在其中更新数据库中的单行。问题是,当我打开更新表单时,所有字段都是空的,如果我只想更新某些行并将其他字段留空,它们在数据库中也会更新为空白,这也是正常的。如何将信息填充到更新表单中?
这是我目前用来更新数据库中的一些记录的。
文件edit.php
error_reporting(E_ALL);
ini_set('display_errors', 1);
$pdo = Database::connect();
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$id = null;
if ( !empty($_GET['id']))
{
$id = $_REQUEST['id'];
}
if ( null==$id )
{
echo "null==$id";
}
// keep track post values
$name = $_POST['name'];
$image = $_POST['image'];
$image_big = $_POST['image_big'];
$description = $_POST['description'];
// update data
$pdo = Database::connect();
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$sql = "UPDATE food set name = ?, image = ?, image_big = ?, description = ? WHERE id = ?";
$q = $pdo->prepare($sql);
$q->execute(array($name, $image, $image_big, $description, $id));
Database::disconnect();
echo "<code>Updated!</code>";
// html form
如果我将例如 name 留空,并在我点击数据库中的 Update 按钮时将一些新数据放在所有其他字段中,name 将是空白的。
更新了html 表单的一部分
<!-- Text input-->
<div class="form-group">
<label for="meal_name">Име</label>
<input id="name" name="name" placeholder="Name" class="form-control" type="text">
</div>
其他字段相同..
【问题讨论】:
-
您能出示您的
html表格吗? -
如何调用更新页面,请提供相应的代码。
-
是同一个文件
action="" method="post"