gpt4 book ai didi

php - 在表单中加载数据并更新数据库中的行

转载 作者:行者123 更新时间:2023-11-29 23:20:44 24 4
gpt4 key购买 nike

我从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>

其他字段相同..

最佳答案

在这种情况下,请尝试将类似的内容放在<input>上您检查字段是否为空并分配的字段。(未测试)

value="<?php echo !empty($name)?$name:'';?>"

所以你的表单字段将变得像

<!-- Text input-->
<div class="form-group">
<label for="name">Name</label>
<input value="<?php echo !empty($name)?$name:'';?>" id="name" name="name" placeholder="Name" class="form-control" type="text">
</div>

关于php - 在表单中加载数据并更新数据库中的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27331947/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com