大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
思路:
创新互联建站是一家集网站建设,泰和企业网站建设,泰和品牌网站建设,网站定制,泰和网站建设报价,网络营销,网络优化,泰和网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。
1、构建form表单,输出文本框,用textarea/textarea吧,input/内不能换行,页面效果也不好(php、html代码嵌套写的话,直接写就行,建议用smarty,php与模板分离,比较清晰)
2、提交内容,确定用什么method(post、get)
3、获取内容,$str=$_POST['name'](name为textarea的name值)
4、$arr=split ('\r\n', $str);按换行符分割字符串为数组
5、循环执行插入语句,$arr每一层都是一条数据
1W条数据量也不是特别大,那就直接读取,然后在foreach入库就可以了
如果数据量非常大的时候,那就分段读取,然后入库~
考虑到php超时,那就网页端打开,第一部分执行完,刷新页面,开始执行第二部分,依次进行...
当然,直接在命令行下执行也可以~
你这种方式数据入库的话,1000w条数据,要连接1000w次数据库的,性能肯定是差的,因为建立一次数据库连接是开销很大的操作
数据库的插入是支持多条的啊
insert into 表(字段) values (值),(值2),(值3)
这样就可以连接一次数据库,插入多条数据了,可以把1000w条数据分几组,这样连接数据库的次数会大大减少,性能自然就好了
把复选框的值作为参数提交,作为循环的次数
$s1 = $_POST['s1'];//获取样品数量
for($i = 1; $i=$s1; $i++){
$tmp = $_POST['smp'.$i]; //这里是对应循环中的文本框name属性
$sql = "insert into 表名(字段....) values('样品名',数量)";
mysql_query($sql,$conn);
}
这样写,能看明白么?
input的name用数组,比如:
tr
tdinput type="text" name="name1[]"/td
tdinput type="text" name="name2[]"/td
/tr
tr
tdinput type="text" name="name1[]"/td
tdinput type="text" name="name2[]"/td
/tr
tr
tdinput type="text" name="name1[]"/td
tdinput type="text" name="name2[]"/td
/tr
提交后$_POST['name1']、$_POST['name2']都会以数组的方式储存着3行tr的每个值,通过foreach可以把它们逐行添加进数据表
$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);