1 | <?php |
---|
2 | /* |
---|
3 | * Copyright(c) 2000-2007 LOCKON CO.,LTD. All Rights Reserved. |
---|
4 | * |
---|
5 | * http://www.lockon.co.jp/ |
---|
6 | * |
---|
7 | * CSVÇÛ¿®µ¡Ç½¼ÂÁõ¤Î¤¿¤á¡¢¶¦ÄÌÉôʬ¤ò³°Éô¥Õ¥¡¥¤¥ë²½¤·¤Þ¤·¤¿¡£<br> |
---|
8 | * @author hirokazu_fukuda |
---|
9 | * @version 2005/12/27 |
---|
10 | */ |
---|
11 | |
---|
12 | |
---|
13 | //---- ¸¡º÷ÍѹàÌÜÇÛÎó |
---|
14 | $objPage->arrHtmlmail = array( "" => "ξÊý", 1 => "HTML", 2 => "TEXT" ); |
---|
15 | |
---|
16 | |
---|
17 | //---- ÇÛÎóÆâÍÆÀìÍѹàÌܤÎÇÛÎó |
---|
18 | $arrRegistColumn = array( |
---|
19 | array( "column" => "template_id", "convert" => "n" ) |
---|
20 | ,array( "column" => "mail_method", "convert" => "n" ) |
---|
21 | ,array( "column" => "send_year", "convert" => "n" ) |
---|
22 | ,array( "column" => "send_month", "convert" => "n" ) |
---|
23 | ,array( "column" => "send_day", "convert" => "n" ) |
---|
24 | ,array( "column" => "send_hour", "convert" => "n" ) |
---|
25 | ,array( "column" => "send_minutes", "convert" => "n" ) |
---|
26 | ,array( "column" => "subject", "convert" => "aKV" ) |
---|
27 | ,array( "column" => "body", "convert" => "KV" ) |
---|
28 | ); |
---|
29 | |
---|
30 | //---- ¥á¥ë¥Þ¥¬²ñ°÷¼ïÊÌ |
---|
31 | $arrCustomerType = array( |
---|
32 | 1 => "²ñ°÷", |
---|
33 | 2 => "Èó²ñ°÷", |
---|
34 | //3 => "CSVÅÐÏ¿" |
---|
35 | ); |
---|
36 | |
---|
37 | //---- ¸¡º÷¹àÌÜ |
---|
38 | $arrSearchColumn = array( |
---|
39 | array( "column" => "name", "convert" => "aKV"), |
---|
40 | array( "column" => "pref", "convert" => "n" ), |
---|
41 | array( "column" => "kana", "convert" => "CKV"), |
---|
42 | array( "column" => "sex", "convert" => "" ), |
---|
43 | array( "column" => "tel", "convert" => "n" ), |
---|
44 | array( "column" => "job", "convert" => "" ), |
---|
45 | array( "column" => "email", "convert" => "a" ), |
---|
46 | array( "column" => "htmlmail", "convert" => "n" ), |
---|
47 | array( "column" => "customer", "convert" => "" ), |
---|
48 | array( "column" => "buy_total_from", "convert" => "n" ), |
---|
49 | array( "column" => "buy_total_to", "convert" => "n" ), |
---|
50 | array( "column" => "buy_times_from", "convert" => "n" ), |
---|
51 | array( "column" => "buy_times_to", "convert" => "n" ), |
---|
52 | array( "column" => "birth_month", "convert" => "n" ), |
---|
53 | array( "column" => "b_start_year", "convert" => "n" ), |
---|
54 | array( "column" => "b_start_month", "convert" => "n" ), |
---|
55 | array( "column" => "b_start_day", "convert" => "n" ), |
---|
56 | array( "column" => "b_end_year", "convert" => "n" ), |
---|
57 | array( "column" => "b_end_month", "convert" => "n" ), |
---|
58 | array( "column" => "b_end_day", "convert" => "n" ), |
---|
59 | array( "column" => "start_year", "convert" => "n" ), |
---|
60 | array( "column" => "start_month", "convert" => "n" ), |
---|
61 | array( "column" => "start_day", "convert" => "n" ), |
---|
62 | array( "column" => "end_year", "convert" => "n" ), |
---|
63 | array( "column" => "end_month", "convert" => "n" ), |
---|
64 | array( "column" => "end_day", "convert" => "n" ), |
---|
65 | array( "column" => "buy_start_year", "convert" => "n" ), |
---|
66 | array( "column" => "buy_start_month", "convert" => "n" ), |
---|
67 | array( "column" => "buy_start_day", "convert" => "n" ), |
---|
68 | array( "column" => "buy_end_year", "convert" => "n" ), |
---|
69 | array( "column" => "buy_end_month", "convert" => "n" ), |
---|
70 | array( "column" => "buy_end_day", "convert" => "n" ), |
---|
71 | array( "column" => "buy_product_code", "convert" => "aKV" ) |
---|
72 | ,array( "column" => "buy_product_name", "convert" => "aKV" ) |
---|
73 | ,array( "column" => "category_id", "convert" => "" ) |
---|
74 | ,array( "column" => "buy_total_from", "convert" => "n" ) |
---|
75 | ,array( "column" => "buy_total_to", "convert" => "n" ) |
---|
76 | ,array( "column" => "campaign_id", "convert" => "" ) |
---|
77 | ); |
---|
78 | |
---|
79 | //-------------------------------------------------------------------------------------------------------------------------------------- |
---|
80 | |
---|
81 | //---- HTML¥Æ¥ó¥×¥ì¡¼¥È¤ò»ÈÍѤ¹¤ë¾ì¹ç¡¢¥Ç¡¼¥¿¤ò¼èÆÀ¤¹¤ë¡£ |
---|
82 | function lfGetHtmlTemplateData($id) { |
---|
83 | |
---|
84 | global $conn; |
---|
85 | $sql = "SELECT * FROM dtb_mailmaga_template WHERE template_id = ?"; |
---|
86 | $result = $conn->getAll($sql, array($id)); |
---|
87 | $list_data = $result[0]; |
---|
88 | |
---|
89 | // ¥á¥¤¥ó¾¦ÉʤξðÊó¼èÆÀ |
---|
90 | $sql = "SELECT name, main_image, point_rate, deliv_fee, price01_min, price01_max, price02_min, price02_max FROM vw_products_allclass AS allcls WHERE product_id = ?"; |
---|
91 | $main = $conn->getAll($sql, array($list_data["main_product_id"])); |
---|
92 | $list_data["main"] = $main[0]; |
---|
93 | |
---|
94 | // ¥µ¥Ö¾¦ÉʤξðÊó¼èÆÀ |
---|
95 | $sql = "SELECT product_id, name, main_list_image, price01_min, price01_max, price02_min, price02_max FROM vw_products_allclass AS allcls WHERE product_id = ?"; |
---|
96 | $k = 0; |
---|
97 | $l = 0; |
---|
98 | for ($i = 1; $i <= 12; $i ++) { |
---|
99 | if ($l == 4) { |
---|
100 | $l = 0; |
---|
101 | $k ++; |
---|
102 | } |
---|
103 | $result = ""; |
---|
104 | $j = sprintf("%02d", $i); |
---|
105 | if ($i > 0 && $i < 5 ) $k = 0; |
---|
106 | if ($i > 4 && $i < 9 ) $k = 1; |
---|
107 | if ($i > 8 && $i < 13 ) $k = 2; |
---|
108 | |
---|
109 | if (is_numeric($list_data["sub_product_id" .$j])) { |
---|
110 | $result = $conn->getAll($sql, array($list_data["sub_product_id" .$j])); |
---|
111 | $list_data["sub"][$k][$l] = $result[0]; |
---|
112 | $list_data["sub"][$k]["data_exists"] = "OK"; //Åö³ºÃʤ˥ǡ¼¥¿¤¬£±¤Ä°Ê¾å¸ºß¤¹¤ë¥Õ¥é¥° |
---|
113 | } |
---|
114 | $l ++; |
---|
115 | } |
---|
116 | return $list_data; |
---|
117 | } |
---|
118 | |
---|
119 | //--- ¥Æ¥ó¥×¥ì¡¼¥È¤Î¼ïÎà¤òÊÖ¤¹ |
---|
120 | function lfGetTemplateMethod($conn, $templata_id){ |
---|
121 | |
---|
122 | if ( sfCheckNumLength($template_id) ){ |
---|
123 | $sql = "SELECT mail_method FROM dtb_mailmaga_template WEHRE template_id = ?"; |
---|
124 | } |
---|
125 | } |
---|
126 | |
---|
127 | //--- hiddenÍ×ÁǽÐÎÏÍÑÇÛÎó¤ÎºîÀ® |
---|
128 | function lfGetHidden( $array ){ |
---|
129 | if ( is_array($array) ){ |
---|
130 | foreach( $array as $key => $val ){ |
---|
131 | if ( is_array( $val )){ |
---|
132 | for ( $i=0; $i<count($val); $i++){ |
---|
133 | $return[ $key.'['.$i.']'] = $val[$i]; |
---|
134 | } |
---|
135 | } else { |
---|
136 | $return[$key] = $val; |
---|
137 | } |
---|
138 | } |
---|
139 | } |
---|
140 | return $return; |
---|
141 | } |
---|
142 | |
---|
143 | //----¡¡¼èÆÀʸ»úÎó¤ÎÊÑ´¹ |
---|
144 | function lfConvertParam($array, $arrSearchColumn) { |
---|
145 | |
---|
146 | // ʸ»úÊÑ´¹ |
---|
147 | foreach ($arrSearchColumn as $data) { |
---|
148 | $arrConvList[ $data["column"] ] = $data["convert"]; |
---|
149 | } |
---|
150 | |
---|
151 | $new_array = array(); |
---|
152 | foreach ($arrConvList as $key => $val) { |
---|
153 | if ( strlen($array[$key]) > 0 ){ // ¥Ç¡¼¥¿¤Î¤¢¤ë¤â¤Î¤À¤±ÊÖ¤¹ |
---|
154 | $new_array[$key] = $array[$key]; |
---|
155 | if( strlen($val) > 0) { |
---|
156 | $new_array[$key] = mb_convert_kana($new_array[$key] ,$val); |
---|
157 | } |
---|
158 | } |
---|
159 | } |
---|
160 | return $new_array; |
---|
161 | |
---|
162 | } |
---|
163 | |
---|
164 | |
---|
165 | //---- ÆþÎÏ¥¨¥é¡¼¥Á¥§¥Ã¥¯ |
---|
166 | function lfErrorCheck($array, $flag = '') { |
---|
167 | |
---|
168 | // flag ¤ÏÅÐÏ¿»þÍÑ |
---|
169 | |
---|
170 | $objErr = new SC_CheckError($array); |
---|
171 | |
---|
172 | $objErr->doFunc(array("¸ÜµÒ¥³¡¼¥É", "customer_id", INT_LEN), array("NUM_CHECK","MAX_LENGTH_CHECK")); |
---|
173 | $objErr->doFunc(array("ÅÔÆ»Éܸ©", "pref", 2), array("NUM_CHECK","MAX_LENGTH_CHECK")); |
---|
174 | $objErr->doFunc(array("¸ÜµÒ̾", "name", STEXT_LEN), array("MAX_LENGTH_CHECK")); |
---|
175 | $objErr->doFunc(array("¸ÜµÒ̾(¥«¥Ê)", "kana", STEXT_LEN), array("KANA_CHECK", "MAX_LENGTH_CHECK")); |
---|
176 | |
---|
177 | $objErr->doFunc(array('¥á¡¼¥ë¥¢¥É¥ì¥¹', "email", STEXT_LEN) ,array("EMAIL_CHAR_CHECK", "MAX_LENGTH_CHECK")); |
---|
178 | $objErr->doFunc(array("ÅÅÏÃÈÖ¹æ", "tel", TEL_LEN), array("NUM_CHECK","MAX_LENGTH_CHECK")); |
---|
179 | |
---|
180 | $objErr->doFunc(array("¹ØÆþ²ó¿ô(³«»Ï)", "buy_times_from", INT_LEN), array("NUM_CHECK","MAX_LENGTH_CHECK")); |
---|
181 | $objErr->doFunc(array("¹ØÆþ²ó¿ô(½ªÎ»)", "buy_times_to", INT_LEN), array("NUM_CHECK","MAX_LENGTH_CHECK")); |
---|
182 | if ((is_numeric($array["buy_total_from"]) && is_numeric($array["buy_total_to"]) ) && ($array["buy_times_from"] > $array["buy_times_to"]) ) $objErr->arrErr["buy_times_from"] .= "¢¨ ¹ØÆþ²ó¿ô¤Î»ØÄêÈϰϤ¬ÉÔÀµ¤Ç¤¹¡£"; |
---|
183 | |
---|
184 | $objErr->doFunc(array("ÃÂÀ¸·î", "birth_month", 2), array("NUM_CHECK","MAX_LENGTH_CHECK")); |
---|
185 | |
---|
186 | $objErr->doFunc(array("ÃÂÀ¸Æü(³«»ÏÆü)", "b_start_year", "b_start_month", "b_start_day",), array("CHECK_DATE")); |
---|
187 | $objErr->doFunc(array("ÃÂÀ¸Æü(½ªÎ»Æü)", "b_end_year", "b_end_month", "b_end_day"), array("CHECK_DATE")); |
---|
188 | $objErr->doFunc(array("ÃÂÀ¸Æü(³«»ÏÆü)","ÃÂÀ¸Æü(½ªÎ»Æü)", "b_start_year", "b_start_month", "b_start_day", "b_end_year", "b_end_month", "b_end_day"), array("CHECK_SET_TERM")); |
---|
189 | |
---|
190 | $objErr->doFunc(array("ÅÐÏ¿¡¦¹¹¿·Æü(³«»ÏÆü)", "start_year", "start_month", "start_day",), array("CHECK_DATE")); |
---|
191 | $objErr->doFunc(array("ÅÐÏ¿¡¦¹¹¿·Æü(½ªÎ»Æü)", "end_year", "end_month", "end_day"), array("CHECK_DATE")); |
---|
192 | $objErr->doFunc(array("ÅÐÏ¿¡¦¹¹¿·Æü(³«»ÏÆü)","ÅÐÏ¿¡¦¹¹¿·Æü(½ªÎ»Æü)", "start_year", "start_month", "start_day", "end_year", "end_month", "end_day"), array("CHECK_SET_TERM")); |
---|
193 | |
---|
194 | $objErr->doFunc(array("ºÇ½ª¹ØÆþÆü(³«»ÏÆü)", "buy_start_year", "buy_start_month", "buy_start_day",), array("CHECK_DATE")); |
---|
195 | $objErr->doFunc(array("ºÇ½ª¹ØÆþ(½ªÎ»Æü)", "buy_end_year", "buy_end_month", "buy_end_day"), array("CHECK_DATE")); |
---|
196 | $objErr->doFunc(array("ºÇ½ª¹ØÆþÆü(³«»ÏÆü)","ÅÐÏ¿¡¦¹¹¿·Æü(½ªÎ»Æü)", "buy_start_year", "buy_start_month", "buy_start_day", "buy_end_year", "buy_end_month", "buy_end_day"), array("CHECK_SET_TERM")); |
---|
197 | |
---|
198 | $objErr->doFunc(array("¹ØÆþ¾¦ÉÊ¥³¡¼¥É", "buy_product_code", STEXT_LEN), array("MAX_LENGTH_CHECK")); |
---|
199 | |
---|
200 | $objErr->doFunc(array("¹ØÆþ¾¦ÉÊ̾", "buy_product_name", STEXT_LEN), array("MAX_LENGTH_CHECK")); |
---|
201 | |
---|
202 | $objErr->doFunc(array("¹ØÆþ¶â³Û(³«»Ï)", "buy_total_from", INT_LEN), array("NUM_CHECK","MAX_LENGTH_CHECK")); |
---|
203 | $objErr->doFunc(array("¹ØÆþ¶â³Û(½ªÎ»)", "buy_total_to", INT_LEN), array("NUM_CHECK","MAX_LENGTH_CHECK")); |
---|
204 | |
---|
205 | $objErr->doFunc(array("¥¥ã¥ó¥Ú¡¼¥ó", "campaign_id", INT_LEN), array("NUM_CHECK")); |
---|
206 | |
---|
207 | //¹ØÆþ¶â³Û(from) ¡ä ¹ØÆþ¶â³Û(to) ¤Î¾ì¹ç¤Ï¥¨¥é¡¼¤È¤¹¤ë |
---|
208 | if ( (is_numeric($array["buy_total_from"]) && is_numeric($array["buy_total_to"]) ) && |
---|
209 | ($array["buy_total_from"] > $array["buy_total_to"]) ) { |
---|
210 | $objErr->arrErr["buy_total_from"] .= "¢¨ ¹ØÆþ¶â³Û¤Î»ØÄêÈϰϤ¬ÉÔÀµ¤Ç¤¹¡£"; |
---|
211 | } |
---|
212 | |
---|
213 | if ( $flag ){ |
---|
214 | $objErr->doFunc(array("¥Æ¥ó¥×¥ì¡¼¥È", "template_id"), array("EXIST_CHECK", "NUM_CHECK")); |
---|
215 | $objErr->doFunc(array("¥á¡¼¥ëÁ÷¿®Ë¡Ë¡", "mail_method"), array("EXIST_CHECK", "NUM_CHECK")); |
---|
216 | |
---|
217 | if(MELMAGA_BATCH_MODE) { |
---|
218 | $objErr->doFunc(array("ÇÛ¿®Æü¡Êǯ¡Ë","send_year"), array("EXIST_CHECK", "NUM_CHECK")); |
---|
219 | $objErr->doFunc(array("ÇÛ¿®Æü¡Ê·î¡Ë","send_month"), array("EXIST_CHECK", "NUM_CHECK")); |
---|
220 | $objErr->doFunc(array("ÇÛ¿®Æü¡ÊÆü¡Ë","send_day"), array("EXIST_CHECK", "NUM_CHECK")); |
---|
221 | $objErr->doFunc(array("ÇÛ¿®Æü¡Ê»þ¡Ë","send_hour"), array("EXIST_CHECK", "NUM_CHECK")); |
---|
222 | $objErr->doFunc(array("ÇÛ¿®Æü¡Êʬ¡Ë","send_minutes"), array("EXIST_CHECK", "NUM_CHECK")); |
---|
223 | $objErr->doFunc(array("ÇÛ¿®Æü", "send_year", "send_month", "send_day"), array("CHECK_DATE")); |
---|
224 | $objErr->doFunc(array("ÇÛ¿®Æü", "send_year", "send_month", "send_day","send_hour", "send_minutes"), array("ALL_EXIST_CHECK")); |
---|
225 | } |
---|
226 | $objErr->doFunc(array("Subject", "subject", STEXT_LEN), array("EXIST_CHECK","MAX_LENGTH_CHECK")); |
---|
227 | $objErr->doFunc(array("ËÜʸ", 'body', LLTEXT_LEN), array("EXIST_CHECK","MAX_LENGTH_CHECK")); // HTML¥Æ¥ó¥×¥ì¡¼¥È¤ò»ÈÍѤ·¤Ê¤¤¾ì¹ç |
---|
228 | } |
---|
229 | |
---|
230 | return $objErr->arrErr; |
---|
231 | } |
---|
232 | |
---|
233 | /* ¥Æ¥ó¥×¥ì¡¼¥ÈID¤Èsubject¤ÎÇÛÎó¤òÊÖ¤¹ */ |
---|
234 | function getTemplateList($conn){ |
---|
235 | global $arrMagazineTypeAll; |
---|
236 | |
---|
237 | $sql = "SELECT template_id, subject, mail_method FROM dtb_mailmaga_template WHERE del_flg = 0 "; |
---|
238 | if ($_POST["htmlmail"] == 2) { |
---|
239 | $sql .= " AND mail_method = 2 "; //TEXT´õ˾¼Ô¤Ø¤ÎTEST¥á¡¼¥ë¥Æ¥ó¥×¥ì¡¼¥È¥ê¥¹¥È |
---|
240 | } |
---|
241 | $sql .= " ORDER BY template_id DESC"; |
---|
242 | $result = $conn->getAll($sql); |
---|
243 | |
---|
244 | if ( is_array($result) ){ |
---|
245 | foreach( $result as $line ){ |
---|
246 | $return[$line['template_id']] = "¡Ú" . $arrMagazineTypeAll[$line['mail_method']] . "¡Û" . $line['subject']; |
---|
247 | } |
---|
248 | } |
---|
249 | |
---|
250 | return $return; |
---|
251 | } |
---|
252 | |
---|
253 | /* ¥Æ¥ó¥×¥ì¡¼¥ÈID¤«¤é¥Æ¥ó¥×¥ì¡¼¥È¥Ç¡¼¥¿¤ò¼èÆÀ */ |
---|
254 | function getTemplateData($conn, $id){ |
---|
255 | |
---|
256 | if ( sfCheckNumLength($id) ){ |
---|
257 | $sql = "SELECT * FROM dtb_mailmaga_template WHERE template_id = ? ORDER BY template_id DESC"; |
---|
258 | $result = $conn->getAll( $sql, array($id) ); |
---|
259 | if ( is_array($result) ) { |
---|
260 | $return = $result[0]; |
---|
261 | } |
---|
262 | } |
---|
263 | return $return; |
---|
264 | } |
---|
265 | |
---|
266 | |
---|
267 | |
---|
268 | ?> |
---|