gpt4 book ai didi

php - 更新脚本中所需的 ID 未存储(甚至未看到!?)

转载 作者:行者123 更新时间:2023-11-29 15:04:28 25 4
gpt4 key购买 nike

此函数运行需要 3 个表(查询和 PHP)...作者、书籍和用户。

一个作者可以拥有很多本书,一个用户可以拥有很多本书 - 就是这样。

当管理员用户选择更新一本书时,他们会看到一个表单,显示字段中的当前数据,非常简单......但是有一个棘手的部分,管理员用户可以更改一本书的作者(以防他们犯错误)并更改与该书关联的用户。

当我选择更新单本书信息时,我没有获得任何author_id 或user_id 值。这意味着当用户更新图书信息时,与用户和作者的关联将被完全废弃(之前有关联)...我不明白为什么会发生这种情况,因为我可以清楚地看到用户的 ID 和源代码中我的选项值的作者(这是因为它们位于选择下拉列表中)。以下是我检索用户 ID 的 SQL 语句:

SELECT user_id, name FROM users

然后我有我的选择选项,它会显示系统中的所有用户:

<label>This book belongs to:</label> <select name="name" id="name">
<option value="<?php echo $row['user_id']?>" SELECTED><?php echo $row['name']?> - Current</option>

<?php
while($row = mysql_fetch_array($result))
{ ?> <option value="<?php echo $row['user_id']; if (isset($_POST['user_id']));?>"><?php echo $row['name']?></option>
<?php } ?>

在呈现的 HTML 表单中,我可以选择用户(按名称),并且在源代码中我可以看到与用户名称匹配的 ID(值)。

最后,在执行更新的脚本中,我有以下内容:

$book_id = $_POST['book_id'];
$bookname = $_POST['bookname'];
$booklevel = $_POST['booklevel'];

$author_id = $_POST['author_id'];
$user_id = $_POST['user_id'];


$sql = "UPDATE books SET bookname= '".$bookname."', booklevel= '".$booklevel."', author_id='".$author_id."', user_id= '".$user_id."' WHERE book_id = ".$book_id;

此查询的结果没有返回author_id或user_id的值...显然,在这个问题中,我已经给出了用户内容的信息(显示了HTML),但我猜我有作者也有同样的问题...我怎样才能将这些 ID 传递给脚本以便可以确认更改!

最佳答案

看起来好像用户 ID 是通过表单发布到名称为“name”的元素中的,因此您需要在 PHP 中读取它:

$user_id = $_POST['name'];

作者 ID 和其他变量似乎根本没有在表单中指定,因此 PHP 将为您提供空值。

如果您在错误报告中打开通知,那么 PHP 会告诉您是否尝试访问未声明的数组元素。

关于php - 更新脚本中所需的 ID 未存储(甚至未看到!?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2473740/

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