PHP:将数组数据插入 MySQL 数据库
Posted
技术标签:
【中文标题】PHP:将数组数据插入 MySQL 数据库【英文标题】:PHP: Insert array data into MySQL Database 【发布时间】:2014-02-09 06:07:52 【问题描述】:我有以下名为 $people 的数组,这是我使用 print_r() 得到的输出:
数组(
[0] => "Zyzz","健身","21","男性"
[1] => "阿诺德","健美","23","男"
[2] => "杰夫","健身","19","男"
)
如何将这些值插入我的 mysql 数据库?
我有一个模糊的想法是:
$sql=" INSERT INTO Famous (name,type,age,sex) VALUES ($people)";
mysql_query($sql);
我怎样才能正确地做到这一点?
提前致谢
【问题讨论】:
你确定那是你的 pint_r()???? 【参考方案1】:如果你做了一个像这样的 foreach 循环会怎样
foreach($people as $person)
然后在您的查询中使用 $person 变量。 foreach 只会迭代您的数组。但是,您的数组的值似乎不正确。你确定那是确切的 print_r 吗?
【讨论】:
【参考方案2】:$sql = "INSERT INTO famous (name,type,age,sex) VALUES ";
foreach($people as $p)
$sql .= '('.$p.'),';
$sql = rtrim($sql,',');
mysql_query($sql);
【讨论】:
@Brett Zamir Thx 更正!!你能告诉我如何在这个编辑器中换行吗?我只是用 换行 嗨,我认为这不起作用,如果我回显 $sql 语句,我会得到 [...] VALUES ("Zyzz","fitness","21","Male")( “阿诺德”、“健美”、“23”、“男”)(“杰夫”、“健身”、“19”、“男”) 所以这不是一个有效的查询,记住每个“值”都在不同的列中 他们之间有一个逗号分隔符检查一下 值 ("Zyzz","fitness","21","Male"),("Arnold","bodybuilder","23","Male") ,("Jeff", "健身","19","男")【参考方案3】:只需执行以下操作:
foreach($people as &$person)
$person = '('.$person.')';
$sql = "INSERT INTO famous (name,type,age,sex) VALUES " . implode (",", $people);
mysql_query($sql);
【讨论】:
以上是关于PHP:将数组数据插入 MySQL 数据库的主要内容,如果未能解决你的问题,请参考以下文章
PHP PHP:使用数组将数据插入MySQL表[mysql] [php] [array] [INSERT]