php 多维数组 插入mysql,如何使用PHP将数据数组插入MySQL

Currently I have an Array that looks like the following when output thru print_r();

Array

(

[0] => Array

(

[R_ID] => 32

[email] => a@a.com

[name] => Bob

)

[1] => Array

(

[R_ID] => 32

[email] => b@b.com

[name] => Dan

)

[2] => Array

(

[R_ID] => 32

[email] => c@c.com

[name] => Paul

)

[3] => Array

(

[R_ID] => 35

[email] => d@d.com

[name] => Mike

)

)

I would like to insert this data into one table with each element value belonging to its respective field.

Currently my php code looks like the following

if(is_array($EMailArr)){

foreach($EMailArr as $R_ID => $email => $name){

$sql = "INSERT INTO email_list (R_ID, EMAIL, NAME) values ('$R_ID', '$email', '$name')";

mysql_query($sql) or exit(mysql_error());

}

}

*Note : R_ID is NOT the primary key in this table.*

Can someone help me understand how I should approach this situation? Thank you for reading and your help!

Regards.

解决方案

I would avoid to do a query for each entry.

if(is_array($EMailArr)){

$sql = "INSERT INTO email_list (R_ID, EMAIL, NAME) values ";

$valuesArr = array();

foreach($EMailArr as $row){

$R_ID = (int) $row['R_ID'];

$email = mysql_real_escape_string( $row['email'] );

$name = mysql_real_escape_string( $row['name'] );

$valuesArr[] = "('$R_ID', '$email', '$name')";

}

$sql .= implode(',', $valuesArr);

mysql_query($sql) or exit(mysql_error());

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值