先检查一下你的数据库 *** 作是否放在循环体里面。如果是在循环里面再检查一下你的表结构中各字段的约束是否有唯一。
你这样的循环插入库效率不高,可以把 values拼接起来,然后一次性插入。
你是想读取内容中不包含数据库字段名,而只有字段数据 如果是这样的话 你需要在数据库读取函数里加上相应的参数 不知道你使用的是什么数据库,还有联接方式 如果是Mysql,那么你需要在fetch时加上FETCH_ASSOC参数 具体的还得看你是使用的哪种联接方式,如果是用PDO联接的MYSQL那么就是这样: $data=$sql->fetch(PDO::FETCH_ASSOC); 读取出来的数组就不含字段名称,只有数据内容 如果是直接使用PHP的MYSQL联接,那么: $row = mysql_fetch_array($result, MYSQL_ASSOC); 你可以查看mysql_fetch_array的函数说明 通常情况是$row = mysql_fetch_array($result);这样读取,其实这里有一个默认参数MYSQL_BOTH mysql_fetch_array -- 从结果集中取得一行作为关联数组,或数字数组,或二者兼有 mysql_fetch_array ( resource result [, int result_type] ) 返回根据从结果集取得的行生成的数组,如果没有更多行则返回 FALSE mysql_fetch_array() 中可选的第二个参数 result_type 是一个常量,可以接受以下值:MYSQL_ASSOC,MYSQL_NUM 和 MYSQL_BOTH。本特性是 PHP 307 起新加的。本参数的默认值是 MYSQL_BOTH。 如果用了 MYSQL_BOTH,将得到一个同时包含关联和数字索引的数组。用 MYSQL_ASSOC 只得到关联索引(如同 mysql_fetch_assoc() 那样),用 MYSQL_NUM 只得到数字索引(如同 mysql_fetch_row() 那样)。
有三个问题
1字符串 $s 不要用双引号,否侧 $name php会将$name看成一个变量而无法 用 $$$ 分割字符串
2$i<count($pl)-1 两个for循环处将 -1去掉,,这样的,$i<count($pl) ,这样的
3第二个for循环不需要。否则会产生9条sql语句
以上就是关于php 怎么将多个数据循环插入到数据库一行一条全部的内容,包括:php 怎么将多个数据循环插入到数据库一行一条、PHP数组循环入库请教、PHP怎么循环输出N组数组,并将每个数组分别写入数据库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)