<script src="/scripts/utils.js"></script>
2. <script src="/scripts/utils.js"></script><script src="/scripts/transport.js"></script>
3. <script>
4. function addImg(obj)
5. {
6. var src = obj.parentNode.parentNode;
7. var idx = rowindex(src);
8. var tbl = document.getElementById('gallery-table');
9. var row = tbl.insertRow(idx + 1);
10. var cell = row.insertCell(-1);
11. cell.innerHTML = src.cells[0].innerHTML.replace(/(.*)(addImg)(.*)(\[)(\+)/i, "$1removeImg$3$4-");
12. }
13. function addImg1(obj)
14. {
15. var src = obj.parentNode.parentNode;
16. var idx = rowindex(src);
17. var tbl = document.getElementById('gallery-table1');
18. var row = tbl.insertRow(idx + 1);
19. var cell = row.insertCell(-1);
20. cell.innerHTML = src.cells[0].innerHTML.replace(/(.*)(addImg1)(.*)(\[)(\+)/i, "$1removeImg1$3$4-");
21. }
22. /**
23. * 删除图片上传
24. */
25. function removeImg(obj)
26. {
27. var row = rowindex(obj.parentNode.parentNode);
28. var tbl = document.getElementById('gallery-table');
29. tbl.deleteRow(row);
30. }
31. function removeImg1(obj)
32. {
33. var row = rowindex(obj.parentNode.parentNode);
34. var tbl = document.getElementById('gallery-table1');
35. tbl.deleteRow(row);
36.
37. </script>
2.
3.
4. * 检查目标文件夹是否存在,如果不存在则自动创建该目录
5. *
6. * @access public
7. * @param string folder 目录路径。不能使用相对于网站根目录的URL
8. *
9. * @return bool
10. */
11. function make_dir($folder)
12. {
13. $reva l = false;
14. if (!file_exists($folder))
15. {
16. /* 如果目录不存在则尝试创建该目录 */
17. @umask(0);
18. /* 将目录路径拆分成数组 */
19. preg_match_all('/([^\/]*)\/?/i', $folder, $atmp);
20. /* 如果第一个字符为/则当作物理路径处理 */
21. $base = ($atmp[0][0] == '/') ? '/' : '';
22. /* 遍历包含路径信息的数组 */
23. foreach ($atmp[1] AS $val)
24. {
25. if ('' != $val)
26. {
27. $base .= $val;
28. if ('..' == $val || '.' == $val)
29. {
30. /* 如果目录为.或者..则直接补/继续下一个循环 */
31. $base .= '/';
32. continue;
33. }
34. }
35. else
36. {
37. continue;
38. }
39. $base .= '/';
40. if (!file_exists($base))
41. {
42. /* 尝试创建目录,如果创建失败则继续循环 */
43. if (@mkdir(rtrim($base, '/'), 0777))
44. {
45. @chmod($base, 0777);
46. $reva l = true;
47. }
48. }
49. }
50. }
51. else
52. {
53. /* 路径已经存在。返回该路径是不是一个目录 */
54. $reva l = is_dir($folder);
55. }
56.
57. clearstatcache();
58.
59. return $reva l;
60. }
61.
62. /**
63. * 获得当前格林威治时间的时间戳
64. *
65. * @return integer
66. */
67. function gmtime()
68. {
69. return (time() - date('Z'));
70. }
71.
72. /**
73. * 获得服务器的时区
74. *
75. * @return integer
76. */
77. function server_timezone()
78. {
79. if (function_exists('date_default_timezone_get'))
80. {
81. return date_default_timezone_get();
82. }
83. else
84. {
85. return date('Z') / 3600;
86. }
87. }
88. /**
89. * 生成一个用户自定义时区日期的GMT时间戳
90. *
91. * @access public
92. * @param int $hour
93. * @param int $minute
94. * @param int $second
95. * @param int $month
96. * @param int $day
97. * @param int $year
98. *
99. * @return void
100. */
101. function local_mktime($hour = NULL , $minute= NULL, $second = NULL, $month = NULL, $day = NULL, $year = NULL)
102. {
103. $timezone = isset($_SESSION['timezone']) ? $_SESSION['timezone'] : $GLOBALS['_CFG']['timezone'];
104. /**
105. * $time = mktime($hour, $minute, $second, $month, $day, $year) - date('Z') + (date('Z') - $timezone * 3600)
106. * 先用mktime生成时间戳,再减去date('Z')转换为GMT时间,然后修正为用户自定义时间。以下是化简后结果
107. **/
108. $time = mktime($hour, $minute, $second, $month, $day, $year) - $timezone * 3600;
109. return $time;
110. }
111. /**
112. * 将GMT时间戳格式化为用户自定义时区日期
113. *
114. * @param string $format
115. * @param integer $time 该参数必须是一个GMT的时间戳
116. *
117. * @return string
118. */
119. function local_date($format, $time = NULL)
120. {
121. $timezone = isset($_SESSION['timezone']) ? $_SESSION['timezone'] : $GLOBALS['_CFG']['timezone'];
122.
123. if ($time === NULL)
124. {
125. $time = gmtime();
126. }
127. elseif ($time <= 0)
128. {
129. return '';
130. }
131. $time += ($timezone * 3600);
132. return date($format, $time);
133. }
134. /**
135. * 转换字符串形式的时间表达式为GMT时间戳
136. *
137. * @param string $str
138. *
139. * @return integer
140. */
141. function gmstr2time($str)
142. {
143. $time = strtotime($str);
144. if ($time > 0)
145. {
146. $time -= date('Z');
147. }
148. return $time;
149. }
150. /**
151. * 将一个用户自定义时区的日期转为GMT时间戳
152. *
153. * @access public
154. * @param string $str
155. *
156. * @return integer
157. */
158. function local_strtotime($str)
159. {
160. $timezone = isset($_SESSION['timezone']) ? $_SESSION['timezone'] : $GLOBALS['_CFG']['timezone'];
161. /**
162. * $time = mktime($hour, $minute, $second, $month, $day, $year) - date('Z') + (date('Z') - $timezone * 3600)
163. * 先用mktime生成时间戳,再减去date('Z')转换为GMT时间,然后修正为用户自定义时间。以下是化简后结果
164. **/
165. $time = strtotime($str) - $timezone * 3600;
166. return $time;
167. }
168.
169. /**
170. * 获得用户所在时区指定的时间戳
171. *
172. * @param $timestamp integer 该时间戳必须是一个服务器本地的时间戳
173. *
174. * @return array
175. */
176. function local_gettime($timestamp = NULL)
177. {
178. $tmp = local_getdate($timestamp);
179. return $tmp[0];
180. }
181. /**
182. * 获得用户所在时区指定的日期和时间信息
183. *
184. * @param $timestamp integer 该时间戳必须是一个服务器本地的时间戳
185. *
186. * @return array
187. */
188. function local_getdate($timestamp = NULL)
189. {
190. $timezone = isset($_SESSION['timezone']) ? $_SESSION['timezone'] : $GLOBALS['_CFG']['timezone'];
191.
192. /* 如果时间戳为空,则获得服务器的当前时间 */
193. if ($timestamp === NULL)
194. {
195. $timestamp = time();
196. }
197. $gmt = $timestamp - date('Z'); // 得到该时间的格林威治时间
198. $local_time = $gmt + ($timezone * 3600); // 转换为用户所在时区的时间戳
199. return getdate($local_time);
200. }
201. function move_upload_file($file_name, $target_name = '')
202. {
203. if (function_exists("move_uploaded_file"))
204. {
205. if (move_uploaded_file($file_name, $target_name))
206. {
207. return true;
208. }
209. else if (copy($file_name, $target_name))
210. {
211. return true;
212. }
213. }
214. elseif (copy($file_name, $target_name))
215. {
216. return true;
217. }
218. return false;
219. }
220. function handle_gallery_image($news_id, $image_files,$image_desc,$eng_img_desc,$tra_img_desc)
221. {
222. global $db;
223. global $image;
224. global $dbhead;
225. foreach ($image_desc AS $key => $img_desc)
226. {
227. // 生成缩略图
228. $thumb_url = $image->make_thumb($image_files['tmp_name'][$key],100,80);
229. $thumb_url = is_string($thumb_url) ? $thumb_url : '';
230. $upload = array(
231. 'name' => $image_files['name'][$key],
232. 'type' => $image_files['type'][$key],
233. 'tmp_name' => $image_files['tmp_name'][$key],
234. 'size' => $image_files['size'][$key],
235. );
236. //print_r($upload);
237. $img_original = $image->upload_image($upload);
238. $img_url = $img_original;
239. $eng_img_desc = $eng_img_desc[$key];
240. $tra_img_desc = $tra_img_desc[$key];
241. if($image_files['name'][$key]!='')
242. {
243. $sql = $db->Execute("insert into $dbhead"."news_image (news_id,image,thumb_url,img_desc,eng_img_desc,tra_img_desc) values ('$news_id','$img_url','$thumb_url','$img_desc','$eng_img_desc','$tra_img_desc')");
244. }
245. }
246. }
2. <script src="/scripts/utils.js"></script><script src="/scripts/transport.js"></script>
3. <script>
4. function addImg(obj)
5. {
6. var src = obj.parentNode.parentNode;
7. var idx = rowindex(src);
8. var tbl = document.getElementById('gallery-table');
9. var row = tbl.insertRow(idx + 1);
10. var cell = row.insertCell(-1);
11. cell.innerHTML = src.cells[0].innerHTML.replace(/(.*)(addImg)(.*)(\[)(\+)/i, "$1removeImg$3$4-");
12. }
13. function addImg1(obj)
14. {
15. var src = obj.parentNode.parentNode;
16. var idx = rowindex(src);
17. var tbl = document.getElementById('gallery-table1');
18. var row = tbl.insertRow(idx + 1);
19. var cell = row.insertCell(-1);
20. cell.innerHTML = src.cells[0].innerHTML.replace(/(.*)(addImg1)(.*)(\[)(\+)/i, "$1removeImg1$3$4-");
21. }
22. /**
23. * 删除图片上传
24. */
25. function removeImg(obj)
26. {
27. var row = rowindex(obj.parentNode.parentNode);
28. var tbl = document.getElementById('gallery-table');
29. tbl.deleteRow(row);
30. }
31. function removeImg1(obj)
32. {
33. var row = rowindex(obj.parentNode.parentNode);
34. var tbl = document.getElementById('gallery-table1');
35. tbl.deleteRow(row);
36.
37. </script>
去php文件提交表单的地方加上:
1. <tr>
2. <td height="25" align="right" bgcolor="ECF5FF">调用图片:</td>
3. <td align="center" bgcolor="ECF5FF"><!-- 商品相册 -->
4. <table width="90%" id="gallery-table" align="center">
5. <!-- 上传图片 -->
6. <tr>
7. <td>
8. <a href="java script:;" >[+]</a>
9. 图片名称 <input type="text" name="img_desc[]" />
10. 繁体名称 <input type="text" name="tra_img_desc[]" />
11. 英文名称 <input type="text" name="eng_img_desc[]" />
12. <input type="file" name="img_url[]" class="button" />
13. </td>
14. </tr>
15. </table></td>
16. /tr>
17. <tr>
2. <td height="25" align="right" bgcolor="ECF5FF">调用图片:</td>
3. <td align="center" bgcolor="ECF5FF"><!-- 商品相册 -->
4. <table width="90%" id="gallery-table" align="center">
5. <!-- 上传图片 -->
6. <tr>
7. <td>
8. <a href="java script:;" >[+]</a>
9. 图片名称 <input type="text" name="img_desc[]" />
10. 繁体名称 <input type="text" name="tra_img_desc[]" />
11. 英文名称 <input type="text" name="eng_img_desc[]" />
12. <input type="file" name="img_url[]" class="button" />
13. </td>
14. </tr>
15. </table></td>
16. /tr>
17. <tr>
1. handle_gallery_image($newid,$_FILES['img_url'], $_POST['img_desc'],$_POST['eng_img_desc'],$_POST['tra_img_desc']);
2.
3.
4. * 检查目标文件夹是否存在,如果不存在则自动创建该目录
5. *
6. * @access public
7. * @param string folder 目录路径。不能使用相对于网站根目录的URL
8. *
9. * @return bool
10. */
11. function make_dir($folder)
12. {
13. $reva l = false;
14. if (!file_exists($folder))
15. {
16. /* 如果目录不存在则尝试创建该目录 */
17. @umask(0);
18. /* 将目录路径拆分成数组 */
19. preg_match_all('/([^\/]*)\/?/i', $folder, $atmp);
20. /* 如果第一个字符为/则当作物理路径处理 */
21. $base = ($atmp[0][0] == '/') ? '/' : '';
22. /* 遍历包含路径信息的数组 */
23. foreach ($atmp[1] AS $val)
24. {
25. if ('' != $val)
26. {
27. $base .= $val;
28. if ('..' == $val || '.' == $val)
29. {
30. /* 如果目录为.或者..则直接补/继续下一个循环 */
31. $base .= '/';
32. continue;
33. }
34. }
35. else
36. {
37. continue;
38. }
39. $base .= '/';
40. if (!file_exists($base))
41. {
42. /* 尝试创建目录,如果创建失败则继续循环 */
43. if (@mkdir(rtrim($base, '/'), 0777))
44. {
45. @chmod($base, 0777);
46. $reva l = true;
47. }
48. }
49. }
50. }
51. else
52. {
53. /* 路径已经存在。返回该路径是不是一个目录 */
54. $reva l = is_dir($folder);
55. }
56.
57. clearstatcache();
58.
59. return $reva l;
60. }
61.
62. /**
63. * 获得当前格林威治时间的时间戳
64. *
65. * @return integer
66. */
67. function gmtime()
68. {
69. return (time() - date('Z'));
70. }
71.
72. /**
73. * 获得服务器的时区
74. *
75. * @return integer
76. */
77. function server_timezone()
78. {
79. if (function_exists('date_default_timezone_get'))
80. {
81. return date_default_timezone_get();
82. }
83. else
84. {
85. return date('Z') / 3600;
86. }
87. }
88. /**
89. * 生成一个用户自定义时区日期的GMT时间戳
90. *
91. * @access public
92. * @param int $hour
93. * @param int $minute
94. * @param int $second
95. * @param int $month
96. * @param int $day
97. * @param int $year
98. *
99. * @return void
100. */
101. function local_mktime($hour = NULL , $minute= NULL, $second = NULL, $month = NULL, $day = NULL, $year = NULL)
102. {
103. $timezone = isset($_SESSION['timezone']) ? $_SESSION['timezone'] : $GLOBALS['_CFG']['timezone'];
104. /**
105. * $time = mktime($hour, $minute, $second, $month, $day, $year) - date('Z') + (date('Z') - $timezone * 3600)
106. * 先用mktime生成时间戳,再减去date('Z')转换为GMT时间,然后修正为用户自定义时间。以下是化简后结果
107. **/
108. $time = mktime($hour, $minute, $second, $month, $day, $year) - $timezone * 3600;
109. return $time;
110. }
111. /**
112. * 将GMT时间戳格式化为用户自定义时区日期
113. *
114. * @param string $format
115. * @param integer $time 该参数必须是一个GMT的时间戳
116. *
117. * @return string
118. */
119. function local_date($format, $time = NULL)
120. {
121. $timezone = isset($_SESSION['timezone']) ? $_SESSION['timezone'] : $GLOBALS['_CFG']['timezone'];
122.
123. if ($time === NULL)
124. {
125. $time = gmtime();
126. }
127. elseif ($time <= 0)
128. {
129. return '';
130. }
131. $time += ($timezone * 3600);
132. return date($format, $time);
133. }
134. /**
135. * 转换字符串形式的时间表达式为GMT时间戳
136. *
137. * @param string $str
138. *
139. * @return integer
140. */
141. function gmstr2time($str)
142. {
143. $time = strtotime($str);
144. if ($time > 0)
145. {
146. $time -= date('Z');
147. }
148. return $time;
149. }
150. /**
151. * 将一个用户自定义时区的日期转为GMT时间戳
152. *
153. * @access public
154. * @param string $str
155. *
156. * @return integer
157. */
158. function local_strtotime($str)
159. {
160. $timezone = isset($_SESSION['timezone']) ? $_SESSION['timezone'] : $GLOBALS['_CFG']['timezone'];
161. /**
162. * $time = mktime($hour, $minute, $second, $month, $day, $year) - date('Z') + (date('Z') - $timezone * 3600)
163. * 先用mktime生成时间戳,再减去date('Z')转换为GMT时间,然后修正为用户自定义时间。以下是化简后结果
164. **/
165. $time = strtotime($str) - $timezone * 3600;
166. return $time;
167. }
168.
169. /**
170. * 获得用户所在时区指定的时间戳
171. *
172. * @param $timestamp integer 该时间戳必须是一个服务器本地的时间戳
173. *
174. * @return array
175. */
176. function local_gettime($timestamp = NULL)
177. {
178. $tmp = local_getdate($timestamp);
179. return $tmp[0];
180. }
181. /**
182. * 获得用户所在时区指定的日期和时间信息
183. *
184. * @param $timestamp integer 该时间戳必须是一个服务器本地的时间戳
185. *
186. * @return array
187. */
188. function local_getdate($timestamp = NULL)
189. {
190. $timezone = isset($_SESSION['timezone']) ? $_SESSION['timezone'] : $GLOBALS['_CFG']['timezone'];
191.
192. /* 如果时间戳为空,则获得服务器的当前时间 */
193. if ($timestamp === NULL)
194. {
195. $timestamp = time();
196. }
197. $gmt = $timestamp - date('Z'); // 得到该时间的格林威治时间
198. $local_time = $gmt + ($timezone * 3600); // 转换为用户所在时区的时间戳
199. return getdate($local_time);
200. }
201. function move_upload_file($file_name, $target_name = '')
202. {
203. if (function_exists("move_uploaded_file"))
204. {
205. if (move_uploaded_file($file_name, $target_name))
206. {
207. return true;
208. }
209. else if (copy($file_name, $target_name))
210. {
211. return true;
212. }
213. }
214. elseif (copy($file_name, $target_name))
215. {
216. return true;
217. }
218. return false;
219. }
220. function handle_gallery_image($news_id, $image_files,$image_desc,$eng_img_desc,$tra_img_desc)
221. {
222. global $db;
223. global $image;
224. global $dbhead;
225. foreach ($image_desc AS $key => $img_desc)
226. {
227. // 生成缩略图
228. $thumb_url = $image->make_thumb($image_files['tmp_name'][$key],100,80);
229. $thumb_url = is_string($thumb_url) ? $thumb_url : '';
230. $upload = array(
231. 'name' => $image_files['name'][$key],
232. 'type' => $image_files['type'][$key],
233. 'tmp_name' => $image_files['tmp_name'][$key],
234. 'size' => $image_files['size'][$key],
235. );
236. //print_r($upload);
237. $img_original = $image->upload_image($upload);
238. $img_url = $img_original;
239. $eng_img_desc = $eng_img_desc[$key];
240. $tra_img_desc = $tra_img_desc[$key];
241. if($image_files['name'][$key]!='')
242. {
243. $sql = $db->Execute("insert into $dbhead"."news_image (news_id,image,thumb_url,img_desc,eng_img_desc,tra_img_desc) values ('$news_id','$img_url','$thumb_url','$img_desc','$eng_img_desc','$tra_img_desc')");
244. }
245. }
246. }