PHP数组循环插入数据库问题

如图所示:数组偶数键是城市ID,奇数键是城市名,怎么将其依次插入到数据库用。用了for循环不行。
就是表中有no列和city列,依次将[0] => 1100 [1] => 天津市 作为一条数据;[2] => 2210 [3] => 沈阳市 再作为一条数据。表述的不清楚,相信大家都懂。

<?php
$arr = array(
0 => 1100,
1 => '天津市',
2 => 2210,
3 => '沈阳市'
);
$sql = '';
foreach ($arr as $k => $v) {
if ($k % 2 == 0) {
$no = $v;
continue;
} else {
$city = $v;
}
echo "INSERT INTO tablename (no, city) VALUES ($no, $city)";
}
?>

结果:

INSERT INTO tablename (no, city) VALUES (1100, 天津市)

INSERT INTO tablename (no, city) VALUES (2210, 沈阳市)

sql语句已经输出的,你query下就行,按照自己的数据套吧.

上面那个回答运行不怎么对

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2016-02-10
$array = 你的数组;
 
foreach( $array as $key => $val ) { 
  $Sql = 'insert into 表名称( `no`, `city`)';
  if ( $key % 2 == 0 ) {
    $Sql .= 'values( ' .  $val . ', ';
  }  else {
    $Sql .= '\'' . $val . '\')';
    mysql_query( $Sql ) or print( mysql_error() . '<br />');
 }  
}

本回答被提问者采纳

php循环插入数据到mysql问题。。完成此问题小弟倾家荡产了
换句话说,一切操作以数组来循环的。那循环次数就是数组的长度;循环执行SQL语句,语句里的内容,是由循环索引决定;for($i : $shuzu){ sql=mysql_query("INSERT INTO test (aid,typeid,username,shuzu) Value('1','2','3',`shuzu[$i]`)");执行这个SQL语句;} ...

php将一个长array数组循环插入数据库
利用PHP对数组赋值时下标变量会自动递增的特点,可以很方便用循环将数据存入一个数组。例如:$arr[] = 'a'; 这条语句会将字符a存入数组变量$arr中,如果$arr不存在则会新建一个;若已存在,则将$arr数组的下标变量递增1后存入字符。也就是说,如果已有$arr[0]='a', 那么执行 $arr[] = 'b'...

PHP如何将下面数组遍历,插入数据库
有两个方法可供选择,一种是把数据存入csv文件,然后执行load data infile 还有一种就是类似于sql server里面的bulk insert,使用insert语句插入批量数据,结合PHP的implode函数,可以很简单的实现大批量数组数据的一次性插入。[php] view plaincopy statement = "INSERT INTO table (title, type, customer...

php foreach循环输入insert数据库
你这种方式数据入库的话,1000w条数据,要连接1000w次数据库的,性能肯定是差的,因为建立一次数据库连接是开销很大的操作 数据库的插入是支持多条的啊 insert into 表(字段) values (值),(值2),(值3)这样就可以连接一次数据库,插入多条数据了,可以把1000w条数据分几组,这样连接数据库的次数会大大...

php sql 循环插入数据库语句问题
<?php for($i=0;$<=100;$i++){ sql = 'INSERT INTO `***`.`sdb_omms_omproject` (`a`, `b`, `c`, `d`, `e`, `f`) VALUES ('1', '2', '3', '4', '5', '6), ('A', 'B', 'C', 'D', 'E', 'F');'mysql_query($sql );} ?> 这样循环就可以插入1...

php怎么操作才能把这个二维数组加进数据库里面
可以按照 ly4885806 的方法 序列化成字符串插入数据库,不过这个只能插入一个字段不循环如果你的数据是需要插入多个行和字段的话只能循环了$Array = Array ( [0] => Array ( [0] => 张三 [1] => 70 ) [1] => Array ( [0] => 李四 [1] => 80 ) [2] => Array ( [0] => ...

php中一个二维数组,怎么吧数组中的数据作为value插入到数据库某个表中...
首先,你数据库用的是什么?用什么连接的数据库?如果用values的形式插入语句只能用for反复执行(以mysql为例)for($i = 0; $i < 66; $i++){ mysql_query("insert into users (user_id,user_name) value( array[$i]['user_id'],array[$i]['name'])");} 或者一次性生成表然后插入...

php数组循环问题,请教
data=$sql->fetch(PDO::FETCH_ASSOC);读取出来的数组就不含字段名称,只有数据内容 如果是直接使用PHP的MYSQL联接,那么:row = mysql_fetch_array($result, MYSQL_ASSOC);你可以查看mysql_fetch_array的函数说明 通常情况是$row = mysql_fetch_array($result);这样读取,其实这里有一个默认参数MYSQL_...

php 数组循环 sql语句 以mysql_query 写入数据库 代码
explode()函数,用指定字符分割字符串,形成数组,然后foreach循环数组,这样得到的都是SQL一条语句

php循环给数据库的表格插入数据!!!
total,当前数组数量 示例1:在文章列表中常用到的循环 <!-- loop from=$rslist key=$key value=$value --> {func date Y-m-d $value.dateline}{$value.title} <!-- \/loop -->

相似回答