php - 调用时未出现在文本字段中的旧值
问题描述
我正在尝试调用要编辑的旧值。我错在哪一部分?
<?php
if (isset($_GET['edit'])) {
$id = $_GET['edit'];
$update = true;
$record = mysqli_query($db, "SELECT * FROM bookinfo WHERE BookNo='$BookNo'");
if (mysqli_num_rows($record) == 1 ) {
$n = mysqli_fetch_array($record);
$BookNo = $n['BookNo'];
$ISBN = $n['ISBN'];
$title = $n['title'];
$author = $n['author'];
$publisher = $n['publisher'];
$status = $n['status'];
$cost = $n['cost'];
}
}
?>
<a href="viewBook.php?edit=<?php echo $row['BookNo']; ?>" class="edit_btn" >Edit</a>
</td>
<?php
if (isset($_GET['edit'])) { ?>
<form method="post" action = "viewBook.php">
<input type="hidden" name="BookNo" value="<?php echo $BookNo; ?>">
<input type="text" name="ISBN" value="<?php echo $ISBN; ?>">
<input type="text" name="title" value="<?php echo $title; ?>">
<input type="text" name="author" value="<?php echo $author; ?>">
<input type="text" name="publisher" value="<?php echo $publisher; ?>">
<input type="text" name="status" value="<?php echo $status; ?>">
<input type="text" name="cost" value="<?php echo $cost; ?>">
<?php if ($update == true): ?>
<button class="btn" type="submit" name="update" style="background: #556B2F;" >update</button>
<?php else: ?>
<button class="btn" type="submit" name="save" >Save</button>
<?php endif ?>
<?php } ?>
</form>
到目前为止,它所做的是,当用户单击编辑按钮时,它只显示 6 个文本字段。我想通过做我所做的,它应该显示已经填写在文本框中的细节。
解决方案
当你这样做
$record = mysqli_query($db, "SELECT * FROM bookinfo WHERE BookNo='$BookNo'");
$BookNo 未定义。
也许你想做这样的事情:
$id = $_GET['edit'];
$update = true;
$record = mysqli_query($db, "SELECT * FROM bookinfo WHERE BookNo='$id'");
推荐阅读
- css - 我的 Wordpress CSS 版本缓存更新问题
- django - 创建一个接受变量的自定义导入语句,用于导入 django 模型
- python - Split() 未按预期工作 #SettingWithCopyWarning ,无法理解错误
- git - 如何在使用 gitversion 修复错误后自动增加补丁版本
- windows - 如何使用 nginx-fpm 在 Windows 10 上使用 DDEV 创建虚拟主机?
- sql - 查询以比较医院人口普查中缺少患者的日期
- javascript - 写在一个页面内的脚本会影响另一个页面
- amazon-web-services - 无法使用带有无服务器的 aws-sdk 将事件放入云监视日志流
- python - discord.py - 'list' 对象没有属性 'id'
- bash - 当您将数据输出到文件时,将文件拖放到 bash 脚本会导致“权限被拒绝”