太阳。。。出现了Fatal error: Maximum execution time of 30 seconds ex
2016-07-07 15:17 来源:www.chinab4c.com 作者:ecshop专家
出现了Fatal error: Maximum execution time of 30 seconds exceeded 这样的情况,我把php.ini中的max_execution_time的值改为0还是不行,下面是我的sql语句; $g=$GLOBALS['ecs']->table('goods'); $r=$GLOBALS['ecs']->table('region'); $sql="SELECT $g.goods_id FROM".$g; $sql2="SELECT $r.region_id FROM".$r." where parent_id='1' and region_id!=33 and region_id!=34 and region_id!=35"; $res1=$GLOBALS['db']->getAll($sql); $res2=$GLOBALS['db']->getAll($sql2); foreach($res1 as $val) { foreach($res2 as $val2) { if($val2[region_id]=='11') { $sql3="INSERT".$GLOBALS['ecs']->table('goods_source')." (region_id,goods_id,goods_number)values(". $val2[region_id].",".$val[goods_id].","."100".")"; } else { $sql3="INSERT INTO".$GLOBALS['ecs']->table('goods_source')." (region_id,goods_id,goods_number)values(".$val2[region_id].",".$val[goods_id].","."0".")"; } $GLOBALS['db']->query($sql3); } } |
回答:
你这个SQL时间复杂度太高了。你可以简化啊。 |
没见过这问题。 |
要简化。。。。 |
试着修改下sql,我都看着迷茫,就看懂个IF判断。。foreach输出 |
怎么简化,我对mysql不是很好 |
哥,你知道region表有几条记录吗?不带你这样查询的啊。查询也就算了,再来一个foreach。foreach也就算了,还要来个insert。你知道这个是什么效率吗? |
最近更新
常用插件
- ecshop二次开发售后维修卡
插件介绍: 本插件是用于专门从事电子,信息,软件等售后服务关键比...
- ecshop选择下单时间插件
ecshop选择下单时间插件主要是根据不同的下单配送要求,在ecshop购物车...
- ecshop按分类筛选销售排行
ecshop按分类筛选销售排行...
- ecshop快递发货单打印商品
ecshop快递发货单打印商品信息,大家都知道ecshop快递单打印的时候,只能...
- ecshop供应商插件免费下载
ecshop供应商插件免费下载...
ecshop热门问答
ecshop热门资料
ecshop热线
ecshop背景颜色
ecshop何体统
ecshopVISA
ecshop河南郑州
ecshop运行
ecshop商品分类树
ecshop后台商品分类
ecshop下架商品列表
ecshop文件修改
ecshop积分购买金额
ecshophelphelphelp
ecshop002
ecshopRCPT
ecshop自由收缩
ecshopapmserv
ecshop网商
ecshop站点
ecshop大人
ecshopadmin目录
ecshop货号
ecshop求新
ecshop三五
ecshop咨询
ecshop什么东西
ecshop管理系统
ecshop虚拟空间
uchomesession
ecshop紫色
ecshop仿京东商城