Php 从1个表单在数据库中插入多行
好的,我需要使用MySql从一个表单向数据库中插入多行,每行都是一个结果。我开始做这件事的原因如下:Php 从1个表单在数据库中插入多行,php,mysql,sql,forms,Php,Mysql,Sql,Forms,好的,我需要使用MySql从一个表单向数据库中插入多行,每行都是一个结果。我开始做这件事的原因如下: INSERT INTO results (1,2,3,4,5,6,7) VALUES (1,2,3,4,5,6,7), (8,9,10,11,12,13,14) 等等,我的问题是: 我不知道用户希望插入多少行结果(最多15行)。它们是实现同样结果的更实际的方法吗?还是按照我最初计划的方式做会更好?1°)使用预先准备好的语句(如Java): (对于安全代码,请始终使用prepared语句并避免生
INSERT INTO results (1,2,3,4,5,6,7) VALUES (1,2,3,4,5,6,7), (8,9,10,11,12,13,14)
等等,我的问题是:
我不知道用户希望插入多少行结果(最多15行)。它们是实现同样结果的更实际的方法吗?还是按照我最初计划的方式做会更好?1°)使用预先准备好的语句(如Java):
(对于安全代码,请始终使用prepared语句并避免生成SQL)
要理解bind_param
中的“iss”参数,请执行以下操作:
2°)生成批量插入:
你可以看看这篇文章并阅读我的answer@JustinIurman谢谢,读一下。为快速响应干杯!不客气。无论如何,我给你的链接是关于用一个查询插入数据的。否则,可以使用具有多个循环的循环inserts@JustinIurmanIm只插入一行结果,只是每行都有不同的信息需要插入到数据库中。但这肯定会帮我解决问题。非常感谢。请注意,在mysql中,一次最多只能插入1000条记录。
$stmt = $db->stmt_init();
$stmt->prepare("INSERT INTO foo_table (id, firstname, lastname) VALUES(?, ?, ?)");
foreach($myarray as $row)
{
$stmt->bind_param('iss', $row['id'], $row['firstname'], $row['lastname']);
$stmt->execute();
}
$stmt->close();