在线工具 在线编程 在线白板 在线工具 在线编程 在线白板

php中 二维数组插入数据库

我现在得到一个二维数组。$aData 我利用 echo "<pre>"; print_r($aData); 打印出来是这个样子的

我现在想 将将这两条数据插入数据库。
$sql = "insert into users set username= XX ,password = XX email =XX";
我该如何做呢?
最新回答
白首不渝

2024-10-23 08:28:06

用foreach然后再构造sql插入语句:
$arr = ......;//这个是你要插入的数组
foreach( $arr as $info )
{
$sql = "insert into users set username= '" . $info['username'] . "',password = '" . $info['password'] . "' email ='" . $info['email'] . "'";
//这里是插入数据库的语句

}
蜜糖

2024-10-23 08:38:14

除了直接插入,还可以用pdo'(自己查看pdo操作)
(ps:差得被你忽悠了:正确sql语句:
insert into users() values();
update set username=xx from users where .....
)
  ...
  $sql=insert into users(username,password,email) values(?,?,?);
  $stmt=$dbh->prepare();
  foreach($aData as $v){
   $stmt->execute(array($v['username'],$v['password'],$v['email']));
  }
雨后初见彩虹

2024-10-23 08:01:20

用foreach遍历数组。。
追问
能详细点吗 ,我刚学这个 ,不太懂。
追答
'name1','password'=>'123456','email'=>'name1@sina.com');
$aData[1]=array('username'=>'name2','password'=>'123456','email'=>'name2@sina.com');

foreach($aData as $k=>$val){
$sql = "insert into users set username= ".$val['username']." ,password = ".$val['password']." email =".$val['email'];
echo $sql."";
}
?>

在循环内执行sql语句就行了。我写这个只是输出。
输出结果
insert into users set username= name1 ,password = 123456 email =name1@sina.com
insert into users set username= name2 ,password = 123456 email =name2@sina.com
咱ゝ么傀゛

2024-10-23 08:50:44

一般都是遍历后再插入