php循环输出数组两个数据集,求php多数组组合写入数据库方法

本帖最后由 wjm_hi 于 2013-10-25 15:55:24 编辑 我做一个成绩管理系统

//学科

$xk = array();

//年级

$nj = array();

//班级

$bj = array();

有三个数组,根据学科*年级*班级这个公式来生成多少条数据,然后写入到数据库。

例如:

count($xk)为2的时候,说明选择了2个学科

count($nj)为3的时候,说明选择了3个年级

count($bj)为7的时候,说明选择了7个年级

这时应该往数据库中插入2*3*7条数据,请问这个该怎么实现呢

回复讨论(解决方案)

php多循环,然后将数据下标循环最后写入数据库,PHP基础差,请求大侠们帮忙

晕,理解错了。、

该怎么理解呢

INSERT INTO `examinfo` (`nj`,`bj`,`xk`) VALUES ($nj ,$bj ,$xk),VALUES 后面要插入$xk*$nj*$bj这么多条,该怎么弄呢

到精华区找计算笛卡尔积的代码

写个笨方法。

$xk=Array ("1","2");

$nj=Array ("1","2","3");

$bj=Array ("1","2","3","4","5","6","7");

$arr = array();

for($i=0;$i for($j=0;$j for($k=0;$k $arr[] = array($xk[$i],$nj[$j],$bj[$k]);

}

}

}

foreach($arr as $row){

//插入数据

}

这个有这么复杂嘛,用FOR可以做吗

for($i=0;$i$xk=Array ("1","2");$nj=Array ("1","2","3");$bj=Array ("1","2","3","4","5","6","7");$arr = array();for($i=0;$i

写个笨方法。

$xk=Array ("1","2");

$nj=Array ("1","2","3");

$bj=Array ("1","2","3","4","5","6","7");

$arr = array();

for($i=0;$i for($j=0;$j for($k=0;$k $arr[] = array($xk[$i],$nj[$j],$bj[$k]);

}

}

}

foreach($arr as $row){

//插入数据

}

这个好像可行,foreach里面插入数据该怎么写SQL语句呢

$xk=Array ("1","2");$nj=Array ("1","2","3");$bj=Array ("1","2","3","4","5","6","7");$arr = array();for($i=0;$i能不能把 //插入数据 echo一下调用方法。

$xk=Array ("1","2");$nj=Array ("1","2","3");$bj=Array ("1","2","3","4","5","6","7");$arr = array();for($i=0;$i我要的就是这个效果,我要将INSERT INTO `examinfo` (`nj`,`bj`,`xk`) VALUES ($nj ,$bj ,$xk)放到//插入数据的位置,我该怎么写呢。

$xk=Array ("1","2");$nj=Array ("1","2","3");$bj=Array ("1","2","3","4","5","6","7");$arr = array();for($i=0;$i$xk=Array ("1","2");$nj=Array ("1","2","3");$bj=Array ("1","2","3","4","5","6","7");$arr = array();for($i=0;$i非常感谢,但这SQL语句能做点优化最好了,INSERT INTO `examinfo` (`nj`,`bj`,`xk`) VALUES ($nj ,$bj ,$xk)一直是这句在循环,如果做成INSERT INTO `examinfo` (`nj`,`bj`,`xk`) VALUES (1 ,1 ,1),(1 ,1 ,2),(1 ,1 ,3)这样的SQL语句的话就完美了。

晕咯。哥们,你想实现怎么不自己想想呢。不能指望别人什么都给你做好,别人只能给你思路啊。。

晕咯。哥们,你想实现怎么不自己想想呢。不能指望别人什么都给你做好,别人只能给你思路啊。。

嗯,有这个思路,我可以继续往下做了,谢谢,优化的事我有思路了,谢谢了

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值