Tpshop商城火车头采集插件
帮朋友搞了一个商城用的TPSHOP,不想一个一个商品的添加,原本Tpshop商城后台有个导入功能,可是还要收费,无奈就只有使用火车头一次性采集,没有仔细研究Tpshop商城于是乎自行写了一个插件,可以批量采集并直接更新入库,目前还存在一点无法购买的问题,没时间研究,先这样吧,以后有结果了再更新!
废话不多说直接上代码:
使用的是/application/home/controller 下的Api.php文件,在上面直接增加内容:
首先引入use app\admin\logic\GoodsLogic;
然后增加获取分类信息:
1 2 3 4 5 6 7 8 9 |
public function huocheclass(){ $GoodsLogic = new GoodsLogic(); $cat_list = $GoodsLogic->goods_cat_list(); echo "<select name='cat_id' id='cat_id' class='small form-control'>"; foreach($cat_list as $vo){ echo "<option value='$vo[id]'>$vo[name]</option>"; } echo '</select>'; } |
重点来了:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
/** * 火车头采集入库 */ public function huoche(){ $pass = input('pass/s'); foreach($_POST as $key=>$val) { $params[$key] = $val; } $params['goods_content'] = htmlspecialchars('<div style="color: #fff">'.$params['pageurl'].'</div>'.$params['goods_content']); $smallimgstr = $params['smallimg']; unset($params['pageurl'],$params['smallimg']); $goods_id = M('goods')->add($params); $goods_sn = "TP".str_pad($goods_id,7,"0",STR_PAD_LEFT); M('goods')->where(array('goods_id'=>$goods_id))->save(array('goods_sn'=>$goods_sn)); if($goods_id){ preg_match_all('#<img.*?src="([^"]*)"[^>]*>#i', $smallimgstr, $match); if($match[1]){ foreach($match[1] as $img){ $indata['goods_id'] = $goods_id; $indata['image_url'] = $img; M('goods_images')->add($indata); } } echo '成功了'; }else{ echo '失败'; } } |
本来是要判断密码的,这样才安全,只是处于某种情况,不进行判断了,直接入库!正事使用的情况下,请先设定密码,否则会存在安全隐患!