public function store_mobileOp() { Tpl::output('max_mb_sliders', self::MAX_MB_SLIDERS); $store_info = Model('store')->getStoreInfoByID($_SESSION['store_id']); // 页头背景图 $mb_title_img = $store_info['mb_title_img'] ? UPLOAD_SITE_URL . '/' . ATTACH_STORE . '/' . $store_info['mb_title_img'] : ''; // 轮播 $mbSliders = $this->getStoreMbSliders(); if (chksubmit()) { $update_array = array(); $upload = new UploadFile(); // mb_title_img if ($mb_title_img_del = !empty($_POST['mb_title_img_del'])) { $update_array['mb_title_img'] = ''; } if (!empty($_FILES['mb_title_img']['name'])) { $upload->set('default_dir', ATTACH_STORE); $upload->set('thumb_ext', ''); $upload->set('file_name', ''); $upload->set('ifremove', false); $result = $upload->upfile('mb_title_img'); if ($result) { $mb_title_img_del = true; $update_array['mb_title_img'] = $upload->file_name; } else { showDialog($upload->error); } } if ($mb_title_img_del && $mb_title_img && file_exists($mb_title_img)) { unlink($mb_title_img); } // mb_sliders $skuToValid = array(); foreach ((array) $_POST['mb_sliders_links'] as $k => $v) { if ($k < 1 || $k > self::MAX_MB_SLIDERS) { showDialog('参数错误'); } $type = (int) $_POST['mb_sliders_type'][$k]; switch ($type) { case 1: // 链接URL $v = (string) $v; if (!preg_match('#^https?://#', $v)) { $v = ''; } break; case 2: // 商品ID $v = (int) $v; if ($v < 1) { $v = ''; } else { $skuToValid[$k] = $v; } break; default: $type = 1; $v = ''; break; } $mbSliders[$k]['type'] = $type; $mbSliders[$k]['link'] = $v; } if ($skuToValid) { $validSkus = (array) Model()->table('goods')->field('goods_id')->where(array('goods_id' => array('in', $skuToValid), 'store_id' => $_SESSION['store_id']))->key('goods_id')->select(); foreach ($skuToValid as $k => $v) { if (!isset($validSkus[$v])) { $mbSliders[$k]['link'] = ''; } } } // sort for ($i = 0; $i < self::MAX_MB_SLIDERS; $i++) { $sortedMbSliders[$i + 1] = $mbSliders[$_POST['mb_sliders_sort'][$i]]; } $update_array['mb_sliders'] = serialize($sortedMbSliders); Model('store')->editStore($update_array, array('store_id' => $_SESSION['store_id'])); showDialog('保存成功', 'index.php?act=store_setting&op=store_mobile', 'succ'); } $mbSliderUrls = array(); foreach ($mbSliders as $v) { if ($v['img']) { $mbSliderUrls[] = UPLOAD_SITE_URL . DS . ATTACH_STORE . DS . $v['img']; } } Tpl::output('mb_title_img', $mb_title_img); Tpl::output('mbSliders', $mbSliders); Tpl::output('mbSliderUrls', $mbSliderUrls); $this->profile_menu('store_mobile'); Tpl::showPage('store_setting.store_mobile'); }