source: branches/dev/html/admin/products/upload_rakuten.php @ 17

Revision 17, 5.0 KB checked in by uehara, 17 years ago (diff)
Line 
1<?php
2/*
3 * Copyright(c) 2000-2007 LOCKON CO.,LTD. All Rights Reserved.
4 *
5 * http://www.lockon.co.jp/
6 */
7require_once("../require.php");
8require_once("./upload_csv.inc");
9
10// 1¹Ô¤¢¤¿¤ê¤ÎºÇÂçʸ»ú¿ô
11define("CSV_LINE_MAX", 10000);
12
13class LC_Page {
14    var $arrSession;
15    var $arrCSVErr;
16    function LC_Page() {
17        $this->tpl_mainpage = 'products/upload_csv.tpl';
18        $this->tpl_subnavi = 'products/subnavi.tpl';
19        $this->tpl_mainno = 'products';
20        $this->tpl_subno = 'upload_rakuten';
21    }
22}
23
24$conn = new SC_DBConn();
25$objPage = new LC_Page();
26$objView = new SC_AdminView();
27$objSess = new SC_Session();
28
29// ǧ¾Ú²ÄÈݤÎȽÄê
30sfIsSuccess($objSess);
31
32// ¥Õ¥¡¥¤¥ë´ÉÍý¥¯¥é¥¹
33$objUpFile = new SC_UploadFile(IMAGE_TEMP_DIR, IMAGE_SAVE_DIR);
34// ¥Õ¥¡¥¤¥ë¾ðÊó¤Î½é´ü²½
35lfInitFile();
36// ¥Ñ¥é¥á¡¼¥¿´ÉÍý¥¯¥é¥¹
37$objFormParam = new SC_FormParam();
38// ¥Ñ¥é¥á¡¼¥¿¾ðÊó¤Î½é´ü²½
39lfInitParam();
40$colmax = $objFormParam->getCount();
41$objFormParam->setHtmlDispNameArray();
42$objPage->arrTitle = $objFormParam->getHtmlDispNameArray();
43
44switch($_POST['mode']) {
45case 'csv_upload':
46    $err = false;
47    // ¥¨¥é¡¼¥Á¥§¥Ã¥¯
48    $objPage->arrErr['csv_file'] = $objUpFile->makeTempFile('csv_file');
49   
50    if($objPage->arrErr['css_file'] == "") {
51        $objPage->arrErr = $objUpFile->checkEXISTS();
52    }
53   
54    if($objPage->arrErr['csv_file'] == "") {
55        // °ì»þ¥Õ¥¡¥¤¥ë̾¤Î¼èÆÀ
56        $filepath = $objUpFile->getTempFilePath('csv_file');
57        // ¥¨¥ó¥³¡¼¥É
58        $enc_filepath = sfEncodeFile($filepath, CHAR_CODE, CSV_TEMP_DIR);
59        $fp = fopen($enc_filepath, "r");
60        $line = 0;      // ¹Ô¿ô
61        $regist = 0;    // ÅÐÏ¿¿ô
62       
63        $objQuery = new SC_Query();
64        $objQuery->begin();
65       
66        while(!feof($fp) && !$err) {
67            $arrCSV = fgetcsv($fp, CSV_LINE_MAX);
68                       
69            // ¹Ô¥«¥¦¥ó¥È
70            $line++;
71           
72            if($line <= 1) {
73                continue;
74            }           
75                           
76            // ¹àÌÜ¿ô¥«¥¦¥ó¥È
77            $max = count($arrCSV);
78           
79            // ¹àÌÜ¿ô¤¬1°Ê²¼¤Î¾ì¹ç¤Ï̵»ë¤¹¤ë
80            if($max <= 1) {
81                continue;           
82            }
83           
84            // ¹àÌÜ¿ô¥Á¥§¥Ã¥¯
85            if($max != $colmax) {
86                $objPage->arrCSVErr['blank'] = "¢¨ ¹àÌÜ¿ô¤¬" . $max . "¸Ä¸¡½Ð¤µ¤ì¤Þ¤·¤¿¡£¹àÌÜ¿ô¤Ï" . $colmax . "¸Ä¤Ë¤Ê¤ê¤Þ¤¹¡£";
87                $err = true;
88            } else {
89                // ¥·¡¼¥±¥ó¥¹ÇÛÎó¤ò³ÊǼ¤¹¤ë¡£
90                $objFormParam->setParam($arrCSV, true);
91                $arrRet = $objFormParam->getHashArray();
92                $objFormParam->setParam($arrRet);
93                // ÆþÎÏÃͤÎÊÑ´¹
94                $objFormParam->convParam();
95                // <br>¤Ê¤·¤Ç¥¨¥é¡¼¼èÆÀ¤¹¤ë¡£
96                $objPage->arrCSVErr = lfCheckError();
97            }
98           
99            // ÆþÎÏ¥¨¥é¡¼¥Á¥§¥Ã¥¯
100            if(count($objPage->arrCSVErr) > 0) {
101                $objPage->tpl_errtitle = "¢£" . $line . "¹ÔÌܤǥ¨¥é¡¼¤¬È¯À¸¤·¤Þ¤·¤¿¡£";
102                $objPage->arrParam = $objFormParam->getHashArray();
103                $err = true;
104            }
105           
106            if(!$err) {
107                lfRegistProduct($objQuery);
108                $regist++;
109            }
110        }
111        fclose($fp);
112       
113        if(!$err) {
114            $objQuery->commit();
115            $objPage->tpl_oktitle = "¢£" . $regist . "·ï¤Î¥ì¥³¡¼¥É¤òÅÐÏ¿¤·¤Þ¤·¤¿¡£";
116            // ¾¦ÉÊ·ï¿ô¥«¥¦¥ó¥È´Ø¿ô¤Î¼Â¹Ô
117            sfCategory_Count($objQuery);
118        } else {
119            $objQuery->rollback();
120        }
121    }
122    break;
123default:
124    break;
125}
126
127$objView->assignobj($objPage);
128$objView->display(MAIN_FRAME);
129
130//--------------------------------------------------------------------------------------------------------------------------
131
132/* ¥Õ¥¡¥¤¥ë¾ðÊó¤Î½é´ü²½ */
133function lfInitFile() {
134    global $objUpFile;
135    $objUpFile->addFile("CSV¥Õ¥¡¥¤¥ë", 'csv_file', array('csv'), CSV_SIZE, true, 0, 0, false);
136}
137
138/* ¥Ñ¥é¥á¡¼¥¿¾ðÊó¤Î½é´ü²½ */
139function lfInitParam() {
140    global $objFormParam;
141   
142    $objFormParam->addParam("¥Õ¥é¥°(Âбþ¤Ê¤·)", "dummy1");
143    $objFormParam->addParam("¾¦ÉÊ̾", "name", STEXT_LEN, "KVa", array("EXIST_CHECK","SPTAB_CHECK","MAX_LENGTH_CHECK"));
144    $objFormParam->addParam("¥â¥Ð¥¤¥ëÍѾ¦ÉÊ̾(Âбþ¤Ê¤·)", "dummy2");
145    $objFormParam->addParam("¾¦ÉÊ¥³¡¼¥É", "product_code", STEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK"));
146    $objFormParam->addParam("¾¦ÉÊID(Âбþ¤Ê¤·)", "dummy3");
147    $objFormParam->addParam("¾¦ÉÊ¥Ú¡¼¥¸ID(Âбþ¤Ê¤·)", "dummy1");
148    $objFormParam->addParam("¼ÂÇä²Á³Ê", "price01", PRICE_LEN, "n", array("MAX_LENGTH_CHECK","NUM_CHECK"));
149    $objFormParam->addParam("ɽ¼¨²Á³Ê", "price02", PRICE_LEN, "n", array("EXIST_CHECK","MAX_LENGTH_CHECK","NUM_CHECK"));
150    $objFormParam->addParam("¾ÃÈñÀǥե饰(Âбþ¤Ê¤·)", "dummy4");
151    $objFormParam->addParam("Á÷ÎÁ(Âбþ¤Ê¤·)", "dummy5");
152    $objFormParam->addParam("¸ÄÊÌÁ÷ÎÁ(Âбþ¤Ê¤·)", "dummy6");
153    $objFormParam->addParam("Ãíʸ¥Ü¥¿¥ó(Âбþ¤Ê¤·)", "dummy7");
154    $objFormParam->addParam("»ñÎÁÀÁµá¥Ü¥¿¥ó(Âбþ¤Ê¤·)", "dummy8");
155    $objFormParam->addParam("Ì䤤¹ç¤ï¤»¥Ü¥¿¥ó(Âбþ¤Ê¤·)", "dummy9");
156    $objFormParam->addParam("¤ª´«¤á¥Ü¥¿¥ó(Âбþ¤Ê¤·)", "dummy10");
157    $objFormParam->addParam("¤Î¤·Âбþ¥Õ¥é¥°(Âбþ¤Ê¤·)", "dummy11");
158    $objFormParam->addParam("ºß¸Ë¿ô", "stock", INT_LEN, "n", array("MAX_LENGTH_CHECK","NUM_CHECK"));
159    $objFormParam->addParam("¹àÌÜÁªÂò»è(Âбþ¤Ê¤·)", "dummy12");
160    $objFormParam->addParam("´ü´Ö¸ÂÄêÈÎÇä(Âбþ¤Ê¤·)", "dummy13");
161    $objFormParam->addParam("ÀâÌÀʸ", "main_comment", LTEXT_LEN, "KVa", array("EXIST_CHECK","SPTAB_CHECK","MAX_LENGTH_CHECK"));
162    $objFormParam->addParam("¥â¥Ð¥¤¥ëÀâÌÀʸ(Âбþ¤Ê¤·)", "dummy14");
163    $objFormParam->addParam("²èÁü(Âбþ¤Ê¤·)", "dummy15");
164    $objFormParam->addParam("³ÚÅ·¥Ç¥£¥ì¥¯¥È¥êID(Âбþ¤Ê¤·)", "dummy16");
165    $objFormParam->addParam("¥â¥Ð¥¤¥ë(Âбþ¤Ê¤·)", "dummy17");
166}
167?>
Note: See TracBrowser for help on using the repository browser.