重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
你还是用循环吧。
环江网站建设公司创新互联公司,环江网站设计制作,有大型网站制作公司丰富经验。已为环江近千家提供企业网站建设服务。企业网站搭建\成都外贸网站制作要多少钱,请找那个售后服务好的环江做网站的公司定做!
$arr=explode("|||",$reply);
$query="insert
into
{$cfg_dbprefix}askanswer
(askid,
ifanswer,
tid,
tid2,
uid,
username,
anonymous,
userip,
brief,
dateline,
content,
ifcheck)
";
//循环构造sql语句
foreach($arr
as
$v)
{
$sql.=",values('$askid',
'1',
'$tid',
'$tid2',
'$uid',
'$username',
'$anonymous',
'$userip',
'$brief',
'$timestamp',
'$v',
'0')";
}
//去掉第一个‘,’号
$sql=$query.substr($sql,1);
//插入语句
$dsql-ExecuteNoneQuery($sql);
到这就可以了。
你这种方式数据入库的话,1000w条数据,要连接1000w次数据库的,性能肯定是差的,因为建立一次数据库连接是开销很大的操作
数据库的插入是支持多条的啊
insert into 表(字段) values (值),(值2),(值3)
这样就可以连接一次数据库,插入多条数据了,可以把1000w条数据分几组,这样连接数据库的次数会大大减少,性能自然就好了
$value = '';
$query_num = 5; //插入数量
for($i=1;$i=$query_num;$i++){
$value .= "('25','1')";
}
//mysql insert有插入多条语法,拼接sql语句,table_name表名
$sql = "insert into table_name (memid,online) values ".$value;
//执行,插入$query_num条数据
mysql_query($sql);
1W条数据量也不是特别大,那就直接读取,然后在foreach入库就可以了
如果数据量非常大的时候,那就分段读取,然后入库~
考虑到php超时,那就网页端打开,第一部分执行完,刷新页面,开始执行第二部分,依次进行...
当然,直接在命令行下执行也可以~
把复选框的值作为参数提交,作为循环的次数
$s1 = $_POST['s1'];//获取样品数量
for($i = 1; $i=$s1; $i++){
$tmp = $_POST['smp'.$i]; //这里是对应循环中的文本框name属性
$sql = "insert into 表名(字段....) values('样品名',数量)";
mysql_query($sql,$conn);
}
这样写,能看明白么?