gpt4 book ai didi

php - 只需单击一个提交按钮即可将多行插入数据库

转载 作者:行者123 更新时间:2023-11-29 09:16:51 24 4
gpt4 key购买 nike

我遇到了一个小问题,希望你能帮我解决。

首先,我涉及的数据库表如下所示:

+---------------+--------------+------+-----+-------------------+----------------+
| Field | Type | Null | Key | Default | Extra |
+---------------+--------------+------+-----+-------------------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| KlubID | varchar(11) | NO | | 0 | |
| Medlemsnummer | varchar(11) | NO | | 0 | |
| KlubType | varchar(128) | NO | | | |
| Handling | varchar(128) | NO | | | |
| Tidspunkt | timestamp | NO | | CURRENT_TIMESTAMP | |
+---------------+--------------+------+-----+-------------------+----------------+

假设我的表格中有 X 个条目,其中“处理”等于 Y,我们将结果称为 P 。现在我想获取所有 P 并为每个 P 插入一行,其中“处理”的值现在将等于 Q

这里的问题是我想用一个按钮(提交)而不是多个表单进行插入。

预先非常感谢您的帮助。如果需要更清晰的说明,请随时询问更多信息。

/妮琪

编辑:为了更清楚

public static function find_todays_children() {
global $db;
$sql = "SELECT *
FROM (
SELECT *
FROM Handlinger
AS a
WHERE date(Tidspunkt) = curdate()
AND Tidspunkt = (
SELECT max(Tidspunkt)
FROM Handlinger
AS b
WHERE a.Medlemsnummer = b.Medlemsnummer
)
)
AS c
ORDER BY handling DESC, medlemsnummer";
return static::find_by_sql($sql);
}

上面的查询返回以下内容。

+------+--------+---------------+----------+----------+---------------------+
| id | KlubID | Medlemsnummer | KlubType | Handling | Tidspunkt |
+------+--------+---------------+----------+----------+---------------------+
| 5786 | 0 | 1 | FK | Kommet | 2010-10-06 13:48:06 |
| 5787 | 0 | 2 | FK | Kommet | 2010-10-06 13:48:10 |
| 5789 | 0 | 4 | FK | Kommet | 2010-10-06 13:48:16 |
| 5790 | 0 | 3 | FK | G?et | 2010-10-06 13:48:27 |
+------+--------+---------------+----------+----------+---------------------+

然后我希望能够插入 3 行,其中“处理”字段是另一个值。我可以使用 PHP 通过 HTML 表单来完成此操作,但我不知道如何仅通过单击一次来完成这一切...重要的是,不要在特定“Medlemsnummer”(user_id)的最新条目已经等于值“Gået”的情况下插入任何内容

我的表单如下所示:

...
if(isset($action->Handling) != "Kommet") {
$do_action = "Kommet";
} else {
$do_action = "Gået";
}
...

<section>
<form action="phineaslog_barn.php" method="post">
<label for="Status">Klub Navn: </label>
<input type="text" name="Medlemsnummer" value="<?php echo $child->Medlemsnummer; ?>" />
<input type="text" name="Handling" value="<?php echo $do_action; ?>" />
<input type="submit" name="submit" value="<?php echo $do_action; ?>" />
</form>
</section>

最佳答案

我对这个问题的理解:

  • 对于用户的最终条目的每一行,其中 Handling = kommet

    • 插入另一行,其中 Handling = gået, tidspunkt = now()

所以...结合两个世界的优点...

INSERT INTO tablename (KlubID,Medlemsnummer,KlubType,Handling,Tidspunkt)
SELECT KlubID,Medlemsnummer,KlubType,'Gået',NOW()
FROM Handlinger
AS a
WHERE date(Tidspunkt) = curdate()
AND Handling = 'Kommet'
AND Tidspunkt = (
SELECT max(Tidspunkt)
FROM Handlinger
AS b
WHERE a.Medlemsnummer = b.Medlemsnummer
)

关于php - 只需单击一个提交按钮即可将多行插入数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3866106/

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