Subversion Repositories php-qbpwcf

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
14 liveuser 1
<?php
2
 
3
#指派命名空間
4
namespace qbpwcf;
5
 
6
#匯入外部套件
7
include("../allInOne.php");
8
 
9
#提示正在測試的項目
10
echo "<hr>form::button - testCase 1<br>";
11
 
12
/*
13
 
14
#函式說明:
15
#放置按鈕
16
#回傳結果:
17
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
18
#$result["function"],當前執行的函數.
19
#$result["error"],錯誤訊息陣列.
20
#$result["content"],按鈕語法. 
21
#必要的參數:
22
$conf["buttonDisplayValue"]="有form與button的ID的按鈕";#爲按鈕上顯示的文字。
23
#可省略的參數:
24
#$conf["buttonStyleName"]="";#可省略,爲按鈕所要使用的css樣式類別名稱,預設的css樣式爲 __simpleButtonLinkDefaultButtonCssStyle 。
25
	#其屬性爲   "width","height","font-size","text-align"
26
	#其屬性值爲 "100%" ,  "50"  ,    "30"   ,   "center"
27
#$conf["buttonActionScriptFunction"]="";#可省略,爲按下按鈕時所要執行的javaScript函式,預設不設定。
28
	#"document.forms.formName.submit()"爲傳送名爲testForm的表單內容
29
	#"window.print()"爲使用瀏覽器內建工具列印當前網頁
30
#$conf["buttonBorder"]="";#可省略,爲IE9內會自動產生外框,此爲外框的厚度,屬性值爲正整數,預設爲0。
31
#$conf["disabled"]="true";#可省略,為按鈕的功能是否要取消,若為"true"則代表要取消,若為"false"則代表功能正常,預設為"false".
32
#$conf["tablStart"]="true";#爲是否要表格開始。"false"代表否,"true"代表是。預設爲"false"。
33
#$conf["tableClass"]="";#表格要套用的css樣式,若省略的話,則預設爲 __defaultTbaleCsssStyle 其屬性爲 table-layout:fixed word-break:break-all width:100% ,須搭配 $conf["tablStart"] 與 $conf["tableEnd"] 使用。
34
#$conf["trStart"]="true";#爲是否要以<tr>開頭,"true"表示"是"。也可以看作新的一列開始,預設為"false".
35
#$conf["trClass"]="__withoutBorder";#<tr>要套用的css樣式,預設為"__withoutBorder",亦即沒有框線的樣式;"__withBorder"則爲有框線的樣式
36
#$conf["tdStart"]="true";#爲是否要以<td>開頭,"true"表示"是"。也可以看成列裏面的元素開始,預設為"false".
37
#$conf["tdClass"]="__withoutBorder";#<td>要套用的css樣式,"__withoutBorder"爲沒有框線的樣式;__withBorder爲有框線的樣式
38
#$conf["tdEnd"]="true";#爲是否要以</td>結尾,"true"表示"是"。也可以看成列裏面的元素結束,預設為"false".
39
#$conf["trEnd"]="true";#爲是否要以</tr>結尾,"true"表示"是"。也可以看作該列結束,預設為"false".
40
#$conf["tableEnd"]="true";#爲是否要表格結束。"false"代表否,"true"代表是,預設爲"false"。
41
$conf["formStart"]="true";#爲是否要表單開始,如果爲"true"則代表要表單開始,預設為"false".
42
$conf["action"]="formT.php";#爲表單要傳送到哪個頁面,須搭配$conf["formStart"]與$conf["formEnd"]參數使用
43
#$conf["target"]="";#為目標表單顯示的方式,若沒設定則預設爲"_self",其他可用的參數爲 "_blank"、"_parent"、"_top",也可以是iframe的名稱。須搭配$conf["formStart"]與$conf["formEnd"]參數使用
44
$conf["formEnd"]="true";#爲是否要表單結束,如果爲"true"則代表要表單結束,預設為"false".
45
#$conf["formId"],字串,表單的id.
46
$conf["formId"]="formId";
47
#$conf["buttonId"],字串,按鈕的id.
48
$conf["buttonId"]="buttonId";
49
#參考資料來源:
50
#http://stackoverflow.com/questions/3014649/how-to-disable-html-button-using-javascript
51
var_dump(form::button($conf));
52
unset($conf);
53
 
54
*/
55
 
56
#提示正在測試的項目
57
echo "<hr>form::button - testCase 2<br>";
58
 
59
/*
60
 
61
#函式說明:
62
#放置按鈕
63
#回傳結果:
64
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
65
#$result["function"],當前執行的函數.
66
#$result["error"],錯誤訊息陣列.
67
#$result["content"],按鈕語法. 
68
#必要的參數:
69
$conf["buttonDisplayValue"]="有表格的按鈕";#爲按鈕上顯示的文字。
70
#可省略的參數:
71
#$conf["buttonStyleName"]="";#可省略,爲按鈕所要使用的css樣式類別名稱,預設的css樣式爲 __simpleButtonLinkDefaultButtonCssStyle 。
72
	#其屬性爲   "width","height","font-size","text-align"
73
	#其屬性值爲 "100%" ,  "50"  ,    "30"   ,   "center"
74
#$conf["buttonActionScriptFunction"]="";#可省略,爲按下按鈕時所要執行的javaScript函式,預設不設定。
75
	#"document.forms.formName.submit()"爲傳送名爲testForm的表單內容
76
	#"window.print()"爲使用瀏覽器內建工具列印當前網頁
77
#$conf["buttonBorder"]="";#可省略,爲IE9內會自動產生外框,此爲外框的厚度,屬性值爲正整數,預設爲0。
78
#$conf["disabled"]="true";#可省略,為按鈕的功能是否要取消,若為"true"則代表要取消,若為"false"則代表功能正常,預設為"false".
79
$conf["tableStart"]="true";#爲是否要表格開始。"false"代表否,"true"代表是。預設爲"false"。
80
#$conf["tableClass"]="";#表格要套用的css樣式,若省略的話,則預設爲 __defaultTbaleCsssStyle 其屬性爲 table-layout:fixed word-break:break-all width:100% ,須搭配 $conf["tablStart"] 與 $conf["tableEnd"] 使用。
81
$conf["trStart"]="true";#爲是否要以<tr>開頭,"true"表示"是"。也可以看作新的一列開始,預設為"false".
82
#$conf["trClass"]="__withoutBorder";#<tr>要套用的css樣式,預設為"__withoutBorder",亦即沒有框線的樣式;"__withBorder"則爲有框線的樣式
83
$conf["tdStart"]="true";#爲是否要以<td>開頭,"true"表示"是"。也可以看成列裏面的元素開始,預設為"false".
84
#$conf["tdClass"]="__withoutBorder";#<td>要套用的css樣式,"__withoutBorder"爲沒有框線的樣式;__withBorder爲有框線的樣式
85
$conf["tdEnd"]="true";#爲是否要以</td>結尾,"true"表示"是"。也可以看成列裏面的元素結束,預設為"false".
86
$conf["trEnd"]="true";#爲是否要以</tr>結尾,"true"表示"是"。也可以看作該列結束,預設為"false".
87
$conf["tableEnd"]="true";#爲是否要表格結束。"false"代表否,"true"代表是,預設爲"false"。
88
#$conf["formStart"]="true";#爲是否要表單開始,如果爲"true"則代表要表單開始,預設為"false".
89
#$conf["action"]="";#爲表單要傳送到哪個頁面,須搭配$conf["formStart"]與$conf["formEnd"]參數使用
90
#$conf["target"]="";#為目標表單顯示的方式,若沒設定則預設爲"_self",其他可用的參數爲 "_blank"、"_parent"、"_top",也可以是iframe的名稱。須搭配$conf["formStart"]與$conf["formEnd"]參數使用
91
#$conf["formEnd"]="true";#爲是否要表單結束,如果爲"true"則代表要表單結束,預設為"false".
92
#參考資料來源:
93
#http://stackoverflow.com/questions/3014649/how-to-disable-html-button-using-javascript
94
var_dump(form::button($conf));
95
unset($conf);
96
 
97
*/
98
 
99
#提示正在測試的項目
100
echo "<hr>form::button - testCase 3<br>";
101
 
102
/*
103
 
104
#函式說明:
105
#放置按鈕
106
#回傳結果:
107
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
108
#$result["function"],當前執行的函數.
109
#$result["error"],錯誤訊息陣列.
110
#$result["content"],按鈕語法. 
111
#必要的參數:
112
$conf["buttonDisplayValue"]="開新分頁的按鈕";#爲按鈕上顯示的文字。
113
#可省略的參數:
114
#$conf["buttonStyleName"]="";#可省略,爲按鈕所要使用的css樣式類別名稱,預設的css樣式爲 __simpleButtonLinkDefaultButtonCssStyle 。
115
	#其屬性爲   "width","height","font-size","text-align"
116
	#其屬性值爲 "100%" ,  "50"  ,    "30"   ,   "center"
117
#$conf["buttonActionScriptFunction"]="";#可省略,爲按下按鈕時所要執行的javaScript函式,預設不設定。
118
	#"document.forms.formName.submit()"爲傳送名爲testForm的表單內容
119
	#"window.print()"爲使用瀏覽器內建工具列印當前網頁
120
#$conf["buttonBorder"]="";#可省略,爲IE9內會自動產生外框,此爲外框的厚度,屬性值爲正整數,預設爲0。
121
#$conf["disabled"]="true";#可省略,為按鈕的功能是否要取消,若為"true"則代表要取消,若為"false"則代表功能正常,預設為"false".
122
#$conf["tableStart"]="true";#爲是否要表格開始。"false"代表否,"true"代表是。預設爲"false"。
123
#$conf["tableClass"]="";#表格要套用的css樣式,若省略的話,則預設爲 __defaultTbaleCsssStyle 其屬性爲 table-layout:fixed word-break:break-all width:100% ,須搭配 $conf["tablStart"] 與 $conf["tableEnd"] 使用。
124
#$conf["trStart"]="true";#爲是否要以<tr>開頭,"true"表示"是"。也可以看作新的一列開始,預設為"false".
125
#$conf["trClass"]="__withoutBorder";#<tr>要套用的css樣式,預設為"__withoutBorder",亦即沒有框線的樣式;"__withBorder"則爲有框線的樣式
126
#$conf["tdStart"]="true";#爲是否要以<td>開頭,"true"表示"是"。也可以看成列裏面的元素開始,預設為"false".
127
#$conf["tdClass"]="__withoutBorder";#<td>要套用的css樣式,"__withoutBorder"爲沒有框線的樣式;__withBorder爲有框線的樣式
128
#$conf["tdEnd"]="true";#爲是否要以</td>結尾,"true"表示"是"。也可以看成列裏面的元素結束,預設為"false".
129
#$conf["trEnd"]="true";#爲是否要以</tr>結尾,"true"表示"是"。也可以看作該列結束,預設為"false".
130
#$conf["tableEnd"]="true";#爲是否要表格結束。"false"代表否,"true"代表是,預設爲"false"。
131
$conf["formStart"]="true";#爲是否要表單開始,如果爲"true"則代表要表單開始,預設為"false".
132
$conf["action"]="formT.php";#爲表單要傳送到哪個頁面,須搭配$conf["formStart"]與$conf["formEnd"]參數使用
133
$conf["target"]="_blank";#為目標表單顯示的方式,若沒設定則預設爲"_self",其他可用的參數爲 "_blank"、"_parent"、"_top",也可以是iframe的名稱。須搭配$conf["formStart"]與$conf["formEnd"]參數使用
134
$conf["formEnd"]="true";#爲是否要表單結束,如果爲"true"則代表要表單結束,預設為"false".
135
#參考資料來源:
136
#http://stackoverflow.com/questions/3014649/how-to-disable-html-button-using-javascript
137
var_dump(form::button($conf));
138
unset($conf);
139
 
140
*/
141
 
142
#提示正在測試的項目
143
echo "<hr>form::start & form::inputHidden & form::button form::end & form::responseInputData & form::responseInputDataSecurityEnhance & form::receiveCustomMultiData & form::responseMultiInputDataSecurityEnhance & form::receiveCustomMultiData";
144
 
145
/*
146
 
147
#涵式說明:
148
#表單開始
149
#回傳的結果:
150
#$result,表單開始的語法
151
#必填的參數:
152
$conf["action"]="formT.php";#爲要交給那個檔案處理該表單傳送的內容
153
#可省略的參數:
154
#$conf["name"]="";#爲該表單的名稱
155
#$conf["method"]="";#爲傳輸的方法,若沒設定則預設爲post,其他可用的參數爲get。
156
#$conf["target"]="";#為顯示的方式,若沒設定則預設爲"_self",其他可用的參數爲 "_blank"、"_parent"、"_top",也可以是iframe的名稱。
157
#$conf["tableStart"]="true";#爲該表單是否要以<table>開始。"true"爲是;
158
#$conf["tableClass"]="";#表格要套用的css樣式,若省略的話,則預設爲 __defaultTbaleCsssStyle 其屬性爲 table-layout:fixed word-break:break-all width:100%
159
var_dump(form::start($conf));
160
unset($conf);	
161
 
162
#涵式說明:
163
#隱藏的表單傳送資訊
164
#回傳的結果:
165
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
166
#$result["error"],錯誤訊息
167
#$result["content"],語法
168
#$result["function"],當前執行的函數名稱
169
#必填的參數:
170
$conf["name"]="responseInputData";#隱藏的表單名稱
171
$conf["value"]="responseInputData";#等於要傳送的數值		
172
#可省略的參數:
173
var_dump(form::inputHidden($conf));
174
unset($conf);
175
 
176
#涵式說明:
177
#隱藏的表單傳送資訊
178
#回傳的結果:
179
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
180
#$result["error"],錯誤訊息
181
#$result["content"],語法
182
#$result["function"],當前執行的函數名稱
183
#必填的參數:
184
$conf["name"]="responseInputDataSecurityEnhance";#隱藏的表單名稱
185
$conf["value"]="<iframe=responseInputDataSecurityEnhance></iframe>";#等於要傳送的數值		
186
#可省略的參數:
187
var_dump(form::inputHidden($conf));
188
unset($conf);
189
 
190
#涵式說明:
191
#隱藏的表單傳送資訊
192
#回傳的結果:
193
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
194
#$result["error"],錯誤訊息
195
#$result["content"],語法
196
#$result["function"],當前執行的函數名稱
197
#必填的參數:
198
$conf["name"]="responseMultiInputData1";#隱藏的表單名稱
199
$conf["value"]="responseMultiInputData1";#等於要傳送的數值		
200
#可省略的參數:
201
var_dump(form::inputHidden($conf));
202
unset($conf);
203
 
204
#涵式說明:
205
#隱藏的表單傳送資訊
206
#回傳的結果:
207
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
208
#$result["error"],錯誤訊息
209
#$result["content"],語法
210
#$result["function"],當前執行的函數名稱
211
#必填的參數:
212
$conf["name"]="responseMultiInputData2";#隱藏的表單名稱
213
$conf["value"]="responseMultiInputData2";#等於要傳送的數值		
214
#可省略的參數:
215
var_dump(form::inputHidden($conf));
216
unset($conf);
217
 
218
#涵式說明:
219
#隱藏的表單傳送資訊
220
#回傳的結果:
221
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
222
#$result["error"],錯誤訊息3
223
#$result["content"],語法
224
#$result["function"],當前執行的函數名稱
225
#必填的參數:
226
$conf["name"]="responseMultiInputData3";#隱藏的表單名稱
227
$conf["value"]="responseMultiInputData3";#等於要傳送的數值		
228
#可省略的參數:
229
var_dump(form::inputHidden($conf));
230
unset($conf);
231
 
232
#涵式說明:
233
#隱藏的表單傳送資訊
234
#回傳的結果:
235
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
236
#$result["error"],錯誤訊息
237
#$result["content"],語法
238
#$result["function"],當前執行的函數名稱
239
#必填的參數:
240
$conf["name"]="responseMultiInputDataSecurityEnhance1";#隱藏的表單名稱
241
$conf["value"]="responseMultiInputDataSecurityEnhance1";#等於要傳送的數值		
242
#可省略的參數:
243
var_dump(form::inputHidden($conf));
244
unset($conf);
245
 
246
#涵式說明:
247
#隱藏的表單傳送資訊
248
#回傳的結果:
249
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
250
#$result["error"],錯誤訊息
251
#$result["content"],語法
252
#$result["function"],當前執行的函數名稱
253
#必填的參數:
254
$conf["name"]="responseMultiInputDataSecurityEnhance2";#隱藏的表單名稱
255
$conf["value"]="responseMultiInputDataSecurityEnhance2";#等於要傳送的數值		
256
#可省略的參數:
257
var_dump(form::inputHidden($conf));
258
unset($conf);
259
 
260
#涵式說明:
261
#隱藏的表單傳送資訊
262
#回傳的結果:
263
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
264
#$result["error"],錯誤訊息
265
#$result["content"],語法
266
#$result["function"],當前執行的函數名稱
267
#必填的參數:
268
$conf["name"]="responseMultiInputDataSecurityEnhance3";#隱藏的表單名稱
269
$conf["value"]="<hr><a href=http://www.google.com.tw></a><iframe=responseMultiInputDataSecurityEnhance3.php></iframe><br>";#等於要傳送的數值		
270
#可省略的參數:
271
var_dump(form::inputHidden($conf));
272
unset($conf);
273
 
274
#函數說明:
275
#建立多個session變數
276
#回傳結果:
277
#$result["status"],執行狀態,"true"代表執行成功;"false"代表執行失敗.
278
#$reuslt["function"],當前執行的函數.
279
#$result["error"],錯誤訊息陣列.
280
#必填參數:
281
#$conf["sessionArrayName"],字串陣列,要建立的session陣列變數名稱,建議可採用name1.name2.name3的格式。
282
$conf["sessionArrayName"]=array("responseMultiInputDataSecurityEnhance4","responseMultiInputDataSecurityEnhance5");
283
#$conf["sessionArrayValue"],字串陣列,session變數的內容要存放什麼呢?
284
$conf["sessionArrayValue"]=array("responseMultiInputDataSecurityEnhance4","<hr><a href=http://www.google.com.tw></a><iframe=responseMultiInputDataSecurityEnhance5.php></iframe>");
285
#可省略參數:
286
#無
287
var_dump(session::createMulti($conf));
288
unset($conf);
289
 
290
#涵式說明:
291
#隱藏的表單傳送資訊
292
#回傳的結果:
293
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
294
#$result["error"],錯誤訊息
295
#$result["content"],語法
296
#$result["function"],當前執行的函數名稱
297
#必填的參數:
298
$conf["name"]="receiveCustomMultiData1";#隱藏的表單名稱
299
$conf["value"]="receiveCustomMultiData1";#等於要傳送的數值		
300
#可省略的參數:
301
var_dump(form::inputHidden($conf));
302
unset($conf);
303
 
304
#涵式說明:
305
#隱藏的表單傳送資訊
306
#回傳的結果:
307
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
308
#$result["error"],錯誤訊息
309
#$result["content"],語法
310
#$result["function"],當前執行的函數名稱
311
#必填的參數:
312
$conf["name"]="receiveCustomMultiData2";#隱藏的表單名稱
313
$conf["value"]="<hr><a href = receiveCustomMultiData2></a><p>";#等於要傳送的數值		
314
#可省略的參數:
315
var_dump(form::inputHidden($conf));
316
unset($conf);
317
 
318
#函式說明:
319
#放置按鈕
320
#回傳結果:
321
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
322
#$result["function"],當前執行的函數.
323
#$result["error"],錯誤訊息陣列.
324
#$result["content"],按鈕語法. 
325
#必要的參數:
326
$conf["buttonDisplayValue"]="test";#爲按鈕上顯示的文字。
327
#可省略的參數:
328
#$conf["buttonStyleName"]="";#可省略,爲按鈕所要使用的css樣式類別名稱,預設的css樣式爲 __simpleButtonLinkDefaultButtonCssStyle 。
329
	#其屬性爲   "width","height","font-size","text-align"
330
	#其屬性值爲 "100%" ,  "50"  ,    "30"   ,   "center"
331
#$conf["buttonActionScriptFunction"]="";#可省略,爲按下按鈕時所要執行的javaScript函式,預設不設定。
332
	#"document.forms.formName.submit()"爲傳送名爲testForm的表單內容
333
	#"window.print()"爲使用瀏覽器內建工具列印當前網頁
334
#$conf["buttonBorder"]="20";#可省略,爲IE9內會自動產生外框,此爲外框的厚度,屬性值爲正整數,預設爲0。
335
#$conf["disabled"]="true";#可省略,為按鈕的功能是否要取消,若為"true"則代表要取消,若為"false"則代表功能正常,預設為"false".
336
#$conf["tableStart"]="true";#爲是否要表格開始。"false"代表否,"true"代表是。預設爲"false"。
337
#$conf["tableClass"]="";#表格要套用的css樣式,若省略的話,則預設爲 __defaultTbaleCsssStyle 其屬性爲 table-layout:fixed word-break:break-all width:100% ,須搭配 $conf["tablStart"] 與 $conf["tableEnd"] 使用。
338
#$conf["trStart"]="true";#爲是否要以<tr>開頭,"true"表示"是"。也可以看作新的一列開始,預設為"false".
339
#$conf["trClass"]="__withoutBorder";#<tr>要套用的css樣式,"__withoutBorder"爲沒有框線的樣式;__withBorder爲有框線的樣式
340
#$conf["tdStart"]="true";#爲是否要以<td>開頭,"true"表示"是"。也可以看成列裏面的元素開始,預設為"false".
341
#$conf["tdClass"]="__withoutBorder";#<td>要套用的css樣式,"__withoutBorder"爲沒有框線的樣式;__withBorder爲有框線的樣式
342
#$conf["tdEnd"]="true";#爲是否要以</td>結尾,"true"表示"是"。也可以看成列裏面的元素結束,預設為"false".
343
#$conf["trEnd"]="true";#爲是否要以</tr>結尾,"true"表示"是"。也可以看作該列結束,預設為"false".
344
#$conf["tableEnd"]="true";#爲是否要表格結束。"false"代表否,"true"代表是,預設爲"false"。
345
#$conf["formStart"]="true";#爲是否要表單開始,如果爲"true"則代表要表單開始,預設為"false".
346
#$conf["action"]="";#爲表單要傳送到哪個頁面,須搭配$conf["formStart"]與$conf["formEnd"]參數使用
347
#$conf["target"]="_blank";#為目標表單顯示的方式,若沒設定則預設爲"_self",其他可用的參數爲 "_blank"、"_parent"、"_top",也可以是iframe的名稱。須搭配$conf["formStart"]與$conf["formEnd"]參數使用
348
#$conf["formEnd"]="true";#爲是否要表單結束,如果爲"true"則代表要表單結束,預設為"false".
349
#參考資料來源:
350
#http://stackoverflow.com/questions/3014649/how-to-disable-html-button-using-javascript
351
var_dump(form::button($conf));
352
unset($conf);
353
 
354
#涵式說明:
355
#若有表單透過POST或GET的方式傳送的資料,則將內容回傳,若是用GET的方式傳送則轉址到 $headerLocation
356
#回傳的結果:
357
#$result["status"],執行正常與否,"true"代表正常,"false"代表不正常.
358
#$result["error"],錯誤訊息陣列.
359
#$resutl["function"],當前執行的涵式名稱.
360
#$result["content"],表單結束的語法.		
361
#必填的參數:
362
$conf["inputName"]="responseInputData";#讀取表單的資料時用來辨別的名稱。
363
#可省略的參數
364
#$conf["refuseGetMethod"]="true";#是否要擋 get 傳值,如果有設置,則不檔GET傳值。
365
#$conf["transferLocation"]="";#如果是用GET傳值,則轉址到那個網址,預設爲資安素養網"https://isafe.moe.edu.tw/"
366
#$conf["correctCharacter"]="false";#如果爲"false",則不處理可能導致網頁出問題的字串,預設為"true".
367
#參考資料:
368
#伺服器端的變數 -> http://php.net/manual/en/reserved.variables.server.php
369
var_dump(form::responseInputData($conf));
370
unset($conf);
371
 
372
#涵式說明:
373
#若有表單透過POST或GET的方式傳送的資料,則將內容回傳,若是用GET的方式傳送則轉址到 $headerLocation
374
#回傳的結果:
375
#$result["status"],是否執行成功,"true"代表執行成功;"false"代表執行失敗。
376
#$result["function"],當前執行的函數名稱.
377
#$result["error"],錯誤訊息。
378
#$result["reveivedVarName"],接收到的變數名稱
379
#$result["receivedVarValue"],接收到的變數內容
380
#$result["HTTP_REFERER"],前一頁的網址,null為不存在的意思.
381
#必填的參數:
382
$conf["inputName"]="responseInputDataSecurityEnhance";#讀取表單的資料時用來辨別的名稱,
383
#可省略的參數
384
#$conf["receiveType"]="POST";#要接收 post/POST 或 get/GET 的變數,預設爲 POST
385
#$conf["allowGet"]="true";#是否要允許 get 傳值,"true",代表允許;"false" ,代表不允許,預設爲不允許。
386
#$conf["limitPrePage"]=array();#限定前一頁的網址須爲改陣列裏面的其中一個位置,才能接收內容,不符合則轉址。
387
#$conf["transferLocation"]="";#如果是用GET傳值,則轉址到那個網址,預設爲資安素養網"https://isafe.moe.edu.tw/"
388
#$conf["correctCharacter"]="false";#如果爲"false",則不處理可能導致網頁出問題的字串,預設為"true".
389
#參考資料:
390
#伺服器端的變數 -> http://php.net/manual/en/reserved.variables.server.php
391
var_dump(form::responseInputDataSecurityEnhance($conf));
392
unset($conf);
393
 
394
#涵式說明:
395
#可以處理多個透過GET、POST而來的資訊,儲存成變數。
396
#回傳的結果:
397
#$result["status"],執行正常與否,"true"代表正常,"false"代表不正常.
398
#$result["error"],錯誤訊息陣列.
399
#$resutl["function"],當前執行的涵式名稱.
400
#$result["inputDataContent"],所接收的參數陣列。
401
#$result["inputDataCount"],總共接收到幾個元素。
402
#$result["inputDataKey"],所接收到的參數陣列元素key值。
403
#必填的參數:
404
$conf["method"]="post";#傳送過來的資料是用"post/POST"還是"get/GET"?
405
#可省略的參數:
406
#$conf["stopGetMethod"]="true";#若設爲"true",則遇到以get方式傳送過來的數值時,則進行轉址,若為"false"則不轉址,預設為"true".
407
#$conf["transferLocation"]="";#遇到get傳值的時候要轉址到的頁面,預設爲資安素養網"https:#isafe.moe.edu.tw/"
408
$conf["ignore"]=array("responseInputData","responseInputDataSecurityEnhance");#如果要接收的變數名稱與該陣列其一元素一樣,則不放進要回傳的變數裏面。
409
#$conf["correctCharacter"]="false";#如果爲"false",則不處理可能導致網頁出問題的字串,預設爲要進行處理。
410
#參考資料來源:
411
#foreach 的用法 -> http:#php.net/manual/en/control-structures.foreach.php
412
#改善建議:
413
#建議改用 responseInputData 實作
414
var_dump(form::responseMultiInputData($conf));
415
unset($conf);
416
 
417
#涵式說明:
418
#可以處理多個透過GET、POST而來的資訊,儲存成變數,同時限定傳送的方法、來源,來增加安全性,檢查有沒有皆收到必須要接收到的變數,沒有接收到的變數可以指定從session變數中取得.
419
#回傳的結果:
420
#$result["status"],執行正常與否,"true"代表正常,"false"代表不正常.
421
#$result["error"],錯誤訊息陣列.
422
#$resutl["function"],當前執行的涵式名稱.
423
#$result["warning"],警告訊息陣列.
424
#$result["passed"],是否有皆收到全部該接收到的變數,若有設定$conf["checkedVarName"]的話,執行正常後會回傳該結果。
425
#$result["lostVarName"],沒有皆收到的變數名稱陣列
426
#$result["inputDataContent"],所接收的參數陣列.
427
#$result["inputDataContent"]["變數名稱"],所接收變數的內容.
428
#$result["inputDataCount"],從表單總共接收到幾個元素.
429
#$result["HTTP_REFERER"],前一頁的網址,null代表不存在.
430
#必填的參數:
431
#$conf["method"],字串,傳送過來的資料是用"post/POST"還是"get/GET"?
432
$conf["method"]="post";
433
#可省略的參數:
434
#$conf["allowGet"],字串,是否要允許 get 傳值,"true",代表允許;"false" ,代表不允許,預設爲不允許.
435
#$conf["allowGet"]="true";
436
#$conf["limitPrePage"],字串陣列,是否要限定前一頁的網址為哪些,才能接收內容,不符合則轉址.
437
$conf["limitPrePage"]=array("formT.php","index.php","testCase");
438
#$conf["transferLocation"],字串,遇到get傳值,或前一個頁面不符合要求時要轉址到的頁面,預設爲資安素養網"https://isafe.moe.edu.tw/"
439
#$conf["transferLocation"]="";
440
#$conf["ignore"]=字串陣列,如果要接收的變數名稱與該陣列其一元素一樣,則不放進要回傳的變數裏面.
441
$conf["ignore"]=array("responseInputData","responseInputDataSecurityEnhance");
442
#$conf["correctCharacter"]=,字串,如果爲"false",則不處理可能導致網頁出問題的字串,預設爲要進行處理.
443
#$conf["correctCharacter"]="false";
444
#$conf["checkedVarName"],字串陣列,為檢查是否有接收到哪些變數.
445
$conf["checkedVarName"]=array("responseMultiInputDataSecurityEnhance1","responseMultiInputDataSecurityEnhance2","responseMultiInputDataSecurityEnhance3","responseMultiInputDataSecurityEnhance4","responseMultiInputDataSecurityEnhance5"); 
446
#$conf["canBeEmptyString"],字串,用$conf["checkedVarName"]指定接收的變數名稱陣列,若接收到的內容為空字串是否算有接收到內容,預設為"false","true"代表接收到的內容可以為空字串,"false"代表接收到的內容不可以為空字串.	
447
#$conf["canBeEmptyString"]="false";
448
#$conf["sessionNameArray"],陣列,若存在則代表若沒有從表單取得變數,則從session變數中取得內容,每個元素代表每個表單變數對應的session名稱,若不是要改用session方式取得變數內容的變數,請輸入null,數量請跟$conf["checkedVarName"]參數一致.
449
$conf["sessionNameArray"]=array(null,null,null,"responseMultiInputDataSecurityEnhance4","responseMultiInputDataSecurityEnhance5");
450
#$conf["unsetSessionArray"],陣列,與$conf["sessionNameArray"]對應的元素,是否要接收到變數後就卸除,"true"代表要卸除,"false"代表不要卸除.
451
$conf["unsetSessionArray"]=array("false","false","false","true","true");
452
#參考資料來源:
453
#foreach 的用法 -> http://php.net/manual/en/control-structures.foreach.php
454
#伺服器端的變數 -> http://php.net/manual/en/reserved.variables.server.php
455
#備註:
456
#表單變數的名稱若含有「.」,則會變成「-」。
457
var_dump(form::responseMultiInputDataSecurityEnhance($conf));
458
unset($conf);
459
 
460
#函數說明:
461
#能夠接收數個指定的變數名稱
462
#回傳的結果:
463
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
464
#$result["function"],當前執行的函數
465
#$result["error"],涵式錯誤訊息,若爲""則表示沒有錯誤 
466
#$result["getedValue"][$elementKey],取得的變數內容,請將「$elementKey」替換成要取得的表單傳送名稱,例如:$result["getedValue"]["account"],如果該變數不存在則其值會等於null.
467
#必填的參數:
468
$conf["receivedVarArray"]=array("receiveCustomMultiData1","receiveCustomMultiData2","receiveCustomMultiData3");#要接收的參數陣列
469
#可省略的參數:
470
#$conf["method"]=;#傳送過來的資料是用"post/POST"還是"get/GET"?預設爲post。
471
var_dump(form::receiveCustomMultiData($conf));
472
 
473
*/
474
 
475
#提示正在測試的項目
476
echo "<hr>form::sendHugeDataButton & form::responseMultiInputData<br>";	
477
 
478
/*
479
 
480
#涵式說明:
481
#一個簡單的按鈕,按了可以到指定的頁面。同時也可以傳送多個隱藏的變數
482
#必填的參數:
483
$conf["actionPage"]=$_SERVER["PHP_SELF"];#按鈕按了之後要到哪個地方?若爲 $_SERVER["PHP_SELF"],則爲回到目前頁面。
484
$conf["buttonDisplayValue"]="test";#按鈕上要顯示的文字
485
#可以省略的參數:
486
#$conf["buttonStyleName"]="";#按鈕的css樣式應該爲何,若省略的話預設會採用 __simpleButtonLinkDefaultButtonCssStyle 的樣式
487
	#其屬性爲   "width","height","font-size","text-align"
488
	#其屬性值爲 "300"  ,  "50"  ,    "30"   ,   "center"
489
#備註:
490
# __simpleButtonLinkDefaultButtonCssStyle,爲預設的按鈕css樣式,請勿使用相同類別名稱的css樣式,以免衝突。
491
# __simpleButtonLinkDefaultTableCssStyle,爲預設的表格css樣式,請勿使用相同類別名稱的css樣式,以免衝突。
492
$conf["hiddenVarName"]=array("id","account","password");#要傳送的隱藏變數名稱,與 $conf["hiddenVarContent"] 相對應。
493
$conf["hiddenVarContent"]=array("777","guestAccount","guestPassword");#要傳誦的隱藏變數內容,與 $conf["hiddenVarName"] 相對應。
494
#$conf["disabled"],字串,為按鈕的功能是否要取消,若為"true"則代表要取消,若為"false"則代表功能正常,預設為"false".
495
#$conf["disabled"]="true";
496
#$conf["formStart"],字串,爲是否要表單開始,如果爲"true"則代表要表單開始,預設爲"false".
497
$conf["formStart"]="true";
498
#$conf["method"],字串,爲傳輸的方法,若沒設定則預設爲post,其他可用的參數爲get。
499
#$conf["method"]="post";
500
#$conf["formName"],字串,該表單的名稱
501
$conf["formName"]="sendHugeDataButtonFormName";
502
#$conf["buttonId"],字串,按鈕的id
503
$conf["buttonId"]="sendHugeDataButtonId";
504
#$conf["actionPage"],字串,按鈕按了之後要到哪個地方?若爲 $_SERVER["PHP_SELF"],則爲回到目前頁面。
505
#$conf["actionPage"]="";
506
#$conf["buttonActionScriptFunction"],字串,爲按下按鈕時所要執行的javaScript函式,預設不設定,可以是"document.forms.formName.submit()"(傳送名爲testForm的表單內容).
507
#$conf["buttonActionScriptFunction"]="";
508
#$conf["formEnd"],字串,爲是否要表單結束,如果爲"true"則代表要表單結束,預設爲"false"
509
$conf["formEnd"]="true";
510
#$conf["tableStart"],字串,爲是否要表格開始,"true"表示"是",預設為"false".
511
#$conf["tableStart"]="true";
512
#$conf["tableClass"],字串,爲表格要採用的css樣式名稱,"__withoutBorder"代表沒有框線的預設樣式;"__withBorder"代表有框線的預設樣式,預設為"__withoutBorder".
513
#$conf["tableClass"]="__withoutBorder";
514
#$conf["trStart"],字串,爲是否要以<tr>開頭,"true"表示"是"。也可以看作新的一列開始,預設為"false".
515
#$conf["trStart"]="true"
516
#$conf["trClass"],字串,列開始的css樣式,"__withoutBorder"代表沒有框線的預設樣式;"__withBorder"代表有框線的預設樣式,預設為"__withoutBorder"
517
#$conf["trClass"]="__withoutBorder";
518
#$conf["tdStart"],字串,爲是否要以<td>開頭,"true"表示"是"。也可以看成列裏面的元素開始,預設為"false"
519
#$conf["tdStart"]="true";
520
#$conf["tdClass"],字串,行開始的css樣式,"__withoutBorder"代表沒有框線的預設樣式;"__withBorder"代表有框線的預設樣式,預設為"__withoutBorder"
521
#$conf["tdClass"]="__withoutBorder";
522
#$conf["tdEnd"],字串,爲是否要以</td>結尾,"true"表示"是"。也可以看成列裏面的元素結束,預設為"false".
523
#$conf["tdEnd"]="true";
524
#$conf["trEnd"],字串,爲是否要以</tr>結尾,"true"表示"是"。也可以看作該列結束,預設為"false".
525
#$conf["trEnd"]="true";
526
#$conf["displayTarget"],字串,頁面的呈現方法,可以是開新視窗(_blank)、在目前頁面、頁框裏面(_self)、在父頁面(_parent)、最上層頁面(_top),預設為"_top"。
527
#$conf["displayTarget"]="";
528
#$conf["tableEnd"],字串,爲是否要表格結束,"true"表示"是",預設為"false".
529
#$conf["tableEnd"]="true";
530
var_dump(form::sendHugeDataButton($conf));
531
unset($conf);
532
 
533
#涵式說明:
534
#可以處理多個透過GET、POST而來的資訊,儲存成變數。
535
#回傳的結果:
536
#$result["inputDataContent"],所接收的參數陣列。
537
#$result["inputDataCount"],總共接收到幾個元素。
538
#$result["inputDataKey"],所接收到的參數陣列元素key值。
539
	#必填的參數:
540
$conf["method"]="post";#傳送過來的資料是用"post/POST"還是"get/GET"?
541
#可省略的參數:
542
#$conf["stopGetMethod"]="true";#若設爲"true",則遇到以get方式傳送過來的數值時,則進行轉址。
543
#$conf["transferLocation"]="";#遇到get傳值的時候要轉址到的頁面,預設爲資安素養網"https:#isafe.moe.edu.tw/"
544
#$conf["ignore"]=array();#如果要接收的變數名稱與該陣列其一元素一樣,則不放進要回傳的變數裏面。
545
#$conf["correctCharacter"]="false";#如果爲"false",則不處理可能導致網頁出問題的字串,預設爲要進行處理。
546
#參考資料來源:
547
#foreach 的用法
548
#http:#php.net/manual/en/control-structures.foreach.php
549
var_dump(form::responseMultiInputData($conf));
550
unset($conf);
551
 
552
#函數說明:
553
#能夠接收數個指定的變數名稱
554
#回傳的結果($result爲回傳結果的範例變數名稱,請依實際情況進行修改。):
555
#$result["getedValue"][$elementKey],取得的變數內容,請將「$elementKey」替換成要取得的表單傳送名稱。
556
	#例如:$result["getedValue"]["account"]
557
#必填的參數:
558
$conf["receivedVarArray"]=array("account","password");#要接收的參數陣列
559
#可省略的參數:
560
#$conf["method"]=;#傳送過來的資料是用"post/POST"還是"get/GET"?預設爲post。
561
#$conf["stopGetMethod"]="true";#若設爲"true",則遇到以get方式傳送過來的數值時,則進行轉址。預設爲false
562
#$conf["transferLocation"]="";#遇到get傳值的時候要轉址到的頁面,預設爲資安素養網"https:#isafe.moe.edu.tw/"
563
var_dump(form::receiveCustomMultiData($conf));
564
unset($conf);
565
 
566
*/
567
 
568
#說明正在測試的部分
569
echo"<hr>form::buttonImg - testCase 1<br>";
570
 
571
/*
572
 
573
#以圖片代替的表單送出扭
574
#回傳結果:
575
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
576
#$result["function"],當前執行的函數.
577
#$result["error"],錯誤訊息陣列.
578
#$result["content"],按鈕語法. 
579
#必填的參數:
580
$conf["img"]="fedoraBear.png";#爲要作爲按鈕的圖片位置。
581
#可省略的參數:
582
$conf["formStart"]="true";#爲是否要表單開始,如果爲"true"則代表要表單開始,預設為"false".
583
$conf["formAction"]="formT.php";#字串,表單要傳送到哪邊
584
#$conf["legend"]="圖片按鈕";#字串,表單的名稱.
585
#$conf["formMethod"]="";#字串,表單傳送的方式,預設為"post",也可以使用"get".
586
$conf["formTarget"]="_blank";#字串,表單的回應要呈現在哪邊,預設為"_self"(當前頁面、頁框),"_top"為整個頁面,"_parent"為父頁面,"_blank"為開新頁面,也可以為iframe的名稱.
587
$conf["formEnd"]="true";#爲是否要表單結束,如果爲"true"則代表要表單結束,預設為"false".
588
#$conf["width"]="";#爲按鈕圖片的寬度,若省略,則按照原始圖片的寬度。
589
#$conf["height"]="";#爲按鈕圖片的高度,若省略,則按照原始圖片的高度。
590
#$conf["class"]="";#爲按鈕圖片要套用的css樣式名稱,若省略,則不套用任何css樣式。
591
#$conf["trStart"]="true";#爲是否要以<tr>開頭,"true"表示"是"。也可以看作新的一列開始。
592
#$conf["tdStart"]="true";#爲是否要以<td>開頭,"true"表示"是"。也可以看成列裏面的元素開始
593
#$conf["tdEnd"]="true";#爲是否要以</td>結尾,"true"表示"是"。也可以看成列裏面的元素結束
594
#$conf["trEnd"]="true";#爲是否要以</tr>結尾,"true"表示"是"。也可以看作該列結束。
595
#$conf["formId"],字串,表單的id.
596
$conf["formId"]="formId";
597
#$conf["buttonId"],字串,按鈕的id.
598
$conf["buttonId"]="buttonId";
599
#備註:
600
#使用圖片作為傳送按時,會傳送點擊圖片的x軸與y軸數數值.
601
var_dump(form::buttonImg($conf));
602
unset($conf);
603
 
604
*/
605
 
606
#說明正在測試的部分
607
echo"<hr>form::buttonReset - testCase 1";
608
 
609
/*
610
 
611
#涵式說明:
612
#表單開始
613
#回傳的結果:
614
#$result,表單開始的語法
615
#必填的參數:
616
$conf["action"]="formT.php";#爲要交給那個檔案處理該表單傳送的內容
617
#可省略的參數:
618
#$conf["name"]="";#爲該表單的名稱
619
#$conf["method"]="";#爲傳輸的方法,若沒設定則預設爲post,其他可用的參數爲get。
620
#$conf["target"]="";#為顯示的方式,若沒設定則預設爲"_self",其他可用的參數爲 "_blank"、"_parent"、"_top",也可以是iframe的名稱。
621
#$conf["tableStart"]="true";#爲該表單是否要以<table>開始。"true"爲是;
622
#$conf["tableClass"]="";#表格要套用的css樣式,若省略的話,則預設爲 __defaultTbaleCsssStyle 其屬性爲 table-layout:fixed word-break:break-all width:100%
623
var_dump(form::start($conf));
624
unset($conf);	
625
 
626
#涵式說明:
627
#可以輸入文字的表單
628
#回傳的結果:
629
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
630
#$result["function"],當前執行的函數.
631
#$result["error"],錯誤訊息陣列.
632
#$result["content"],按鈕語法. 
633
#必填的參數
634
$conf["name"]="oneLine";#爲該文字輸入框的名稱,用於讓接收頁面讀取的名稱。
635
$conf["readOnly"]="false";#爲該文字框是否可以填寫資料,若要只能觀看不能填寫,那麼就必須將其值設爲"true",反之要設爲"false"
636
#可省略的參數:
637
#$conf["width"]="";#爲文字框的外觀長度,預設為"100%".
638
$conf["maxInputLength"]="10";#爲可輸入的最大位元長度,預設不限制。
639
$conf["autoFocus"]="true";#是否為將填寫的指標移到該表單,"true"代表要,預設為"false".
640
$conf["value"]="清空後會顯示文字";#爲該文字框預設要顯示的文字,預設爲""。	
641
#$conf["class"]="";#爲要套用的css樣式,若省略,則會套用預設的 "__inputTextCssStyle" 樣式,其屬性爲 "width:100%","font-size:30px"
642
#$conf["jsActivitor"]="";#爲觸發js的條件,可以是"onChange"(已改變內容時)、"onClick"(按下按鈕時)、"onkeyup"(當鍵盤按下放開後)、"onmouseover"(當滑鼠移過去的時候)...,須搭配$conf["jsSubmitActionTarget"]參數。
643
#$conf["jsAction"]="";#爲該js是要做什麼,可以是"document.testForm.submit()"(傳送名爲testForm的表單內容)...,須搭配$conf["jsActivitor"]參數。		
644
#$conf["trStart"]="true";#爲是否要以<tr>開頭,"true"表示"是"。也可以看作新的一列開始,預設為"false".
645
#$conf["tdStart"]="true";#爲是否要以<td>開頭,"true"表示"是"。也可以看成列裏面的元素開始,預設為"false".
646
#$conf["formStart"]="true";#爲是否要以<form>開頭,"true"表示"是",也可以看成表單的開始,預設為"false".
647
#$conf["formAction"]="";#表單遞交的目的地,若$conf["formStart"]為"true",則該參數不能省略.
648
#$conf["formName"]="";#爲該表單的名稱
649
#$conf["formMethod"]="";#爲傳輸的方法,若沒設定則預設爲post,其他可用的參數爲get。
650
#$conf["formTarget"]="";#為顯示的方式,若沒設定則預設爲"_self",其他可用的參數爲 "_blank"、"_parent"、"_top",也可以是iframe的名稱。
651
#$conf["tableStart"]="true";#爲該表單是否要以<table>開始。"true"爲是,預設為"false".
652
#$conf["tableClass"]="";#表格要套用的css樣式,若爲"__withoutBorder"的話則套用無框線的預設樣式;若爲"__withBorder"的話,則爲有框線的預設樣式,預設為"__withoutBorder".
653
#$conf["formEnd"]="true";#爲是否要以<form>結尾,"true"表示"是",也可以看成表單的結束,預設為"false".
654
#$conf["tdEnd"]="true";#爲是否要以</td>結尾,"true"表示"是"。也可以看成列裏面的元素結束,預設為"false".
655
#$conf["trEnd"]="true";#爲是否要以</tr>結尾,"true"表示"是"。也可以看作該列結束,預設為"false".
656
#$conf["tableEnd"]="true";#爲該表單是否要以</table>結尾,"true"爲是,預設為"false".
657
#$conf["autocomplete"],字串,是否依據使用者過往輸入的記錄來提示可能要的輸入內容,"on"為啟用,"off"為停用,預設為"on".
658
$conf["autocomplete"]="off";
659
#$conf["required"],字串,該欄位是否必填,"true"為必填,"false"為可留空,預設為"false".
660
$conf["required"]="true";
661
#$conf["comment"],字串,輸入方框上面要放哪些註解文字,亦即用label來呈現,同時指定"for"屬性的數值為當前"input"標籤的id,意即參數"name"的內容.
662
$conf["comment"]="我是Label喲~";
663
#$conf["placeholder"],字串,當沒有內容時要顯示的內容.
664
$conf["placeholder"]="請隨意輸入";
665
#$conf["br"],字串,"true"代表最後要換行,預設為"false".
666
#$conf["br"]="true";
667
#$conf["p"],字串,"true"代表最後要空一行,預設為"false".
668
#$conf["p"]="true";
669
#參考資料來源:
670
#input=>http://www.w3schools.com/tags/tag_input.asp
671
var_dump(form::inputText($conf));
672
unset($conf);
673
 
674
#說明:
675
#表單清空的按鈕
676
#必填的參數:
677
$conf["value"]="預設值";#爲清空表單內容的按鈕顯示名稱
678
#可省略的參數:
679
#$conf["class"]="";#爲要套用的css樣式名稱。
680
#$conf["trStart"]="true";#爲是否要以<tr>開頭,"true"表示"是"。也可以看作新的一列開始。
681
#$conf["tdStart"]="true";#爲是否要以<td>開頭,"true"表示"是"。也可以看成列裏面的元素開始
682
	#$conf["tdEnd"]="true";#爲是否要以</td>結尾,"true"表示"是"。也可以看成列裏面的元素結束
683
#$conf["trEnd"]="true";#爲是否要以</tr>結尾,"true"表示"是"。也可以看作該列結束。
684
#$conf["buttonId"],字串,按鈕的id.
685
$conf["buttonId"]="resetButtonId";
686
var_dump(form::buttonReset($conf));
687
unset($conf);
688
 
689
#涵式說明:
690
#表單結束
691
#回傳的結果:
692
#$result,表單結束的語法
693
#必填寫的參數:
694
$conf["tableEnd"]="false";#爲該表單是否要以</table>結尾。"true"爲是;"false"爲否。
695
var_dump(form::end($conf));
696
unset($conf);
697
 
698
*/
699
 
700
#說明正在測試的部分
701
echo"<hr>form::start & form::inputTextArea & form::inputPassword & form::inputSelect & form::inputRadio & form::inputCheckBox & form::end";
702
 
703
/*
704
 
705
#涵式說明:
706
#表單開始
707
#回傳的結果:
708
#$result,表單開始的語法
709
#必填的參數:
710
$conf["action"]="formT.php";#爲要交給那個檔案處理該表單傳送的內容
711
#可省略的參數:
712
#$conf["name"]="";#爲該表單的名稱
713
#$conf["method"]="";#爲傳輸的方法,若沒設定則預設爲post,其他可用的參數爲get。
714
#$conf["target"]="";#為顯示的方式,若沒設定則預設爲"_self",其他可用的參數爲 "_blank"、"_parent"、"_top",也可以是iframe的名稱。
715
#$conf["tableStart"]="true";#爲該表單是否要以<table>開始。"true"爲是;
716
#$conf["tableClass"]="";#表格要套用的css樣式,若省略的話,則預設爲 __defaultTbaleCsssStyle 其屬性爲 table-layout:fixed word-break:break-all width:100%
717
echo form::start($conf)["content"];
718
unset($conf);	
719
 
720
#涵式說明:
721
#可以輸入文字的區塊
722
#回傳結果:
723
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
724
#$result["function"],當前執行的函數.
725
#$result["error"],錯誤訊息陣列.
726
#$result["content"],按鈕語法. 		
727
#必填的參數:
728
$conf["name"]="textArea";#爲文字輸入框的名稱,供接收端辨識用。
729
$conf["readOnly"]="false";#爲是否要爲唯讀,如果爲"true",則爲唯讀。反之則爲"false"。
730
#可省略的參數:
731
$conf["width"]="100%";#為輸入框的寬度,預設不指定.
732
#$conf["cols"]="";#爲文字輸入框的欄位數(寬),預設爲按照瀏覽器設定值。
733
#$conf["rows"]="";#爲文字輸入框的列數(高),預設爲按照瀏覽器設定值。
734
#$conf["maxInputLength"]="";#爲文字輸入的長度限制,預設無限制。
735
$conf["defaultText"]="請任意輸入";#爲文字輸入框裏面的預設文字內容,預設是空的。
736
#$conf["class"]=;#爲要套用的css樣式。如果沒有指定 ,則採用預設的css樣式,"__inputTextAreaCssStyle",其屬性爲 "width:100%","height:120px","font-size:30px"
737
#$conf["jsActivitor"]="";#爲觸發js的條件,可以是"onChange"(已改變內容時)...,須搭配$conf["jsSubmitActionTarget"]參數。
738
#$conf["jsAction"]="";#爲該js是要做什麼,可以是"document.testForm.submit()"(傳送名爲testForm的表單內容)...,須搭配$conf["jsActivitor"]參數。
739
#$conf["formStart"]="true";#爲是否要以<form>開頭,"true"表示"是",也可以看成表單的開始,預設為"false".
740
#$conf["formAction"]="";#表單遞交的目的地,若$conf["formStart"]為"true",則該參數不能省略.
741
#$conf["formName"]="";#爲該表單的名稱
742
#$conf["formMethod"]="";#爲傳輸的方法,若沒設定則預設爲post,其他可用的參數爲get。
743
#$conf["formTarget"]="";#為顯示的方式,若沒設定則預設爲"_self",其他可用的參數爲 "_blank"、"_parent"、"_top",也可以是iframe的名稱。
744
#$conf["formEnd"]="true";#爲是否要以<form>結尾,"true"表示"是",也可以看成表單的結束,預設為"false".
745
#$conf["comment"],字串,輸入方框上面要放哪些註解文字.
746
$conf["comment"]="我是Label~";
747
#$conf["required"],字串,該欄位是否必填,"true"為必填,"false"為可留空,預設為"false".
748
#$conf["required"]="true";
749
#$conf["placeholder"],字串,當沒有內容時要顯示的內容.
750
$conf["placeholder"]="請任意輸入";
751
#$conf["trStart"]="true";#爲是否要以<tr>開頭,"true"表示"是",也可以看作新的一列開始,預設為"false".
752
#$conf["tdStart"]="true";#爲是否要以<td>開頭,"true"表示"是",也可以看成列裏面的元素開始,預設為"false".
753
#$conf["tdEnd"]="true";#爲是否要以</td>結尾,"true"表示"是",也可以看成列裏面的元素結束,預設為"false".
754
#$conf["trEnd"]="true";#爲是否要以</tr>結尾,"true"表示"是",也可以看作該列結束,預設為"false".
755
#參考資料來源:
756
#input=>http://www.w3schools.com/tags/tag_input.asp
757
echo form::inputTextArea($conf)["content"];
758
unset($conf);
759
 
760
#涵式說明:		
761
#可以輸入密碼的表單
762
#回傳的結果:
763
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
764
#$result["function"],當前執行的函數.
765
#$result["error"],錯誤訊息陣列.
766
#$result["content"],按鈕語法. 
767
#必填的參數:
768
$conf["name"]="password";#爲密碼輸入框的名稱,供接收端進行處理時的獨立名稱。
769
#可省略的參數:
770
$conf["width"]="100%";#爲密碼輸入框的長度,預設無限制。
771
$conf["maxInputLength"]="10";#爲密碼輸入的長度限制,預設無限制。
772
#$conf["defaultValue"]="";#預設的密碼
773
#$conf["class"]="";#爲要套用的css樣式,若省略,則會套用預設的 __inputPasswordCssStyle 樣式,其屬性爲 "width:100%","font-size:30px"
774
#$conf["jsActivitor"]="";#爲觸發js的條件,可以是"onChange"(已改變內容時)...,須搭配$conf["jsSubmitActionTarget"]參數。
775
#$conf["jsAction"]="";#爲該js是要做什麼,可以是"document.testForm.submit()"(傳送名爲testForm的表單內容)...,須搭配$conf["jsActivitor"]參數。
776
#$conf["comment"],字串,輸入方框上面要放哪些註解文字.
777
$conf["comment"]="襪系label!";
778
#$conf["placeholder"],字串,當沒有內容時要顯示的內容.
779
$conf["placeholder"]="請輸入密碼";
780
#$conf["trStart"]="true";#爲是否要以<tr>開頭,"true"表示"是",也可以看作新的一列開始,預設為"false".
781
#$conf["tdStart"]="true";#爲是否要以<td>開頭,"true"表示"是",也可以看成列裏面的元素開始,預設為"false".
782
#$conf["tdEnd"]="true";#爲是否要以</td>結尾,"true"表示"是",也可以看成列裏面的元素結束,預設為"false".
783
#$conf["trEnd"]="true";#爲是否要以</tr>結尾,"true"表示"是",也可以看作該列結束,預設為"false".
784
echo form::inputPassword($conf)["content"];
785
#var_dump(form::inputPassword($conf));
786
unset($conf);
787
 
788
#涵式說明:
789
#建立下拉式表單
790
#回傳的結果:
791
#$result,語法
792
#必填的參數: 
793
$conf["name"]="inputSelectT";#爲該下拉式表單的名稱
794
$conf["sendValue"]=array("Asia","American","Eroup","Korean","Japen","China");#爲陣列值,爲每個選項的實際傳送的數值,e.g. $sendValue = array("a","b","c","d","e");
795
#可省略的參數:
796
#$conf["comment"],字串,輸入方框上面要放哪些註解文字,亦即用label來呈現,同時指定"for"屬性的數值為當前"input"標籤的id,意即參數"name"的內容.
797
$conf["comment"]="Label~!";
798
#$conf["outputValue"]=array();#爲陣列值,爲每個選項的實際顯示的數值, e.g. $outputValue = array("p","o","i","t","e");,如果沒有設定,則其值同$conf["sendValue"]。
799
#$conf["viewCount"]="";#為一次要顯示幾個選項,預設爲顯示一個。
800
#$conf["defaultValue"]="";#為預設選取那個選項,須爲$conf["sendValue"]其中的一個值。
801
#$conf["class"]="";#爲要套用的class樣式,若省略的話預設採用 __simpleButtonLinkDefaultButtonCssStyle  的css樣式名稱
802
	#其屬性爲   "width","height","font-size","text-align"
803
	#其屬性值爲 "100%"  ,  "50"  ,    "30"   ,   "center"
804
#$conf["readOnly"],"字串",內容是否唯獨,預設為"false",不唯獨,"true"為唯獨.
805
$conf["readOnly"]="true";
806
#$conf["jsActivitor"]="";#爲觸發js的條件,可以是"onChange"(已改變內容時)...,須搭配$conf["jsSubmitActionTarget"]參數。
807
#$conf["jsAction"]="";#爲該js是要做什麼,可以是"document.testForm.submit()"(傳送名爲testForm的表單內容)...,須搭配$conf["jsActivitor"]參數。
808
#$conf["trStart"]="true";#爲是否要以<tr>開頭,"true"表示"是"。也可以看作新的一列開始。
809
#$conf["tdStart"]="true";#爲是否要以<td>開頭,"true"表示"是"。也可以看成列裏面的元素開始
810
#$conf["tdEnd"]="true";#爲是否要以</td>結尾,"true"表示"是"。也可以看成列裏面的元素結束
811
#$conf["trEnd"]="true";#爲是否要以</tr>結尾,"true"表示"是"。也可以看作該列結束。
812
echo form::inputSelect($conf)["content"]."<br>";
813
unset($conf);
814
 
815
#涵式說明:黑點式選單(單選)
816
#必填參數:
817
$conf["name"]="inputRadioT";#爲黑點式選單的名稱
818
$conf["sendValue"]=array("large","normal","small");#爲陣列值,爲每個選項的實際傳送的數值,e.g. $sendValue = array("a","b","c","d","e");
819
#可省略的參數:
820
#$conf["class"]="";#爲要套用的class樣式
821
#$conf["outputValue"]=array();#爲陣列值,爲每個選項的實際顯示的數值, e.g. $outputValue = array("p","o","i","t","e"); 預設爲跟$conf["sendValue"]一樣。
822
$conf["defaultValue"]="normal";#爲預設的選項,爲實際傳送的數值之一。
823
#$conf["disableHr"]="true";#如果設爲"true",則結尾不用<hr>來結束單選的範圍。
824
#$conf["jsActivitor"]="";#爲觸發js的條件,可以是"onChange"(已改變內容時)...,須搭配$conf["jsSubmitActionTarget"]參數。
825
#$conf["jsAction"]="";#爲該js是要做什麼,可以是"document.testForm.submit()"(傳送名爲testForm的表單內容)...,須搭配$conf["jsActivitor"]參數。
826
#$conf["trStart"]="true";#爲是否要以<tr>開頭,"true"表示"是"。也可以看作新的一列開始。
827
#$conf["tdStart"]="true";#爲是否要以<td>開頭,"true"表示"是"。也可以看成列裏面的元素開始
828
#$conf["tdEnd"]="true";#爲是否要以</td>結尾,"true"表示"是"。也可以看成列裏面的元素結束
829
#$conf["trEnd"]="true";#爲是否要以</tr>結尾,"true"表示"是"。也可以看作該列結束。
830
#$conf["doNotPrint"]="true";#如果設爲"true",則其結果就不會因印出來,而是用回傳的方式。
831
echo form::inputRadio($conf)["content"]."<br>";
832
unset($conf);
833
 
834
#勾選式選單(複選)
835
#必填的參數:	
836
$conf["name"]=array("inputCheckBox1","inputCheckBox2","inputCheckBox3");#爲勾選式選單上各選項的名稱,e.g. $conf["name"]=array("q-1","q-2","q-3","q-4","q-5");
837
$conf["sendValue"]=array("inputCheckBox1Value","inputCheckBox2Value","inputCheckBox3Value");#爲陣列值,爲每個選項的實際傳送的數值,e.g. $conf["sendValue"] = array("a","b","c","d","e");
838
#可省略的參數:
839
#$conf["class"]=;#爲要套用的class樣式
840
$conf["outputValue"]=array("option1","option2","option3");#爲陣列值,爲每個選項的實際顯示的數值, e.g. $conf["outputValue"] = array("p","o","i","t","e"); 預設爲跟$conf["sendValue"]一樣。
841
$conf["checkedOption"]=array("2");#爲那些選項是否要勾選,須爲陣列值。例如array("1","3","4"),就代表第1、3、4個選項是勾選的狀態。
842
#$conf["jsActivitor"]="";#爲觸發js的條件,可以是"onChange"(已改變內容時)...,須搭配$conf["jsSubmitActionTarget"]參數。
843
#$conf["jsAction"]="";#爲該js是要做什麼,可以是"document.testForm.submit()"(傳送名爲testForm的表單內容)...,須搭配$conf["jsActivitor"]參數。	
844
#$conf["trStart"]="true";#爲是否要以<tr>開頭,"true"表示"是"。也可以看作新的一列開始。
845
#$conf["tdStart"]="true";#爲是否要以<td>開頭,"true"表示"是"。也可以看成列裏面的元素開始
846
#$conf["tdEnd"]="true";#爲是否要以</td>結尾,"true"表示"是"。也可以看成列裏面的元素結束
847
#$conf["trEnd"]="true";#爲是否要以</tr>結尾,"true"表示"是"。也可以看作該列結束。
848
echo form::inputCheckBox($conf)["content"]."<br>";
849
unset($conf);
850
 
851
#涵式說明:
852
#表單結束
853
#回傳的結果:
854
#$result,表單結束的語法
855
#必填寫的參數:
856
$conf["tableEnd"]="false";#爲該表單是否要以</table>結尾。"true"爲是;"false"爲否。
857
echo form::end($conf)["content"]."<br>";
858
unset($conf);
859
 
860
*/
861
 
862
#說明正在測試的部分
863
echo"<hr>form::simpleContolPanel - testCase 1<br>";
864
 
865
/*
866
 
867
#涵式說明:
868
#簡單的控制面板
869
#回傳的結果:
870
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
871
#$result["error"],錯誤訊息
872
#$result["content"],控制面板的語法
873
#$result["function"],當前執行的函數名稱
874
#可以點選"新增"、"回上頁"的簡易面板
875
#必填的參數:
876
$conf["addActionPage"]="formT.php";#不可省略,爲新增表單要交給那個頁面處理,屬性內容爲網頁位置。
877
$conf["goBackActionPage"]="formT.php";#不可省略,爲回上頁的目的地,屬性內容爲網頁位置。
878
#可省略的參數:
879
#$conf["addActionPresentPage"]="";#可省略,爲新增表單的處理頁面要在那邊出現,可以用的數值有 _self (面板所處的頁面) _parent (父頁面) _blank (新視窗) 頁框名稱,預設爲_self
880
#$conf["addButtonName"]="";#可省略,預設爲"新增",爲新增表單的按鈕顯示名稱,屬性內容爲字串。
881
#$conf["addButtonStyleName"]="";#可省略,爲新增表單的按鈕css樣式,屬性內容爲 css 的類別名稱。
882
#$conf["goBackActionPresentPage"]="";#可省略,爲回上頁的目的地的頁面要在那邊出現,可以用的數值有 _self (面板所處的頁面) _parent (父頁面) _blank (新視窗) 頁框名稱,預設爲_self
883
#$conf["goBackButtonName"]="";#可省略,預設爲"回上頁",爲回上頁的按鈕顯示名稱,屬性內容爲字串。
884
#$conf["goBackButtonStyleName"]="";#可省略,爲回上頁按鈕的css樣式,屬性內容爲 css 的類別名稱。
885
var_dump(form::simpleControlPanel($conf));
886
unset($conf);
887
 
888
*/
889
 
890
echo"<hr>form::removeConfirm - testCase 1 <br>";
891
 
892
/*
893
 
894
#涵式說明:
895
#移除東西的確認視窗
896
#回傳的結果:
897
#$result["status"],執行是否正常,"true"代表正常;"false"代表有問題
898
#$reuslt["error"],錯誤訊息陣列
899
#$$result["function"],當前執行的函數名稱
900
#$result["content"],語法
901
#必填的參數:
902
$conf["itemName"]="機密文件";#爲要刪除的物件提示名稱,格式爲字串。
903
$conf["cancleActionPage"]="formT.php";#爲按下取消按鈕後,要交給那個頁面處理。
904
$conf["removeActionPage"]="formT.php";#爲移除按鈕傳送的內容要交給哪一個頁面處理。
905
#可省略的參數:
906
$conf["itemNameFontColor"]="#990000";#可省略預設爲 "#000000"(黑色),爲要刪除物件提示名稱文字的字型顏色,格式範圍爲 #000000~#FFFFFF。
907
$conf["dbAddress"]=$dbAddress;#資料庫的位置.
908
$conf["dbName"]=$dbName;#連線到資料庫的名稱.
909
$conf["dtName"]="userGroup";#目標資料所屬資料表名稱.
910
$conf["dbAccount"]=$dbAccount;#連線到資料庫的帳號名稱.
911
$conf["dbPassword"]=$dbPassword;#連線到資料庫的帳號密碼.
912
$conf["indexColumnName"]="id";#用於識別要移除資料的索引鍵欄位名稱,預設為"id".
913
$conf["indexColumnValue"]="1";#用於識別要移除資料的索引鍵欄位數值內容。
914
$conf["columnForComment"]=array("id","groupName");#陣列字串,為要從資料庫取出作為要除物件的提示文字的資料表欄位名稱陣列。
915
#$conf["commentsName"]=array();#陣列字串,為要從資料庫取出作為要除物件的提示文字的資料表欄位名的顯示名稱,預設跟 $conf["columnForComment"] 一樣.
916
#$conf["cancleActionDisplayMethod"]="";#可省略,預設爲"_top",爲按下取消按鈕後,
917
	#交給的處理的頁面要怎麼顯現,類型爲字串,可能值有 "_top" "_self" "_blank" "_blank"
918
#$conf["cancleButtonStyle"]="";#可省略,爲取消鈕的css樣式類別名稱。
919
#$conf["cancleButtonDisplayName"]="";#可省略,預設爲"取消",爲取消鈕的顯示名稱。
920
#$conf["cancleSendingVarName"]=array("");#爲按下取消按鈕後要傳送的數值名稱
921
#$conf["cancleSendingVarValue"]=array("");#爲按下取消按鈕後要傳送的數值內容
922
#$conf["removeActionDisplayMethod"]="";#可省略預設爲"_top",爲處理移除內容的頁面要如何顯現,
923
	#類型爲字串,可能值有 "_top" "_self" "_blank" "_blank"
924
#$conf["removeButtonStyle"]="";#可省略,爲移除按鈕的css樣式類別名稱。
925
#$conf["removeButtonDisplayName"]="";#可省略,預設爲"確認移除",爲移除按鈕的顯示文字內容
926
#$conf["removeSendingVarName"]=array("");#爲按下移除按鈕後要傳送的數值名稱
927
#$conf["removeSendingVarValue"]=array("");#爲按下移除按鈕後要傳送的數值內容
928
#備註:
929
#建議參數 $conf["indexColumnName"] 與 $conf["indexColumnValue"] 的形態為字串陣列,以便擁有更多限制條件取得需要的資料.
930
var_dump(form::removeConfirm($conf));
931
unset($conf);
932
 
933
*/
934
 
935
#提示目前執行的部分
936
echo"<hr>form::start & form::inputFile & form::button & form::processUploadedFile<br>";
937
 
938
/*
939
 
940
#涵式說明:
941
#表單開始
942
#回傳的結果:
943
#$result,表單開始的語法
944
#必填的參數:
945
$conf["action"]="formT.php";#爲要交給那個檔案處理該表單傳送的內容
946
#可省略的參數:
947
#$conf["name"]="";#爲該表單的名稱
948
#$conf["method"]="";#爲傳輸的方法,若沒設定則預設爲post,其他可用的參數爲get。
949
#$conf["target"]="";#為顯示的方式,若沒設定則預設爲"_self",其他可用的參數爲 "_blank"、"_parent"、"_top",也可以是iframe的名稱。
950
#$conf["tableStart"]="true";#爲該表單是否要以<table>開始。"true"爲是;
951
#$conf["tableClass"]="";#表格要套用的css樣式,若爲"__withoutBorder"的話則套用無框線的預設樣式;若爲"__withBorder"的話,則爲有框線的預設樣式。
952
echo form::start($conf);
953
unset($conf);
954
 
955
#涵式說明:
956
#上傳檔案的表單
957
#回傳的結果:
958
#$result,語法
959
#必填寫的參數:
960
$conf["formFileName"]="testInputFile";#該檔案上傳時的表單名稱。
961
#可省略的參數:
962
#$conf["class"]="";#該上傳表單所要套用的css樣式,若省略則採用預設的css樣式,其屬性爲 width:100% font-size:30px
963
#$conf["id"]="";#爲該上傳表單的id
964
echo form::inputFile($conf);
965
unset($conf);
966
 
967
#放置按鈕
968
#必要的參數:
969
$conf["buttonDisplayValue"]="上傳";#爲按鈕上顯示的文字。
970
#可省略的參數:
971
#$conf["buttonStyleName"]="";#可省略,爲按鈕所要使用的css樣式類別名稱,預設的css樣式爲 __simpleButtonLinkDefaultButtonCssStyle 。
972
	#其屬性爲   "width","height","font-size","text-align"
973
	#其屬性值爲 "100%" ,  "50"  ,    "30"   ,   "center"
974
#$conf["buttonActionScriptFunction"]="";#可省略,爲按下按鈕時所要執行的javaScript函式,預設不設定。
975
#$conf["buttonBorder"]="";#可省略,爲IE9內會自動產生外框,此爲外框的厚度,屬性值爲正整數,預設爲0。
976
#$conf["tablStart"]="true";#爲是否要表格開始。"false"代表否,"true"代表是。預設爲"true"。
977
#$conf["tableClass"]="";#表格要套用的css樣式,若省略的話,則預設爲 __defaultTbaleCsssStyle 其屬性爲 table-layout:fixed word-break:break-all width:100% ,須搭配 $conf["tablStart"] 與 $conf["tableEnd"] 使用。
978
#$conf["trStart"]="true";#爲是否要以<tr>開頭,"true"表示"是"。也可以看作新的一列開始。
979
#$conf["trClass"]="__withoutBorder";#<tr>要套用的css樣式,"__withoutBorder"爲沒有框線的樣式;__withBorder爲有框線的樣式
980
#$conf["tdStart"]="true";#爲是否要以<td>開頭,"true"表示"是"。也可以看成列裏面的元素開始
981
#$conf["tdClass"]="__withoutBorder";#<td>要套用的css樣式,"__withoutBorder"爲沒有框線的樣式;__withBorder爲有框線的樣式
982
#$conf["tdEnd"]="true";#爲是否要以</td>結尾,"true"表示"是"。也可以看成列裏面的元素結束
983
#$conf["trEnd"]="true";#爲是否要以</tr>結尾,"true"表示"是"。也可以看作該列結束。
984
#$conf["tableEnd"]="true";#爲是否要表格結束。"false"代表否,"true"代表是。預設爲"true"。
985
#$conf["formStart"]="true";#爲是否要表單開始,如果爲"true"則代表要表單開始。
986
#$conf["action"]="";#爲表單要傳送到哪個頁面,須搭配$conf["formStart"]與$conf["formEnd"]參數使用
987
#$conf["target"]="";#為目標表單顯示的方式,若沒設定則預設爲"_self",其他可用的參數爲 "_blank"、"_parent"、"_top",也可以是iframe的名稱。須搭配$conf["formStart"]與$conf["formEnd"]參數使用
988
$conf["formEnd"]="true";#爲是否要表單結束,如果爲"true"則代表要表單結束。
989
echo form::button($conf);
990
unset($conf);
991
 
992
#涵式說明:
993
#處理上傳到暫存目錄的檔案,可以移動到指定的位置,並指定檔案的名稱。並且可以指定刪除舊有的檔案,然後將新檔案的相對位置寫入到資料庫裏面。
994
#回傳的變數:
995
#$result["ServerFileName"]#檔案名稱
996
#$result["ServerFileType"]#檔案類型
997
#$result["ServerFileSize"]#檔案大小
998
#$result["status"]#整體上傳有無成功。"true"代表完整成功 "false"代表有過程有錯誤
999
#$result["error"]["uploadErrorCode"]#上傳的錯誤訊息
1000
#$result["error"]["chmodDirStatus"]#資料夾權限更改成功與否
1001
#$result["error"]["chmodFileStatus"]#資料夾權限更改成功與否
1002
#$result["fileRelativePosition"]#檔案的相對位置,包含檔案名稱與附檔名。
1003
#必填的參數:
1004
$conf["formFileName"]="testInputFile";#為上傳檔案時表單傳送時的名稱
1005
#可省略的參數:
1006
$conf["uploadDirUserDefine"]=".form";#為存放上傳檔案的目錄,如果沒設定則會自行建立依照系統時間的年月日十分秒來替資料夾命名,並將上傳的檔案存在裏面。
1007
#$conf["ServerFilenameUserDefine"]="";#為存放在伺服器上的檔案名稱,如果沒設定則依照台灣時間的年月日時分秒命名
1008
#$conf["NoFileExtension"]="true";#若為 "true" 則表 指定了檔案名稱後,不用再加上檔案型的副檔名。
1009
#$conf["taskName"]="";#爲該上傳作業的名稱,若沒設定,則預設爲"上傳作業"。
1010
#$conf["eraseOldFile"]="";#如果存在的話會移除舊的檔案,其值爲檔案的相對位置。
1011
#$conf["dbProcess"]="true";#如果爲"true",則會進行資料表資料更新的動作。亦即要設定 $conf["updatingMysqlServerAddress"] $conf["updatingMysqlAccount"] $conf["updatingDataBaseName"] $conf["updatingDataTableName"] $conf["updatingConditionDataTableColumnName"] $conf["updatingConditionDataTableColumnValue"] $conf["updatingTargetDataTableColumnName"] $conf["updatingTargetDataTableColumnValue"] 的內容。
1012
#$conf["updatingMysqlServerAddress"]=$dbAddress;#資料庫位於網路上的哪個位置
1013
#$conf["updatingMysqlAccount"]=$dbAccount;#連線時要使用的帳號,省略時代表不用密碼進行連線。
1014
#$conf["updatingMysqlPassword"]=$dbPassword;#連線時要使用的密碼
1015
#$conf["updatingDataBaseName"]=$dbName;#要更新的目標資料所屬資料庫名稱
1016
#$conf["updatingDataTableName"]="";#要更新的目標資料位於哪個資料表
1017
#$conf["updatingConditionDataTableColumnName"]=array("id");#要用哪個欄位來識別要更新哪一筆資料。
1018
#$conf["updatingConditionDataTableColumnValue"]=array("");#該條件欄位內容的數值要爲多少,才是我們要修改的那筆資料。
1019
#$conf["updatingTargetDataTableColumnName"]=array("");#要更新的資料欄位有?
1020
#$conf["updatingTargetDataTableColumnValue"]=array("");#目標資料欄位要改成什麼樣的數值,如果其元素含有"filePosition",則會替換成新檔案的相對位置
1021
#$conf["displayQueryError"]="true";#爲是否呈現Query的錯誤訊息,預設不呈現,若要呈現則請將此值設爲"true"
1022
#$conf["displayQueryString"]="true";#爲是否呈現Query的命令,預設不呈現,若要呈現則請將此值設爲"true"
1023
#參考資料:
1024
#file_exist()的用法
1025
#http:#php.net/manual/en/function.file-exists.php
1026
#bug:
1027
#目前發現上傳的檔案如果有中文字將會上傳失敗,但中文字如果是包在()裏面則不會出錯。
1028
var_dump(form::processUploadedFile($conf));
1029
unset($conf);
1030
 
1031
*/
1032
 
1033
#提示目前執行的部分
1034
echo"<hr>form::start & form::uploadOneFile & form::processUploadedFile & form::button<br>";
1035
 
1036
/*
1037
 
1038
#涵式說明:
1039
#表單開始
1040
#回傳的結果:
1041
#$result,表單開始的語法
1042
#必填的參數:
1043
$conf["action"]="formT.php";#爲要交給那個檔案處理該表單傳送的內容
1044
#可省略的參數:
1045
#$conf["name"]="";#爲該表單的名稱
1046
#$conf["method"]="";#爲傳輸的方法,若沒設定則預設爲post,其他可用的參數爲get。
1047
#$conf["target"]="";#為顯示的方式,若沒設定則預設爲"_self",其他可用的參數爲 "_blank"、"_parent"、"_top",也可以是iframe的名稱。
1048
#$conf["tableStart"]="true";#爲該表單是否要以<table>開始。"true"爲是;
1049
#$conf["tableClass"]="";#表格要套用的css樣式,若爲"__withoutBorder"的話則套用無框線的預設樣式;若爲"__withBorder"的話,則爲有框線的預設樣式。
1050
echo form::start($conf);
1051
unset($conf);
1052
 
1053
#涵式說明:
1054
#可以瀏覽要上傳的檔案
1055
#回傳的結果:
1056
#$result,語法
1057
#必填的參數:
1058
$conf["formFileName"]="testuploadOneFile";#該上傳檔案的表單名稱	
1059
#可省略的參數:
1060
#$conf["maxFileSize"]="";#檔案的最大限制,單位是位元組(byte)。1kb = 1024 byte ; 1mb = 1024 kb 約等與 1024000 byte,預設是10240000(10MB)
1061
#$conf["browseButtonClass"]="";#瀏覽要上傳檔案的表單css樣式	
1062
#$conf["trStart"]="true";#爲是否要以<tr>開頭,"true"表示"是"。也可以看作新的一列開始。
1063
#$conf["tdStart"]="true";#爲是否要以<td>開頭,"true"表示"是"。也可以看成列裏面的元素開始
1064
#$conf["tdEnd"]="true";#爲是否要以</td>結尾,"true"表示"是"。也可以看成列裏面的元素結束
1065
#$conf["trEnd"]="true";#爲是否要以</tr>結尾,"true"表示"是"。也可以看作該列結束。	
1066
echo form::uploadOneFile($conf);
1067
unset($conf);	
1068
 
1069
#放置按鈕
1070
#必要的參數:
1071
$conf["buttonDisplayValue"]="上傳";#爲按鈕上顯示的文字。
1072
#可省略的參數:
1073
#$conf["buttonStyleName"]="";#可省略,爲按鈕所要使用的css樣式類別名稱,預設的css樣式爲 __simpleButtonLinkDefaultButtonCssStyle 。
1074
	#其屬性爲   "width","height","font-size","text-align"
1075
	#其屬性值爲 "100%" ,  "50"  ,    "30"   ,   "center"
1076
#$conf["buttonActionScriptFunction"]="";#可省略,爲按下按鈕時所要執行的javaScript函式,預設不設定。
1077
#$conf["buttonBorder"]="";#可省略,爲IE9內會自動產生外框,此爲外框的厚度,屬性值爲正整數,預設爲0。
1078
#$conf["tablStart"]="true";#爲是否要表格開始。"false"代表否,"true"代表是。預設爲"true"。
1079
#$conf["tableClass"]="";#表格要套用的css樣式,若省略的話,則預設爲 __defaultTbaleCsssStyle 其屬性爲 table-layout:fixed word-break:break-all width:100% ,須搭配 $conf["tablStart"] 與 $conf["tableEnd"] 使用。
1080
#$conf["trStart"]="true";#爲是否要以<tr>開頭,"true"表示"是"。也可以看作新的一列開始。
1081
#$conf["trClass"]="__withoutBorder";#<tr>要套用的css樣式,"__withoutBorder"爲沒有框線的樣式;__withBorder爲有框線的樣式
1082
#$conf["tdStart"]="true";#爲是否要以<td>開頭,"true"表示"是"。也可以看成列裏面的元素開始
1083
#$conf["tdClass"]="__withoutBorder";#<td>要套用的css樣式,"__withoutBorder"爲沒有框線的樣式;__withBorder爲有框線的樣式
1084
#$conf["tdEnd"]="true";#爲是否要以</td>結尾,"true"表示"是"。也可以看成列裏面的元素結束
1085
#$conf["trEnd"]="true";#爲是否要以</tr>結尾,"true"表示"是"。也可以看作該列結束。
1086
#$conf["tableEnd"]="true";#爲是否要表格結束。"false"代表否,"true"代表是。預設爲"true"。
1087
#$conf["formStart"]="true";#爲是否要表單開始,如果爲"true"則代表要表單開始。
1088
#$conf["action"]="";#爲表單要傳送到哪個頁面,須搭配$conf["formStart"]與$conf["formEnd"]參數使用
1089
#$conf["target"]="";#為目標表單顯示的方式,若沒設定則預設爲"_self",其他可用的參數爲 "_blank"、"_parent"、"_top",也可以是iframe的名稱。須搭配$conf["formStart"]與$conf["formEnd"]參數使用
1090
$conf["formEnd"]="true";#爲是否要表單結束,如果爲"true"則代表要表單結束。
1091
echo form::button($conf);
1092
unset($conf);
1093
 
1094
#涵式說明:
1095
#處理上傳到暫存目錄的檔案,可以移動到指定的位置,並指定檔案的名稱。並且可以指定刪除舊有的檔案,然後將新檔案的相對位置寫入到資料庫裏面。
1096
#回傳的變數:
1097
#$result["ServerFileName"]#檔案名稱
1098
#$result["ServerFileType"]#檔案類型
1099
#$result["ServerFileSize"]#檔案大小
1100
#$result["status"]#整體上傳有無成功。"true"代表完整成功 "false"代表有過程有錯誤
1101
#$result["error"]["uploadErrorCode"]#上傳的錯誤訊息
1102
#$result["error"]["chmodDirStatus"]#資料夾權限更改成功與否
1103
#$result["error"]["chmodFileStatus"]#資料夾權限更改成功與否
1104
#$result["fileRelativePosition"]#檔案的相對位置,包含檔案名稱與附檔名。
1105
#必填的參數:
1106
$conf["formFileName"]="testuploadOneFile";#為上傳檔案時表單傳送時的名稱
1107
#可省略的參數:
1108
$conf["uploadDirUserDefine"]=".form";#為存放上傳檔案的目錄,如果沒設定則會自行建立依照系統時間的年月日十分秒來替資料夾命名,並將上傳的檔案存在裏面。
1109
#$conf["ServerFilenameUserDefine"]="";#為存放在伺服器上的檔案名稱,如果沒設定則依照台灣時間的年月日時分秒命名
1110
#$conf["NoFileExtension"]="true";#若為 "true" 則表 指定了檔案名稱後,不用再加上檔案型的副檔名。
1111
#$conf["taskName"]="";#爲該上傳作業的名稱,若沒設定,則預設爲"上傳作業"。
1112
#$conf["eraseOldFile"]="";#如果存在的話會移除舊的檔案,其值爲檔案的相對位置。
1113
#$conf["dbProcess"]="true";#如果爲"true",則會進行資料表資料更新的動作。亦即要設定 $conf["updatingMysqlServerAddress"] $conf["updatingMysqlAccount"] $conf["updatingDataBaseName"] $conf["updatingDataTableName"] $conf["updatingConditionDataTableColumnName"] $conf["updatingConditionDataTableColumnValue"] $conf["updatingTargetDataTableColumnName"] $conf["updatingTargetDataTableColumnValue"] 的內容。
1114
#$conf["updatingMysqlServerAddress"]=$dbAddress;#資料庫位於網路上的哪個位置
1115
#$conf["updatingMysqlAccount"]=$dbAccount;#連線時要使用的帳號,省略時代表不用密碼進行連線。
1116
#$conf["updatingMysqlPassword"]=$dbPassword;#連線時要使用的密碼
1117
#$conf["updatingDataBaseName"]=$dbName;#要更新的目標資料所屬資料庫名稱
1118
#$conf["updatingDataTableName"]="";#要更新的目標資料位於哪個資料表
1119
#$conf["updatingConditionDataTableColumnName"]=array("id");#要用哪個欄位來識別要更新哪一筆資料。
1120
#$conf["updatingConditionDataTableColumnValue"]=array("");#該條件欄位內容的數值要爲多少,才是我們要修改的那筆資料。
1121
#$conf["updatingTargetDataTableColumnName"]=array("");#要更新的資料欄位有?
1122
#$conf["updatingTargetDataTableColumnValue"]=array("");#目標資料欄位要改成什麼樣的數值,如果其元素含有"filePosition",則會替換成新檔案的相對位置
1123
#$conf["displayQueryError"]="true";#爲是否呈現Query的錯誤訊息,預設不呈現,若要呈現則請將此值設爲"true"
1124
#$conf["displayQueryString"]="true";#爲是否呈現Query的命令,預設不呈現,若要呈現則請將此值設爲"true"
1125
#參考資料:
1126
#file_exist()的用法
1127
#http:#php.net/manual/en/function.file-exists.php
1128
#bug:
1129
#目前發現上傳的檔案如果有中文字將會上傳失敗,但中文字如果是包在()裏面則不會出錯。
1130
var_dump(form::processUploadedFile($conf));
1131
unset($conf);
1132
 
1133
*/
1134
 
1135
#提示目前測試的部份
1136
echo "<hr>form::uploadOneFileCom - testCase 1<br>";
1137
 
1138
/*
1139
 
1140
#涵式說明:
1141
#上傳一個檔案,包含送出鈕與回上頁的按鈕
1142
#回傳的結果:
1143
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
1144
#$result["function"],當前執行的函數.
1145
#$result["error"],錯誤訊息陣列.
1146
#$result["content"],語法.
1147
#必填的參數:
1148
#$conf["formFileName"],字串,該上傳檔案的表單名稱.
1149
$conf["formFileName"]="form::uploadOneFileCom - testCase 1";
1150
#$conf["actionPage"],字串,處理表單資訊的頁面.
1151
$conf["actionPage"]="formT.php";
1152
#可省略的參數:
1153
#$conf["browseButtonClass"],字串,瀏覽要上傳檔案的css樣式,預設為"__inputFileCssStyle".
1154
#$conf["browseButtonClass"]="__inputFileCssStyle";
1155
#$conf["submitButtonClass"],字串,上傳按鈕的css樣式,預設為"__simpleButtonLinkDefaultButtonCssStyle".
1156
#$conf["submitButtonClass"]="__simpleButtonLinkDefaultButtonCssStyle";
1157
#$conf["backPage"],字串,返回的按鈕點了之後要到哪個頁面,預設是不使用.
1158
$conf["backPage"]="formT.php";
1159
#$conf["backButtonClass"],字串,回上頁按鈕的css樣式,預設為"__simpleButtonLinkDefaultButtonCssStyle".
1160
#$conf["backButtonClass"]="__simpleButtonLinkDefaultButtonCssStyle";
1161
#$conf["maxFileSize"],字串,檔案的最大限制,單位是位元組(byte),1kb = 1024 byte ; 1mb = 1024 kb 約等與 1024000 byte,預設爲"102400000"(100MB)
1162
#$conf["maxFileSize"]="102400000";
1163
#$conf["submitButtonName"],字串,送出鈕要顯示的名稱,預設爲"上傳"
1164
#$conf["submitButtonName"]="上傳";
1165
#$conf["formName"],字串,表單的名稱
1166
$conf["formName"]="image";
1167
#$conf["formTarget"],字串,表單要呈現回應的位置,預設為"_self".
1168
#$conf["formTarget"]="_self";
1169
#$conf["acceptType"],字串,限定檔案的類型為"video/*","audio/*","image/*",預設不限定.
1170
$conf["acceptType"]="image/*";
1171
#$conf["required"],字串,該欄位是否必填,"true"為必填,"false"為可留空,預設為"false".
1172
$conf["required"]="true";
1173
#$conf["comment"],字串,該上傳檔案的註解,預設不顯示.
1174
$conf["comment"]="請上傳照片檔案";
1175
#$conf["backButtonName"],字串,退回上一頁的按鈕要顯示的名稱,預設爲"回上頁"
1176
#$conf["backButtonName"]="回上頁";
1177
echo form::uploadOneFileCom($conf)["content"];
1178
unset($conf);
1179
 
1180
*/
1181
 
1182
echo "<hr>form::simpleFileAuthentication - testCase 1<br>";
1183
 
1184
/*
1185
 
1186
#涵式說明:
1187
#上傳一個檔案,包含送出鈕與回上頁的按鈕
1188
#回傳的結果:
1189
#$result,語法
1190
#必填的參數:
1191
$conf["formFileName"]="testuploadOneFileCom";#該上傳檔案的表單名稱	
1192
$conf["actionPage"]="formT.php";#處理表單資訊的頁面
1193
#可省略的參數:
1194
#$conf["browseButtonClass"]="";#瀏覽要上傳檔案的css樣式
1195
#$conf["submitButtonClass"]="";#上傳按鈕的css樣式;
1196
$conf["backPage"]="formT.php";#返回的按鈕點了之後要到哪個頁面?,預設是不使用
1197
#$conf["backButtonClass"]="";#回上頁按鈕的css樣式;
1198
#$conf["align"]="";#上傳的表格要置中還是置右抑或是置左,
1199
	#可用的選項有「left」、「center」、「right」,預設是不指定。
1200
#$conf["maxFileSize"]="";#檔案的最大限制,單位是位元組(byte)。
1201
	#1kb = 1024 byte ; 1mb = 1024 kb 約等與 1024000 byte
1202
	#預設爲"10240000"(10MB)
1203
$conf["submitButtonName"]="上傳 validate 檔案";#送出鈕要顯示的名稱,預設爲"上傳"
1204
#$conf["backButtonName"]="";#退回上一頁的按鈕要顯示的名稱,預設爲"回上頁"
1205
echo form::uploadOneFileCom($conf)["content"];
1206
unset($conf);
1207
 
1208
#涵式說明:
1209
#檢測接收的檔案是否符合條件
1210
#回傳的內容:
1211
#$result["fileName"],若爲"true"則代表檔案名稱正確。
1212
#$result["fileSizePass"],若爲"true"則代表檔案大小正確。
1213
#$result["fileTypePass"],若爲"true"則代表檔案類型正確。
1214
#必填的參數:
1215
$conf["formFileName"]="testuploadOneFileCom";#爲該檔案上傳時候的表單名稱
1216
#可省略的參數:
1217
$conf["uploadedFileName"]="validate.file";#爲檔案上傳時的檔案名稱,省略則跳過此部分驗證
1218
$conf["uploadedFileSize"]="14";#爲檔案上傳時的檔案大小,省略則跳過此部分驗證
1219
$conf["uploadedFileType"]=array("application/octet-stream");#爲檔案上傳時的檔案型別,需爲陣列型別,省略則跳過此部分驗證
1220
var_dump(form::simpleFileAuthentication($conf));
1221
unset($conf);
1222
 
1223
*/
1224
 
1225
#提示目前測試的函式
1226
echo "<hr>responseOneFileForAuthentication - testCase 1<br>";
1227
 
1228
/*
1229
 
1230
#涵式說明:
1231
#上傳一個檔案,包含送出鈕與回上頁的按鈕
1232
#回傳的結果:
1233
#$result,語法
1234
#必填的參數:
1235
$conf["formFileName"]="testresponseOneFileForAuthentication";#該上傳檔案的表單名稱	
1236
$conf["actionPage"]="formT-validate.php";#處理表單資訊的頁面
1237
#可省略的參數:
1238
#$conf["browseButtonClass"]="";#瀏覽要上傳檔案的css樣式
1239
#$conf["submitButtonClass"]="";#上傳按鈕的css樣式;
1240
$conf["backPage"]="formT.php";#返回的按鈕點了之後要到哪個頁面?,預設是不使用
1241
#$conf["backButtonClass"]="";#回上頁按鈕的css樣式;
1242
#$conf["align"]="";#上傳的表格要置中還是置右抑或是置左,
1243
	#可用的選項有「left」、「center」、「right」,預設是不指定。
1244
#$conf["maxFileSize"]="";#檔案的最大限制,單位是位元組(byte)。
1245
	#1kb = 1024 byte ; 1mb = 1024 kb 約等與 1024000 byte
1246
	#預設爲"10240000"(10MB)
1247
$conf["submitButtonName"]="請上傳 validate 檔案";#送出鈕要顯示的名稱,預設爲"上傳"
1248
#$conf["backButtonName"]="";#退回上一頁的按鈕要顯示的名稱,預設爲"回上頁"
1249
#echo form::uploadOneFileCom($conf);
1250
unset($conf);
1251
 
1252
*/
1253
 
1254
/*
1255
#涵式說明:
1256
#處理一個已上傳的檔案,用作驗證
1257
#回傳的結果:
1258
#$result["status"],"true"爲驗證成功,"false"為驗證失敗.
1259
#$result["erorr"],錯誤訊息陣列.
1260
#必填的參數:
1261
$conf["formFileName"]="testresponseOneFileForAuthentication";#該上傳檔案的表單名稱
1262
$conf["uploadFileName"]="validate.file";#如果上傳的檔案名稱等於 $conf["uploadFileName"] 則通過第一階段驗證
1263
$conf["uploadFileSize"]="14";#如果上傳的檔案大小等於 $conf["uploadFileSize"] 則通過第二階段驗證
1264
$conf["uploadedFileType"]="application/octet-stream";#如果上傳的檔案類型等於 $conf["uploadedFileType"] 則通過第三階段驗證
1265
$conf["password"]="you are passed!";#供驗證用的內容。
1266
#用戶段會取得的變數內容:
1267
#$_SESSION["password"],用來做檢查,是否通過認證的session變數,若php設定檔沒有自動啓用session的話,此行前面必須要有 session_start();	
1268
#可省略的參數:
1269
$conf["passAction"]="formT-pass.php";#如果檔案驗證成功,轉址到?沒設定則不轉址
1270
$conf["failedAction"]="formT-passFailed.php";#如果檔案驗正不通過則,轉址到?沒設定則不轉址
1271
var_dump(form::responseOneFileForAuthentication($conf));
1272
unset($conf);
1273
*/
1274
 
1275
#提示目前測試的函式
1276
echo "<hr>form::uploadOneFileCom & form::processUploadedFile<br>";
1277
 
1278
/*
1279
 
1280
#涵式說明:
1281
#上傳一個檔案,包含送出鈕與回上頁的按鈕
1282
#回傳的結果:
1283
#$result,語法
1284
#必填的參數:
1285
$conf["formFileName"]="testprocessUploadedFile";#該上傳檔案的表單名稱	
1286
$conf["actionPage"]="formT.php";#處理表單資訊的頁面
1287
#可省略的參數:
1288
#$conf["browseButtonClass"]="";#瀏覽要上傳檔案的css樣式
1289
#$conf["submitButtonClass"]="";#上傳按鈕的css樣式;
1290
#$conf["backPage"]="";#返回的按鈕點了之後要到哪個頁面?,預設是不使用
1291
#$conf["backButtonClass"]="";#回上頁按鈕的css樣式;
1292
#$conf["align"]="";#上傳的表格要置中還是置右抑或是置左,
1293
	#可用的選項有「left」、「center」、「right」,預設是不指定。
1294
#$conf["maxFileSize"]="";#檔案的最大限制,單位是位元組(byte)。
1295
	#1kb = 1024 byte ; 1mb = 1024 kb 約等與 1024000 byte
1296
	#預設爲"10240000"(10MB)
1297
#$conf["submitButtonName"]="";#送出鈕要顯示的名稱,預設爲"上傳"
1298
#$conf["backButtonName"]="";#退回上一頁的按鈕要顯示的名稱,預設爲"回上頁"
1299
echo form::uploadOneFileCom($conf);
1300
unset($conf);
1301
 
1302
#涵式說明:
1303
#處理上傳到暫存目錄的檔案,可以移動到指定的位置,並指定檔案的名稱。並且可以指定刪除舊有的檔案,然後將新檔案的相對位置寫入到資料庫裏面。
1304
#$result["ServerFileName"]#檔案名稱
1305
#$result["ServerFileType"]#檔案類型
1306
#$result["ServerFileSize"]#檔案大小
1307
#$result["status"]#整體上傳有無成功。"true"代表完整成功 "false"代表有過程有錯誤
1308
#$result["error"],錯誤訊息陣列
1309
#$result["fileRelativePosition"]#檔案的相對位置,包含檔案名稱與附檔名。
1310
#必填的參數:
1311
$conf["formFileName"]="testprocessUploadedFile";#為上傳檔案時表單傳送時的名稱
1312
#可省略的參數:
1313
$conf["uploadDirUserDefine"]=".form";#為存放上傳檔案的目錄,如果沒設定則會自行建立依照系統時間的年月日十分秒來替資料夾命名,並將上傳的檔案存在裏面。
1314
$conf["ServerFilenameUserDefine"]="testFile";#為存放在伺服器上的檔案名稱,如果沒設定則依照台灣時間的年月日時分秒命名
1315
#$conf["NoFileExtension"]="true";#若為 "true" 則表 指定了檔案名稱後,不用再加上檔案型的副檔名。
1316
#$conf["taskName"]="";#爲該上傳作業的名稱,若沒設定,則預設爲"上傳作業"。
1317
#$conf["eraseOldFile"]="";#如果存在的話會移除舊的檔案,其值爲檔案的相對位置。
1318
#$conf["dbProcess"]="true";#如果爲"true",則會進行資料表資料更新的動作。亦即要設定 $conf["updatingMysqlServerAddress"] $conf["updatingMysqlAccount"] $conf["updatingDataBaseName"] $conf["updatingDataTableName"] $conf["updatingConditionDataTableColumnName"] $conf["updatingConditionDataTableColumnValue"] $conf["updatingTargetDataTableColumnName"] $conf["updatingTargetDataTableColumnValue"] 的內容。
1319
#$conf["updatingMysqlServerAddress"]=$dbAddress;#資料庫位於網路上的哪個位置
1320
#$conf["updatingMysqlAccount"]=$dbAccount;#連線時要使用的帳號,省略時代表不用密碼進行連線。
1321
#$conf["updatingMysqlPassword"]=$dbPassword;#連線時要使用的密碼
1322
#$conf["updatingDataBaseName"]=$dbName;#要更新的目標資料所屬資料庫名稱
1323
#$conf["updatingDataTableName"]="";#要更新的目標資料位於哪個資料表
1324
#$conf["updatingConditionDataTableColumnName"]=array("id");#要用哪個欄位來識別要更新哪一筆資料。
1325
#$conf["updatingConditionDataTableColumnValue"]=array("");#該條件欄位內容的數值要爲多少,才是我們要修改的那筆資料。
1326
#$conf["updatingTargetDataTableColumnName"]=array("");#要更新的資料欄位有?
1327
#$conf["updatingTargetDataTableColumnValue"]=array("");#目標資料欄位要改成什麼樣的數值,如果其元素含有"filePosition",則會替換成新檔案的相對位置
1328
#$conf["displayQueryError"]="true";#爲是否呈現Query的錯誤訊息,預設不呈現,若要呈現則請將此值設爲"true"
1329
#$conf["displayQueryString"]="true";#爲是否呈現Query的命令,預設不呈現,若要呈現則請將此值設爲"true"
1330
#參考資料:
1331
#file_exist()的用法
1332
#http:#php.net/manual/en/function.file-exists.php
1333
#bug:
1334
#目前發現上傳的檔案如果有中文字將會上傳失敗,但中文字如果是包在()裏面則不會出錯。
1335
var_dump(form::processUploadedFile($conf));
1336
unset($conf);
1337
 
1338
*/
1339
 
1340
#提示目前測試的函式
1341
echo "<hr>form::customConfirm - testCase 1 <br>";
1342
 
1343
/*
1344
 
1345
#涵式說明:
1346
#確認執行的視窗
1347
#回傳的結果:
1348
#$result,確認執行的視窗語法
1349
#必填的參數:
1350
$conf["actionName"]="到";#要執行的動作
1351
$conf["itemName"]="Google搜尋首頁";#爲要執行的物件提示名稱,格式爲字串。
1352
$conf["cancleActionPage"]="formT.php";#爲按下取消按鈕後,要交給那個頁面處理。																																							
1353
$conf["confirmActionPage"]="https://www.google.com.tw/";#爲移除按鈕傳送的內容要交給哪一個頁面處理。
1354
#可省略的參數:
1355
#$conf["actionFontCss"]="";#可省略,爲動作提示的字型css樣式。
1356
#$conf["itemNameFontCss"]="";#可省略預,爲物件提示的字型css樣式。
1357
#$conf["cancleActionDisplayMethod"]="";#可省略,預設爲"_self",爲按下取消按鈕後,
1358
	#交給的處理的頁面要怎麼顯現,類型爲字串,可能值有 "_top" "_self" "_blank" "_blank"
1359
#$conf["cancleButtonStyle"]="";#可省略,爲取消鈕的css樣式類別名稱。
1360
#$conf["cancleRequestMethod"],字串,取消要求的表單要用什麼方式傳送,預設為"post",也可以為"get". 
1361
#$conf["cancleRequestMethod"]="get";
1362
#$conf["cancleButtonDisplayName"]="";#可省略,預設爲"取消",爲取消鈕的顯示名稱。
1363
#$conf["cancleSendingVarName"]=array("");#爲按下取消按鈕後要傳送的數值名稱
1364
#$conf["cancleSendingVarValue"]=array("");#爲按下取消按鈕後要傳送的數值內容
1365
#$conf["confirmActionDisplayMethod"]="";#可省略預設爲"_self",爲處理移除內容的頁面要如何顯現,
1366
	#類型爲字串,可能值有 "_top" "_self" "_blank" "_blank"
1367
#$conf["confirmButtonStyle"]="";#可省略,爲移除按鈕的css樣式類別名稱。
1368
#$conf["confirmRequestMethod"],字串,確認要求的表單要用什麼方式傳送,預設為"post",也可以為"get". 
1369
$conf["confirmRequestMethod"]="get";
1370
#$conf["confirmButtonDisplayName"]="";#可省略,預設爲"確認移除",爲移除按鈕的顯示文字內容
1371
#$conf["confirmSendingVarName"]=array("");#爲按下移除按鈕後要傳送的數值名稱
1372
#$conf["confirmSendingVarValue"]=array("");#爲按下移除按鈕後要傳送的數值內容
1373
#程式建議:
1374
#要執行動作的物件提示名稱,如果可以擺方多個資訊將會更方便。
1375
var_dump(form::customConfirm($conf));
1376
unset($conf);
1377
 
1378
*/
1379
 
1380
#提示要測試的案例
1381
echo "<hr>form::responseMultiInputDataSecurityEnhance - testCase 1<br>";
1382
 
1383
/*
1384
 
1385
#放置control bar iframe
1386
#涵式說明:
1387
#建立一個 iframe 框架
1388
#回傳的結果:
1389
#$result["status"],執行成功或失敗,成功為"true";"false"為失敗。
1390
#$result["error"],錯誤訊息提示
1391
#$result["content"],iframe的語法
1392
#必填的參數:
1393
$conf["webPage"]="formTframe1.php";#爲放入 iframe 網頁網址。
1394
$conf["name"]="formTframe1";#爲該 iframe 的名稱。
1395
$conf["br"]="true";#爲放置完該iframe後是否要換行,"true"爲要換行;"flase"爲不要換行。
1396
#可省略的參數
1397
#$conf["class"]="";#爲該 iframe 要套用的css樣式類別名稱,可省略。
1398
echo frame::createIframe($conf)["content"];
1399
unset($conf);
1400
 
1401
#放置list iframe
1402
#涵式說明:
1403
#建立一個 iframe 框架
1404
#回傳的結果:
1405
#$result["status"],執行成功或失敗,成功為"true";"false"為失敗。
1406
#$result["error"],錯誤訊息提示
1407
#$result["content"],iframe的語法
1408
#必填的參數:
1409
$conf["webPage"]="formTframe2.php";#爲放入 iframe 網頁網址。
1410
$conf["name"]="formTframe2";#爲該 iframe 的名稱。
1411
$conf["br"]="true";#爲放置完該iframe後是否要換行,"true"爲要換行;"flase"爲不要換行。
1412
#可省略的參數
1413
#$conf["class"]="";#爲該 iframe 要套用的css樣式類別名稱,可省略。
1414
echo frame::createIframe($conf)["content"];
1415
unset($conf);
1416
 
1417
*/
1418
 
1419
/* 傳送端不需要
1420
#涵式說明:
1421
#可以處理多個透過GET、POST而來的資訊,儲存成變數,同時限定傳送的方法、來源,來增加安全性。
1422
#回傳的結果:
1423
#$result["status"],執行是否成功,"true"代表執行成功;"false"代表執行失敗。
1424
#$result["error"],錯誤訊息。
1425
#$result["inputDataContent"],所接收的參數陣列。
1426
#$result["inputDataContent"]["變數名稱"],所接收變數的內容
1427
#$result["inputDataCount"],總共接收到幾個元素。
1428
#必填的參數:
1429
$conf["method"]="post";#傳送過來的資料是用"post/POST"還是"get/GET"?
1430
#可省略的參數:
1431
#$conf["allowGet"]="false";#是否要允許 get 傳值,"true",代表允許;"false" ,代表不允許,預設爲不允許。
1432
#$conf["limitPrePage"]="formT.php";#是否要限定前一頁的網址為何,才能接收內容,不符合則轉址。
1433
#$conf["transferLocation"]="";#遇到get傳值的時候要轉址到的頁面,預設爲資安素養網"https:#isafe.moe.edu.tw/"
1434
$conf["ignore"]=array("B");#如果要接收的變數名稱與該陣列其一元素一樣,則不放進要回傳的變數裏面。
1435
#$conf["correctCharacter"]="false";#如果爲"false",則不處理可能導致網頁出問題的字串,預設爲要進行處理。
1436
#參考資料來源:
1437
#foreach 的用法 -> http:#php.net/manual/en/control-structures.foreach.php
1438
#var_dump(form::responseMutiInputDataSecurityEnhance($conf));
1439
unset($conf);
1440
*/
1441
 
1442
/*
1443
 
1444
#提示要測試的案例
1445
echo "<hr>form::responseMultiInputDataSecurityEnhance - testCase 1<br>";
1446
 
1447
#涵式說明:
1448
#一個簡單的按鈕,按了可以到指定的頁面。同時也可以傳送多個隱藏的變數
1449
#回傳的結果
1450
#$result,語法內容
1451
#必填的參數:
1452
$conf["actionPage"]="formT.php";#按鈕按了之後要到哪個地方?若爲 $_SERVER["PHP_SELF"],則爲回到目前頁面。
1453
$conf["buttonDisplayValue"]="測試";#按鈕上要顯示的文字
1454
#可以省略的參數:
1455
#$conf["buttonStyleName"]="";#按鈕的css樣式應該爲何,若省略的話預設會採用 __simpleButtonLinkDefaultButtonCssStyle 的樣式
1456
	#其屬性爲   "width","height","font-size","text-align"
1457
	#其屬性值爲 "300"  ,  "50"  ,    "30"   ,   "center"
1458
#備註:
1459
# __simpleButtonLinkDefaultButtonCssStyle,爲預設的按鈕css樣式,請勿使用相同類別名稱的css樣式,以免衝突。
1460
$conf["hiddenVarName"]=array("A.B.C","a.b.c");#要傳送的隱藏變數名稱,與 $conf["hiddenVarContent"] 相對應。
1461
$conf["hiddenVarContent"]=array("ABC","abc");#要傳誦的隱藏變數內容,與 $conf["hiddenVarName"] 相對應。
1462
$conf["formStart"]="true";#爲是否要表單開始,如果爲"true"則代表要表單開始,預設爲"true"
1463
#$conf["formName"]="";#該表單的名稱
1464
#$conf["buttonActionScriptFunction"]="";#可省略,爲按下按鈕時所要執行的javaScript函式,預設不設定。
1465
	#可以是"document.forms.formName.submit()"(傳送名爲testForm的表單內容).
1466
$conf["formEnd"]="true";#爲是否要表單結束,如果爲"true"則代表要表單結束,預設爲"true"
1467
#$conf["tableStart"]="true";#爲是否要表格開始,"true"表示"是"。
1468
#$conf["tableClass"]="__withoutBorder";#爲表格要採用的css樣式名稱,"__withoutBorder"代表沒有框線的預設樣式;"__withBorder"代表有框線的預設樣式
1469
#$conf["trStart"]="true";#爲是否要以<tr>開頭,"true"表示"是"。也可以看作新的一列開始。
1470
#$conf["trClass"]="__withoutBorder";#列開始的css樣式,"__withoutBorder"代表沒有框線的預設樣式;"__withBorder"代表有框線的預設樣式
1471
#$conf["tdStart"]="true";#爲是否要以<td>開頭,"true"表示"是"。也可以看成列裏面的元素開始
1472
#$conf["tdClass"]="__withoutBorder";#行開始的css樣式,"__withoutBorder"代表沒有框線的預設樣式;"__withBorder"代表有框線的預設樣式
1473
#$conf["tdEnd"]="true";#爲是否要以</td>結尾,"true"表示"是"。也可以看成列裏面的元素結束
1474
#$conf["trEnd"]="true";#爲是否要以</tr>結尾,"true"表示"是"。也可以看作該列結束。
1475
#$conf["displayTarget"]="";#頁面的呈現方法,可以是開新視窗(_blank)、在目前頁面、頁框裏面(_self)、在父頁面(_parent)、最上層頁面(_top),預設為"_top"。
1476
#$conf["tableEnd"]="true";#爲是否要表格結束,"true"表示"是"。
1477
echo form::sendHugeDataButton($conf);
1478
unset($conf);
1479
 
1480
#涵式說明:
1481
#可以處理多個透過GET、POST而來的資訊,儲存成變數,同時限定傳送的方法、來源,來增加安全性,檢查有沒有皆收到必須要接收到的變數
1482
#回傳的結果:
1483
#$result["status"],執行是否成功,"true"代表執行成功;"false"代表執行失敗.
1484
#$result["error"],錯誤訊息.
1485
#$result["passed"],是否有皆收到全部該接收到的變數,若有設定$conf["checkedVarName"]的話,執行正常後會回傳該結果。
1486
#$result["lostVarName"],沒有皆收到的變數名稱陣列
1487
#$result["inputDataContent"],所接收的參數陣列.
1488
#$result["inputDataContent"]["變數名稱"],所接收變數的內容.
1489
#$result["inputDataCount"],總共接收到幾個元素.
1490
#必填的參數:
1491
#$conf["method"],字串,傳送過來的資料是用"post/POST"還是"get/GET"?
1492
$conf["method"]="post";
1493
#可省略的參數:
1494
#$conf["allowGet"],字串,是否要允許 get 傳值,"true",代表允許;"false" ,代表不允許,預設爲不允許.
1495
#$conf["allowGet"]="true";
1496
#$conf["limitPrePage"],字串陣列,是否要限定前一頁的網址為哪些,才能接收內容,不符合則轉址.
1497
#$conf["limitPrePage"]=array("");
1498
#$conf["transferLocation"],字串,遇到get傳值的時候要轉址到的頁面,預設爲資安素養網"https://isafe.moe.edu.tw/"
1499
#$conf["transferLocation"]="";
1500
#$conf["ignore"]=字串陣列,如果要接收的變數名稱與該陣列其一元素一樣,則不放進要回傳的變數裏面.
1501
#$conf["ignore"]=array();
1502
#$conf["correctCharacter"]=,字串,如果爲"false",則不處理可能導致網頁出問題的字串,預設爲要進行處理.
1503
#$conf["correctCharacter"]="false";
1504
#$conf["checkedVarName"],字串陣列,為檢查是否有接收到哪些變數.
1505
#$conf["checkedVarName"]=array(); 	
1506
#參考資料來源:
1507
#foreach 的用法 -> http://php.net/manual/en/control-structures.foreach.php
1508
#伺服器端的變數 -> http://php.net/manual/en/reserved.variables.server.php
1509
var_dump(form::responseMultiInputDataSecurityEnhance($conf));
1510
unset($conf);
1511
 
1512
*/
1513
 
1514
#提示要測試的函式
1515
echo "<hr>form::simpleControlPanel<br>";
1516
 
1517
/*
1518
 
1519
#涵式說明:
1520
#簡單的控制面板
1521
#回傳的結果:
1522
#$result,控制面板的語法
1523
#可以點選"新增"、"回上頁"的簡易面板
1524
#必填的參數:
1525
$conf["addActionPage"]="formT-add.php";#不可省略,爲新增表單要交給那個頁面處理,屬性內容爲網頁位置。
1526
$conf["goBackActionPage"]="formT-back.php";#不可省略,爲回上頁的目的地,屬性內容爲網頁位置。
1527
#可省略的參數:
1528
#$conf["addActionPresentPage"]="";#可省略,爲新增表單的處理頁面要在那邊出現,可以用的數值有 _self (面板所處的頁面) _parent (父頁面) _blank (新視窗) 頁框名稱,預設爲_self
1529
#$conf["addButtonName"]="";#可省略,預設爲"新增",爲新增表單的按鈕顯示名稱,屬性內容爲字串。
1530
#$conf["addButtonStyleName"]="";#可省略,爲新增表單的按鈕css樣式,屬性內容爲 css 的類別名稱。
1531
#$conf["goBackActionPresentPage"]="";#可省略,爲回上頁的目的地的頁面要在那邊出現,可以用的數值有 _self (面板所處的頁面) _parent (父頁面) _blank (新視窗) 頁框名稱,預設爲_self
1532
#$conf["goBackButtonName"]="";#可省略,預設爲"回上頁",爲回上頁的按鈕顯示名稱,屬性內容爲字串。
1533
#$conf["goBackButtonStyleName"]="";#可省略,爲回上頁按鈕的css樣式,屬性內容爲 css 的類別名稱。
1534
#echo form::simpleControlPanel($conf);
1535
unset($conf);
1536
 
1537
*/
1538
 
1539
#提示要測試的函式
1540
echo "<hr>form::start & form::inputHidden & form::buttonImg & form::end & form::responseMultiInputDataSecurityEnhance <br>";
1541
 
1542
/*
1543
 
1544
#涵式說明:
1545
#表單開始
1546
#回傳的結果:
1547
#$result,表單開始的語法
1548
#必填的參數:
1549
$conf["action"]="formT.php";#爲要交給那個檔案處理該表單傳送的內容
1550
#可省略的參數:
1551
#$conf["name"]="";#爲該表單的名稱
1552
#$conf["method"]="";#爲傳輸的方法,若沒設定則預設爲post,其他可用的參數爲get。
1553
#$conf["target"]="";#為顯示的方式,若沒設定則預設爲"_self",其他可用的參數爲 "_blank"、"_parent"、"_top",也可以是iframe的名稱。
1554
#$conf["tableStart"]="true";#爲該表單是否要以<table>開始。"true"爲是;
1555
#$conf["tableClass"]="";#表格要套用的css樣式,若爲"__withoutBorder"的話則套用無框線的預設樣式;若爲"__withBorder"的話,則爲有框線的預設樣式。
1556
echo form::start($conf);
1557
unset($conf);
1558
 
1559
#涵式說明:
1560
#隱藏的表單傳送資訊
1561
#回傳的結果:
1562
#$result,語法
1563
#必填的參數:
1564
$conf["name"]="keyRing";#隱藏的表單名稱
1565
$conf["value"]="222";#等於要傳送的數值		
1566
#可省略的參數:
1567
echo form::inputHidden($conf);
1568
unset($conf);
1569
 
1570
#傳送多個隱藏表單的資訊
1571
#回傳的數值:
1572
#$result,語法
1573
#$result["sendedArrayName"],
1574
#$result["sendedArrayValue"],
1575
#$result["sendedArrayCount"],
1576
#必填的參數:
1577
$conf["nameArray"]=array("nameA","nameB","nameC");#欲傳送的隱藏陣列變數名稱
1578
$conf["valueArray"]=array("valueA","valueB","valueC");#欲傳送的隱藏陣列變數數值
1579
echo form::inputMultiHidden($conf);
1580
unset($conf);
1581
 
1582
#以圖片代替的表單送出扭
1583
#必填的參數:
1584
$conf["img"]="fedoraBear.png";#爲要作爲按鈕的圖片位置。
1585
#可省略的參數:
1586
#$conf["width"]="";#爲按鈕圖片的寬度,若省略,則按照原始圖片的寬度。
1587
#$conf["height"]="";#爲按鈕圖片的高度,若省略,則按照原始圖片的高度。
1588
#$conf["class"]="";/爲按鈕圖片要套用的css樣式名稱,若省略,則不套用任何css樣式。
1589
#$conf["trStart"]="true";#爲是否要以<tr>開頭,"true"表示"是"。也可以看作新的一列開始。
1590
#$conf["tdStart"]="true";#爲是否要以<td>開頭,"true"表示"是"。也可以看成列裏面的元素開始
1591
#$conf["tdEnd"]="true";#爲是否要以</td>結尾,"true"表示"是"。也可以看成列裏面的元素結束
1592
#$conf["trEnd"]="true";#爲是否要以</tr>結尾,"true"表示"是"。也可以看作該列結束。
1593
#備註:
1594
#使用圖片作為傳送按時,會傳送點擊圖片的x軸與y軸數數值.
1595
echo form::buttonImg($conf);
1596
unset($conf);
1597
 
1598
#涵式說明:
1599
#表單結束
1600
#回傳的結果:
1601
#$result,表單結束的語法
1602
#必填寫的參數:
1603
$conf["tableEnd"]="false";#爲該表單是否要以</table>結尾。"true"爲是;"false"爲否。
1604
echo form::end($conf);
1605
unset($conf);
1606
 
1607
#涵式說明:
1608
#可以處理多個透過GET、POST而來的資訊,儲存成變數,同時限定傳送的方法、來源,來增加安全性。
1609
#回傳的結果:
1610
#$result["status"],執行是否成功,"true"代表執行成功;"false"代表執行失敗。
1611
#$result["error"],錯誤訊息。
1612
#$result["inputDataContent"],所接收的參數陣列。
1613
#$result["inputDataContent"]["變數名稱"],所接收變數的內容
1614
#$result["inputDataCount"],總共接收到幾個元素。
1615
#必填的參數:
1616
$conf["method"]="post";#傳送過來的資料是用"post/POST"還是"get/GET"?
1617
#可省略的參數:
1618
#$conf["allowGet"]="true";#是否要允許 get 傳值,"true",代表允許;"false" ,代表不允許,預設爲不允許。
1619
#$conf["limitPrePage"]="";#是否要限定前一頁的網址為何,才能接收內容,不符合則轉址。
1620
#$conf["transferLocation"]="";#遇到get傳值的時候要轉址到的頁面,預設爲資安素養網"https:#isafe.moe.edu.tw/"
1621
#$conf["ignore"]=array();#如果要接收的變數名稱與該陣列其一元素一樣,則不放進要回傳的變數裏面。
1622
#$conf["correctCharacter"]="false";#如果爲"false",則不處理可能導致網頁出問題的字串,預設爲要進行處理。
1623
#備註:
1624
##$conf["limitPrePage"]參數目前無效
1625
#參考資料來源:
1626
#foreach 的用法 -> http:#php.net/manual/en/control-structures.foreach.php
1627
#伺服器端的變數 -> http://php.net/manual/en/reserved.variables.server.php
1628
var_dump(form::responseMultiInputDataSecurityEnhance($conf));
1629
unset($conf);
1630
 
1631
*/
1632
 
1633
#提示要測試的函式
1634
echo "<hr>form::removeConfirm<br>";
1635
 
1636
/*
1637
 
1638
#涵式說明:
1639
#移除東西的確認視窗
1640
#回傳的結果:
1641
#$result["status"],執行是否正常,"true"代表正常;"false"代表有問題
1642
#$reuslt["error"],錯誤訊息陣列
1643
#$result["content"],語法
1644
#必填的參數:
1645
$conf["itemName"]="test";#爲要刪除的物件提示名稱,格式爲字串。
1646
$conf["cancleActionPage"]="formT.php";#爲按下取消按鈕後,要交給那個頁面處理。
1647
$conf["removeActionPage"]="formT.php";#爲移除按鈕傳送的內容要交給哪一個頁面處理。
1648
#可省略的參數:
1649
$conf["fontColor"]="#9999FF";#可省略預設爲 "#000000"(黑色),爲提示的字型顏色,格式爲 #000000~#FFFFFF。
1650
$conf["cancleActionDisplayMethod"]="_top";#可省略,預設爲"_self",爲按下取消按鈕後,
1651
	#交給的處理的頁面要怎麼顯現,類型爲字串,可能值有 "_top" "_self" "_blank" "_blank"
1652
#$conf["cancleButtonStyle"]="";#可省略,爲取消鈕的css樣式類別名稱。
1653
#$conf["cancleButtonDisplayName"]="";#可省略,預設爲"取消",爲取消鈕的顯示名稱。
1654
#$conf["cancleSendingVarName"]=array("");#爲按下取消按鈕後要傳送的數值名稱
1655
#$conf["cancleSendingVarValue"]=array("");#爲按下取消按鈕後要傳送的數值內容
1656
$conf["removeActionDisplayMethod"]="_top";#可省略預設爲"_self",爲處理移除內容的頁面要如何顯現,
1657
	#類型爲字串,可能值有 "_top" "_self" "_blank" "_blank"
1658
#$conf["removeButtonStyle"]="";#可省略,爲移除按鈕的css樣式類別名稱。
1659
#$conf["removeButtonDisplayName"]="";#可省略,預設爲"確認移除",爲移除按鈕的顯示文字內容
1660
$conf["removeSendingVarName"]=array("hiddenVar");#爲按下移除按鈕後要傳送的數值名稱
1661
$conf["removeSendingVarValue"]=array("hiddenVarValue");#爲按下移除按鈕後要傳送的數值內容
1662
#程式建議:
1663
#要刪除的物件提示名稱,如果可以擺方多個資訊將會更方便。
1664
$removeConfirm=form::removeConfirm($conf);
1665
unset($conf);
1666
 
1667
var_dump($removeConfirm);
1668
 
1669
*/
1670
 
1671
#提示要測試的函式
1672
echo "<hr>form::inputSelect - testCase 1<br>";
1673
 
1674
/*
1675
 
1676
#涵式說明:
1677
#建立下拉式表單
1678
#回傳的結果:
1679
#$result["status"],執行是否正常,"true"代表正常,"false"代表失敗.
1680
#$result["error"],錯誤訊息陣列.
1681
#$result["content"],語法內容.
1682
#$result["function"],設置當前執行的涵式
1683
#必填的參數: 
1684
#$conf["name"],字串,爲該下拉式選單的名稱
1685
$conf["name"]="form::inputSelect - testCase 1";
1686
#$conf["sendValue"],陣列值,爲每個選項的實際傳送的數值,e.g. $sendValue = array("a","b","c","d","e");
1687
$conf["sendValue"]=array("A","B","C");
1688
#可省略的參數:
1689
#$conf["formName"]="";#該表單的名稱
1690
$conf["outputValue"]=array("ㄅ","ㄆ","ㄇ");#爲陣列值,爲每個選項的實際顯示的數值, e.g. $outputValue = array("p","o","i","t","e");,如果沒有設定,則其值同$conf["sendValue"]。
1691
$conf["viewCount"]="2";#為一次要顯示幾個選項,預設爲顯示一個。
1692
$conf["defaultValue"]="B";#為預設選取那個選項,須爲$conf["sendValue"]其中的一個值。
1693
#$conf["class"]="";#爲要套用的class樣式,預設有 __simpleButtonLinkDefaultButtonCssStyle  的css樣式名稱
1694
	#其屬性爲   "width","height","font-size","text-align"
1695
	#其屬性值爲 "100%"  ,  "50"  ,    "30"   ,   "center"
1696
#$conf["readOnly"],字串,內容是否唯獨,預設為"false",不唯獨,"true"為唯獨.
1697
#$conf["readOnly"]="true";
1698
#$conf["comment"],字串,下拉式表單的註解文字.
1699
$conf["comment"]="請選擇";
1700
#$conf["formAction"]="";#爲該下拉式表單要傳送到的位置
1701
#$conf["actionTarget"]="_self";#要如何接收網頁的迴應,預設爲_self
1702
#$conf["jsActivitor"]="";#爲觸發js的條件,可以是"onChange"(已改變內容時)...,須搭配$conf["jsAction"]參數。
1703
#$conf["jsAction"]="";#爲該js是要做什麼,可以是"document.forms.formName.submit()"(傳送名爲testForm的表單內容)...,須搭配$conf["jsActivitor"]參數。
1704
#$conf["independentForm"]="false";#是否該下拉式選單就是一個完整的表單,"true"代表是,"false"代表不是,預設為"true"
1705
#$conf["hiddenVar"],字串陣列,隱藏的變數名稱陣列.
1706
#$conf["hiddenVar"]=array("");
1707
#$conf["hiddanVarValue"],字串陣列,隱藏變數的數值內容.
1708
#$conf["hiddenVarValue"]=array("");
1709
#$conf["fixedPosition"],字串,該下拉式選單是否要隨着滾軸滾動時固定在畫面上特定的位置,於設為"false",代表不固定,"true"代表要固定.
1710
#$conf["fixedPosition"]="true";
1711
#$conf["fixedPosition.fixedTop"],字串,該選單距離畫面頂部的固定距離,預設為0px.
1712
#$conf["fixedPosition.fixedTop"]="0px";
1713
#$conf["fixedPosition.fixedLeft"],字串,該選單距離畫面左方的固定距離.預設為0px.
1714
#$conf["fixedPosition.fixedLeft"]="0px";
1715
#$conf["fixedPosition.emptySpaceSize"],字串,表單位置要放置多寬的空白,於設為40px.
1716
#$conf["fixedPosition.emptySpaceSize"]="40px"; 
1717
#$conf["tableStartClass"]="__withoutBorder";#表格要採用的css樣式,預設為__withoutBorder,__withoutBorder為沒有框線的樣式,__withBorder為有樣式的表格.
1718
#$conf["tableStart"]="true";#爲是否要以<table>結尾,"true"表示"是"。也可以看作表格結束。	
1719
#$conf["trStart"]="true";#爲是否要以<tr>開頭,"true"表示"是"。也可以看作新的一列開始。
1720
#$conf["tdStart"]="true";#爲是否要以<td>開頭,"true"表示"是"。也可以看成列裏面的元素開始
1721
#$conf["tdEnd"]="true";#爲是否要以</td>結尾,"true"表示"是"。也可以看成列裏面的元素結束
1722
#$conf["trEnd"]="true";#爲是否要以</tr>結尾,"true"表示"是"。也可以看作該列結束。
1723
#$conf["tableEnd"]="true";#爲是否要以</table>結尾,"true"表示"是"。也可以看作表格結束。		
1724
#備註:
1725
#$_SERVER["PHP_SELF"]為php檔案自己
1726
#參考資料來源:
1727
#http://stackoverflow.com/questions/833032/submit-is-not-a-function-in-javascript => form的id重複會導致"document.testForm.submit()"的javaScript語法出錯。
1728
#http://stackoverflow.com/questions/14622124/all-of-commands-for-submit-in-onchange-select-not-work => documents.forms.formName.submit() 才會將正確的表單送出。
1729
#http://stackoverflow.com/questions/368813/html-form-readonly-select-tag-input => 禁止改變選項,且也不會傳送該名稱表單
1730
#tableStart & tableEnd 要補上
1731
echo form::inputSelect($conf)["content"];
1732
unset($conf);
1733
 
1734
*/
1735
 
1736
#提示要測試的函式
1737
echo "<hr>form::inputSelect - testCase 2<br>";
1738
 
1739
/*
1740
 
1741
#涵式說明:
1742
#建立下拉式表單
1743
#回傳的結果:
1744
#$result["status"],執行是否正常,"true"代表正常,"false"代表失敗.
1745
#$result["error"],錯誤訊息陣列.
1746
#$result["content"],語法內容.
1747
#$result["function"],設置當前執行的涵式
1748
#必填的參數: 
1749
#$conf["name"],字串,爲該下拉式選單的名稱
1750
$conf["name"]="form::inputSelect - testCase 2";
1751
#$conf["sendValue"],陣列值,爲每個選項的實際傳送的數值,e.g. $sendValue = array("a","b","c","d","e");
1752
$conf["sendValue"]=array("A","B","C","D");
1753
#可省略的參數:
1754
#$conf["formName"]="";#該表單的名稱
1755
$conf["outputValue"]=array("ㄅ","ㄆ","ㄇ","ㄈ");#爲陣列值,爲每個選項的實際顯示的數值, e.g. $outputValue = array("p","o","i","t","e");,如果沒有設定,則其值同$conf["sendValue"]。
1756
$conf["viewCount"]="4";#為一次要顯示幾個選項,預設爲顯示一個。
1757
$conf["defaultValue"]="C";#為預設選取那個選項,須爲$conf["sendValue"]其中的一個值。
1758
#$conf["class"]="";#爲要套用的class樣式,預設有 __simpleButtonLinkDefaultButtonCssStyle  的css樣式名稱
1759
	#其屬性爲   "width","height","font-size","text-align"
1760
	#其屬性值爲 "100%"  ,  "50"  ,    "30"   ,   "center"
1761
#$conf["readOnly"],字串,內容是否唯獨,預設為"false",不唯獨,"true"為唯獨.
1762
$conf["readOnly"]="true";
1763
#$conf["comment"],字串,下拉式表單的註解文字.
1764
$conf["comment"]="請選擇";
1765
#$conf["formAction"]="";#爲該下拉式表單要傳送到的位置
1766
#$conf["actionTarget"]="_self";#要如何接收網頁的迴應,預設爲_self
1767
#$conf["jsActivitor"]="";#爲觸發js的條件,可以是"onChange"(已改變內容時)...,須搭配$conf["jsAction"]參數。
1768
#$conf["jsAction"]="";#爲該js是要做什麼,可以是"document.forms.formName.submit()"(傳送名爲testForm的表單內容)...,須搭配$conf["jsActivitor"]參數。
1769
#$conf["independentForm"]="false";#是否該下拉式選單就是一個完整的表單,"true"代表是,"false"代表不是,預設為"true"
1770
#$conf["hiddenVar"],字串陣列,隱藏的變數名稱陣列.
1771
#$conf["hiddenVar"]=array("");
1772
#$conf["hiddanVarValue"],字串陣列,隱藏變數的數值內容.
1773
#$conf["hiddenVarValue"]=array("");
1774
#$conf["fixedPosition"],字串,該下拉式選單是否要隨着滾軸滾動時固定在畫面上特定的位置,於設為"false",代表不固定,"true"代表要固定.
1775
#$conf["fixedPosition"]="true";
1776
#$conf["fixedPosition.fixedTop"],字串,該選單距離畫面頂部的固定距離,預設為0px.
1777
#$conf["fixedPosition.fixedTop"]="0px";
1778
#$conf["fixedPosition.fixedLeft"],字串,該選單距離畫面左方的固定距離.預設為0px.
1779
#$conf["fixedPosition.fixedLeft"]="0px";
1780
#$conf["fixedPosition.emptySpaceSize"],字串,表單位置要放置多寬的空白,於設為40px.
1781
#$conf["fixedPosition.emptySpaceSize"]="40px"; 
1782
#$conf["tableStartClass"]="__withoutBorder";#表格要採用的css樣式,預設為__withoutBorder,__withoutBorder為沒有框線的樣式,__withBorder為有樣式的表格.
1783
#$conf["tableStart"]="true";#爲是否要以<table>結尾,"true"表示"是"。也可以看作表格結束。	
1784
#$conf["trStart"]="true";#爲是否要以<tr>開頭,"true"表示"是"。也可以看作新的一列開始。
1785
#$conf["tdStart"]="true";#爲是否要以<td>開頭,"true"表示"是"。也可以看成列裏面的元素開始
1786
#$conf["tdEnd"]="true";#爲是否要以</td>結尾,"true"表示"是"。也可以看成列裏面的元素結束
1787
#$conf["trEnd"]="true";#爲是否要以</tr>結尾,"true"表示"是"。也可以看作該列結束。
1788
#$conf["tableEnd"]="true";#爲是否要以</table>結尾,"true"表示"是"。也可以看作表格結束。		
1789
#備註:
1790
#$_SERVER["PHP_SELF"]為php檔案自己
1791
#參考資料來源:
1792
#http://stackoverflow.com/questions/833032/submit-is-not-a-function-in-javascript => form的id重複會導致"document.testForm.submit()"的javaScript語法出錯。
1793
#http://stackoverflow.com/questions/14622124/all-of-commands-for-submit-in-onchange-select-not-work => documents.forms.formName.submit() 才會將正確的表單送出。
1794
#http://stackoverflow.com/questions/368813/html-form-readonly-select-tag-input => 禁止改變選項,且也不會傳送該名稱表單
1795
#tableStart & tableEnd 要補上
1796
echo form::inputSelect($conf)["content"];
1797
unset($conf);
1798
 
1799
*/
1800
 
1801
#提示要測試的函式
1802
echo "<hr>form::inputSelect - testCase 3<br>";
1803
 
1804
/*
1805
 
1806
#涵式說明:
1807
#建立下拉式表單
1808
#回傳的結果:
1809
#$result["status"],執行是否正常,"true"代表正常,"false"代表失敗.
1810
#$result["error"],錯誤訊息陣列.
1811
#$result["content"],語法內容.
1812
#$result["function"],設置當前執行的涵式
1813
#必填的參數: 
1814
#$conf["name"],字串,爲該下拉式選單的名稱
1815
$conf["name"]="form::inputSelect - testCase 3";
1816
#$conf["sendValue"],陣列值,爲每個選項的實際傳送的數值,e.g. $sendValue = array("a","b","c","d","e");
1817
$conf["sendValue"]=array("請選擇","A","B","C","D");
1818
#可省略的參數:
1819
$conf["formName"]="inputSelect";#該表單的名稱
1820
$conf["outputValue"]=array("請選擇","ㄅ","ㄆ","ㄇ","ㄈ");#爲陣列值,爲每個選項的實際顯示的數值, e.g. $outputValue = array("p","o","i","t","e");,如果沒有設定,則其值同$conf["sendValue"]。
1821
$conf["viewCount"]="3";#為一次要顯示幾個選項,預設爲顯示一個。
1822
$conf["defaultValue"]="請選擇";#為預設選取那個選項,須爲$conf["sendValue"]其中的一個值。
1823
#$conf["class"]="";#爲要套用的class樣式,預設有 __simpleButtonLinkDefaultButtonCssStyle  的css樣式名稱
1824
	#其屬性爲   "width","height","font-size","text-align"
1825
	#其屬性值爲 "100%"  ,  "50"  ,    "30"   ,   "center"
1826
#$conf["readOnly"],字串,內容是否唯獨,預設為"false",不唯獨,"true"為唯獨.
1827
#$conf["readOnly"]="true";
1828
#$conf["comment"],字串,下拉式表單的註解文字.
1829
$conf["comment"]="請選擇";
1830
$conf["formAction"]="formT.php";#爲該下拉式表單要傳送到的位置
1831
$conf["actionTarget"]="_self";#要如何接收網頁的迴應,預設爲_self
1832
$conf["jsActivitor"]="onChange";#爲觸發js的條件,可以是"onChange"(已改變內容時)...,須搭配$conf["jsAction"]參數。
1833
$conf["jsAction"]="document.forms.inputSelect.submit()";#爲該js是要做什麼,可以是"document.forms.formName.submit()"(傳送名爲testForm的表單內容)...,須搭配$conf["jsActivitor"]參數。
1834
#$conf["independentForm"]="false";#是否該下拉式選單就是一個完整的表單,"true"代表是,"false"代表不是,預設為"true"
1835
#$conf["hiddenVar"],字串陣列,隱藏的變數名稱陣列.
1836
$conf["hiddenVar"]=array("x","y","z");
1837
#$conf["hiddanVarValue"],字串陣列,隱藏變數的數值內容.
1838
$conf["hiddenVarValue"]=array("X","Y","Z");
1839
#$conf["fixedPosition"],字串,該下拉式選單是否要隨着滾軸滾動時固定在畫面上特定的位置,於設為"false",代表不固定,"true"代表要固定.
1840
#$conf["fixedPosition"]="true";
1841
#$conf["fixedPosition.fixedTop"],字串,該選單距離畫面頂部的固定距離,預設為0px.
1842
#$conf["fixedPosition.fixedTop"]="0px";
1843
#$conf["fixedPosition.fixedLeft"],字串,該選單距離畫面左方的固定距離.預設為0px.
1844
#$conf["fixedPosition.fixedLeft"]="0px";
1845
#$conf["fixedPosition.emptySpaceSize"],字串,表單位置要放置多寬的空白,於設為40px.
1846
#$conf["fixedPosition.emptySpaceSize"]="40px"; 
1847
#$conf["tableStartClass"]="__withoutBorder";#表格要採用的css樣式,預設為__withoutBorder,__withoutBorder為沒有框線的樣式,__withBorder為有樣式的表格.
1848
#$conf["tableStart"]="true";#爲是否要以<table>結尾,"true"表示"是"。也可以看作表格結束。	
1849
#$conf["trStart"]="true";#爲是否要以<tr>開頭,"true"表示"是"。也可以看作新的一列開始。
1850
#$conf["tdStart"]="true";#爲是否要以<td>開頭,"true"表示"是"。也可以看成列裏面的元素開始
1851
#$conf["tdEnd"]="true";#爲是否要以</td>結尾,"true"表示"是"。也可以看成列裏面的元素結束
1852
#$conf["trEnd"]="true";#爲是否要以</tr>結尾,"true"表示"是"。也可以看作該列結束。
1853
#$conf["tableEnd"]="true";#爲是否要以</table>結尾,"true"表示"是"。也可以看作表格結束。		
1854
#備註:
1855
#$_SERVER["PHP_SELF"]為php檔案自己
1856
#參考資料來源:
1857
#http://stackoverflow.com/questions/833032/submit-is-not-a-function-in-javascript => form的id重複會導致"document.testForm.submit()"的javaScript語法出錯。
1858
#http://stackoverflow.com/questions/14622124/all-of-commands-for-submit-in-onchange-select-not-work => documents.forms.formName.submit() 才會將正確的表單送出。
1859
#http://stackoverflow.com/questions/368813/html-form-readonly-select-tag-input => 禁止改變選項,且也不會傳送該名稱表單
1860
#tableStart & tableEnd 要補上
1861
var_dump(form::inputSelect($conf));
1862
unset($conf);
1863
 
1864
#涵式說明:
1865
#可以處理多個透過GET、POST而來的資訊,儲存成變數,同時限定傳送的方法、來源,來增加安全性,檢查有沒有皆收到必須要接收到的變數,沒有接收到的變數可以指定從session變數中取得.
1866
#回傳的結果:
1867
#$result["status"],執行正常與否,"true"代表正常,"false"代表不正常.
1868
#$result["error"],錯誤訊息陣列.
1869
#$resutl["function"],當前執行的涵式名稱.
1870
#$result["warning"],警告訊息陣列.
1871
#$result["passed"],是否有皆收到全部該接收到的變數,若有設定$conf["checkedVarName"]的話,執行正常後會回傳該結果。
1872
#$result["lostVarName"],沒有皆收到的變數名稱陣列
1873
#$result["inputDataContent"],所接收的參數陣列.
1874
#$result["inputDataContent"]["變數名稱"],所接收變數的內容.
1875
#$result["inputDataCount"],從表單總共接收到幾個元素.
1876
#$result["HTTP_REFERER"],前一頁的網址,null代表不存在.
1877
#必填的參數:
1878
#$conf["method"],字串,傳送過來的資料是用"post/POST"還是"get/GET"?
1879
$conf["method"]="post";
1880
#可省略的參數:
1881
#$conf["allowGet"],字串,是否要允許 get 傳值,"true",代表允許;"false" ,代表不允許,預設爲不允許.
1882
#$conf["allowGet"]="true";
1883
#$conf["limitPrePage"],字串陣列,是否要限定前一頁的網址為哪些,才能接收內容,不符合則轉址.
1884
#$conf["limitPrePage"]=array("");
1885
#$conf["transferLocation"],字串,遇到get傳值,或前一個頁面不符合要求時要轉址到的頁面,預設爲資安素養網"https://isafe.moe.edu.tw/"
1886
#$conf["transferLocation"]="";
1887
#$conf["ignore"]=字串陣列,如果要接收的變數名稱與該陣列其一元素一樣,則不放進要回傳的變數裏面.
1888
#$conf["ignore"]=array();
1889
#$conf["correctCharacter"]=,字串,如果爲"false",則不處理可能導致網頁出問題的字串,預設爲要進行處理.
1890
#$conf["correctCharacter"]="false";
1891
#$conf["checkedVarName"],字串陣列,為檢查是否有接收到哪些變數.
1892
#$conf["checkedVarName"]=array(); 
1893
#$conf["canBeEmptyString"],字串,用$conf["checkedVarName"]指定接收的變數名稱陣列,若接收到的內容為空字串是否算有接收到內容,預設為"false","true"代表接收到的內容可以為空字串,"false"代表接收到的內容不可以為空字串.	
1894
#$conf["canBeEmptyString"]="false";
1895
#$conf["sessionNameArray"],陣列,若存在則代表若沒有從表單取得變數,則從session變數中取得內容,每個元素代表每個表單變數對應的session名稱,若不是要改用session方式取得變數內容的變數,請輸入null,數量請跟$conf["checkedVarName"]參數一致.
1896
#$conf["sessionNameArray"]=array();
1897
#$conf["unsetSessionArray"],陣列,與$conf["sessionNameArray"]對應的元素,是否要接收到變數後就卸除,"true"代表要卸除,"false"代表不要卸除.
1898
#$conf["unsetSessionArray"]=array();
1899
#參考資料來源:
1900
#foreach 的用法 -> http://php.net/manual/en/control-structures.foreach.php
1901
#伺服器端的變數 -> http://php.net/manual/en/reserved.variables.server.php
1902
#備註:
1903
#表單變數的名稱若含有「.」,則會變成「-」。
1904
var_dump(form::responseMultiInputDataSecurityEnhance($conf));
1905
unset($conf);
1906
 
1907
*/
1908
 
1909
#提示要測試的函式
1910
echo "<hr>form::inputSelect - testCase 4<br>";
1911
 
1912
/*
1913
 
1914
#涵式說明:
1915
#建立下拉式表單
1916
#回傳的結果:
1917
#$result["status"],執行是否正常,"true"代表正常,"false"代表失敗.
1918
#$result["error"],錯誤訊息陣列.
1919
#$result["content"],語法內容.
1920
#$result["function"],設置當前執行的涵式
1921
#必填的參數: 
1922
#$conf["name"],字串,爲該下拉式選單的名稱
1923
$conf["name"]="action";
1924
#$conf["sendValue"],陣列值,爲每個選項的實際傳送的數值,e.g. $sendValue = array("a","b","c","d","e");
1925
$conf["sendValue"]=array("請選擇","回上頁","上傳檔案");
1926
#可省略的參數:
1927
$conf["formName"]="controlPanelAction";#該表單的名稱
1928
#$conf["outputValue"]=array();#爲陣列值,爲每個選項的實際顯示的數值, e.g. $outputValue = array("p","o","i","t","e");,如果沒有設定,則其值同$conf["sendValue"]。
1929
#$conf["viewCount"]="";#為一次要顯示幾個選項,預設爲顯示一個。
1930
$conf["defaultValue"]="請選擇";#為預設選取那個選項,須爲$conf["sendValue"]其中的一個值。
1931
#$conf["class"]="";#爲要套用的class樣式,預設為 "__qbpwcf_inputSelect".
1932
#$conf["readOnly"],字串,內容是否唯獨,預設為"false",不唯獨,"true"為唯獨.
1933
#$conf["readOnly"]="true";
1934
#$conf["comment"],字串,輸入方框上面要放哪些註解文字,亦即用label來呈現,同時指定"for"屬性的數值為當前"input"標籤的id,意即參數"name"的內容.
1935
#$conf["comment"]="";
1936
$conf["formAction"]="controlPanel.action.php";#爲該下拉式表單要傳送到的位置
1937
$conf["actionTarget"]="_top";#要如何接收網頁的迴應,預設爲_self
1938
$conf["jsActivitor"]="onChange";#爲觸發js的條件,可以是"onChange"(已改變內容時)...,須搭配$conf["jsAction"]參數。
1939
$conf["jsAction"]="document.forms.controlPanelAction.submit()";#爲該js是要做什麼,可以是"document.forms.formName.submit()"(傳送名爲testForm的表單內容)...,須搭配$conf["jsActivitor"]參數。
1940
#$conf["independentForm"]="false";#是否該下拉式選單就是一個完整的表單,"true"代表是,"false"代表不是,預設為"true"
1941
#$conf["hiddenVar"],字串陣列,隱藏的變數名稱陣列.
1942
#$conf["hiddenVar"]=array("");
1943
#$conf["hiddanVarValue"],字串陣列,隱藏變數的數值內容.
1944
#$conf["hiddenVarValue"]=array("");
1945
#$conf["fixedPosition"],字串,該下拉式選單是否要隨着滾軸滾動時固定在畫面上特定的位置,於設為"false",代表不固定,"true"代表要固定.
1946
$conf["fixedPosition"]="true";
1947
#$conf["fixedPosition.fixedTop"],字串,該選單距離畫面頂部的固定距離,預設為0px.
1948
#$conf["fixedPosition.fixedTop"]="0px";
1949
#$conf["fixedPosition.fixedLeft"],字串,該選單距離畫面左方的固定距離.預設為0px.
1950
#$conf["fixedPosition.fixedLeft"]="0px";
1951
#$conf["fixedPosition.emptySpaceSize"],字串,表單位置要放置多寬的空白,於設為40px.
1952
#$conf["fixedPosition.emptySpaceSize"]="40px"; 
1953
#$conf["tableStartClass"]="__withoutBorder";#表格要採用的css樣式,預設為__withoutBorder,__withoutBorder為沒有框線的樣式,__withBorder為有樣式的表格.
1954
#$conf["tableStart"]="true";#爲是否要以<table>結尾,"true"表示"是"。也可以看作表格結束。	
1955
#$conf["trStart"]="true";#爲是否要以<tr>開頭,"true"表示"是"。也可以看作新的一列開始。
1956
#$conf["tdStart"]="true";#爲是否要以<td>開頭,"true"表示"是"。也可以看成列裏面的元素開始
1957
#$conf["tdEnd"]="true";#爲是否要以</td>結尾,"true"表示"是"。也可以看成列裏面的元素結束
1958
#$conf["trEnd"]="true";#爲是否要以</tr>結尾,"true"表示"是"。也可以看作該列結束。
1959
#$conf["tableEnd"]="true";#爲是否要以</table>結尾,"true"表示"是"。也可以看作表格結束。		
1960
#備註:
1961
#$_SERVER["PHP_SELF"]為php檔案自己
1962
#參考資料來源:
1963
#http://stackoverflow.com/questions/833032/submit-is-not-a-function-in-javascript => form的id重複會導致"document.testForm.submit()"的javaScript語法出錯。
1964
#http://stackoverflow.com/questions/14622124/all-of-commands-for-submit-in-onchange-select-not-work => documents.forms.formName.submit() 才會將正確的表單送出。
1965
#http://stackoverflow.com/questions/368813/html-form-readonly-select-tag-input => 禁止改變選項,且也不會傳送該名稱表單
1966
#tableStart & tableEnd 要補上
1967
$inputSelect=form::inputSelect($conf);
1968
unset($conf);
1969
 
1970
#如果執行失敗
1971
if($inputSelect["status"]==="false"){
1972
 
1973
	#印出結果
1974
	var_dump($inputSelect);
1975
 
1976
	#結束程式
1977
	exit;
1978
 
1979
	}#if end 
1980
 
1981
#印出內容
1982
echo $inputSelect["content"];
1983
 
1984
*/
1985
 
1986
#提示要測試的函式
1987
echo "<hr>form::sendHugeDataButton - testCase 1<br>";
1988
 
1989
/*
1990
 
1991
#涵式說明:
1992
#一個簡單的按鈕,按了可以到指定的頁面。同時也可以傳送多個隱藏的變數
1993
#回傳的結果
1994
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
1995
#$result["error"],錯誤訊息陣列
1996
#$result["function"],當前執行的函數名稱.
1997
#$result["content"],語法內容
1998
#必填的參數:
1999
$conf["buttonDisplayValue"]="test";#按鈕上要顯示的文字
2000
#可以省略的參數:
2001
#$conf["buttonStyleName"]="";#按鈕的css樣式應該爲何,若省略的話預設會採用 __simpleButtonLinkDefaultButtonCssStyle 的樣式
2002
	#其屬性爲   "width","height","font-size","text-align"
2003
	#其屬性值爲 "300"  ,  "50"  ,    "30"   ,   "center"
2004
#備註:
2005
# __simpleButtonLinkDefaultButtonCssStyle,爲預設的按鈕css樣式,請勿使用相同類別名稱的css樣式,以免衝突。
2006
$conf["hiddenVarName"]=array("hiVar");#要傳送的隱藏變數名稱,與 $conf["hiddenVarContent"] 相對應。
2007
$conf["hiddenVarContent"]=array("sxsxx");#要傳誦的隱藏變數內容,與 $conf["hiddenVarName"] 相對應。
2008
#$conf["disabled"]="true";#可省略,為按鈕的功能是否要取消,若為"true"則代表要取消,若為"false"則代表功能正常,預設為"false".
2009
$conf["formStart"]="true";#爲是否要表單開始,如果爲"true"則代表要表單開始,預設爲"true"
2010
#$conf["formName"]="";#該表單的名稱
2011
$conf["actionPage"]="formT.php";#按鈕按了之後要到哪個地方?若爲 $_SERVER["PHP_SELF"],則爲回到目前頁面。
2012
#$conf["buttonActionScriptFunction"]="";#可省略,爲按下按鈕時所要執行的javaScript函式,預設不設定。
2013
	#可以是"document.forms.formName.submit()"(傳送名爲testForm的表單內容).
2014
$conf["formEnd"]="true";#爲是否要表單結束,如果爲"true"則代表要表單結束,預設爲"true"
2015
#$conf["tableStart"]="true";#爲是否要表格開始,"true"表示"是"。
2016
#$conf["tableClass"]="__withoutBorder";#爲表格要採用的css樣式名稱,"__withoutBorder"代表沒有框線的預設樣式;"__withBorder"代表有框線的預設樣式
2017
#$conf["trStart"]="true";#爲是否要以<tr>開頭,"true"表示"是"。也可以看作新的一列開始。
2018
#$conf["trClass"]="__withoutBorder";#列開始的css樣式,"__withoutBorder"代表沒有框線的預設樣式;"__withBorder"代表有框線的預設樣式
2019
#$conf["tdStart"]="true";#爲是否要以<td>開頭,"true"表示"是"。也可以看成列裏面的元素開始
2020
#$conf["tdClass"]="__withoutBorder";#行開始的css樣式,"__withoutBorder"代表沒有框線的預設樣式;"__withBorder"代表有框線的預設樣式
2021
#$conf["tdEnd"]="true";#爲是否要以</td>結尾,"true"表示"是"。也可以看成列裏面的元素結束
2022
#$conf["trEnd"]="true";#爲是否要以</tr>結尾,"true"表示"是"。也可以看作該列結束。
2023
$conf["displayTarget"]="_blank";#頁面的呈現方法,可以是開新視窗(_blank)、在目前頁面、頁框裏面(_self)、在父頁面(_parent)、最上層頁面(_top),預設為"_top"。
2024
#$conf["tableEnd"]="true";#爲是否要表格結束,"true"表示"是"。
2025
var_dump(form::sendHugeDataButton($conf));
2026
unset($conf);
2027
 
2028
#涵式說明:
2029
#可以處理多個透過GET、POST而來的資訊,儲存成變數,同時限定傳送的方法、來源,來增加安全性,檢查有沒有皆收到必須要接收到的變數,沒有接收到的變數可以指定從session變數中取得.
2030
#回傳的結果:
2031
#$result["status"],執行正常與否,"true"代表正常,"false"代表不正常.
2032
#$result["error"],錯誤訊息陣列.
2033
#$resutl["function"],當前執行的涵式名稱.
2034
#$result["warning"],警告訊息陣列.
2035
#$result["passed"],是否有皆收到全部該接收到的變數,若有設定$conf["checkedVarName"]的話,執行正常後會回傳該結果。
2036
#$result["lostVarName"],沒有皆收到的變數名稱陣列
2037
#$result["inputDataContent"],所接收的參數陣列.
2038
#$result["inputDataContent"]["變數名稱"],所接收變數的內容.
2039
#$result["inputDataCount"],從表單總共接收到幾個元素.
2040
#$result["HTTP_REFERER"],前一頁的網址,null代表不存在.
2041
#必填的參數:
2042
#$conf["method"],字串,傳送過來的資料是用"post/POST"還是"get/GET"?
2043
$conf["method"]="post";
2044
#可省略的參數:
2045
#$conf["allowGet"],字串,是否要允許 get 傳值,"true",代表允許;"false" ,代表不允許,預設爲不允許.
2046
#$conf["allowGet"]="true";
2047
#$conf["limitPrePage"],字串陣列,是否要限定前一頁的網址為哪些,才能接收內容,不符合則轉址.
2048
#$conf["limitPrePage"]=array("");
2049
#$conf["transferLocation"],字串,遇到get傳值,或前一個頁面不符合要求時要轉址到的頁面,預設爲資安素養網"https://isafe.moe.edu.tw/"
2050
#$conf["transferLocation"]="";
2051
#$conf["ignore"]=字串陣列,如果要接收的變數名稱與該陣列其一元素一樣,則不放進要回傳的變數裏面.
2052
#$conf["ignore"]=array();
2053
#$conf["correctCharacter"]=,字串,如果爲"false",則不處理可能導致網頁出問題的字串,預設爲要進行處理.
2054
#$conf["correctCharacter"]="false";
2055
#$conf["checkedVarName"],字串陣列,為檢查是否有接收到哪些變數.
2056
#$conf["checkedVarName"]=array(); 
2057
#$conf["canBeEmptyString"],字串,用$conf["checkedVarName"]指定接收的變數名稱陣列,若接收到的內容為空字串是否算有接收到內容,預設為"false","true"代表接收到的內容可以為空字串,"false"代表接收到的內容不可以為空字串.	
2058
#$conf["canBeEmptyString"]="false";
2059
#$conf["sessionNameArray"],陣列,若存在則代表若沒有從表單取得變數,則從session變數中取得內容,每個元素代表每個表單變數對應的session名稱,若不是要改用session方式取得變數內容的變數,請輸入null,數量請跟$conf["checkedVarName"]參數一致.
2060
#$conf["sessionNameArray"]=array();
2061
#$conf["unsetSessionArray"],陣列,與$conf["sessionNameArray"]對應的元素,是否要接收到變數後就卸除,"true"代表要卸除,"false"代表不要卸除.
2062
#$conf["unsetSessionArray"]=array();
2063
#參考資料來源:
2064
#foreach 的用法 -> http://php.net/manual/en/control-structures.foreach.php
2065
#伺服器端的變數 -> http://php.net/manual/en/reserved.variables.server.php
2066
#備註:
2067
#表單變數的名稱若含有「.」,則會變成「-」。
2068
var_dump(form::responseMultiInputDataSecurityEnhance($conf));
2069
unset($conf);
2070
 
2071
*/
2072
 
2073
#提示要測試的函式
2074
echo "<hr>form::inputText - testCase 1<br>";
2075
 
2076
/*
2077
 
2078
#涵式說明:
2079
#可以輸入文字的表單
2080
#回傳的結果:
2081
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
2082
#$result["function"],當前執行的函數.
2083
#$result["error"],錯誤訊息陣列.
2084
#$result["content"],按鈕語法. 
2085
#必填的參數
2086
$conf["name"]="form::inputText - testCase 1";#爲該文字輸入框的名稱,用於讓接收頁面讀取的名稱。
2087
$conf["readOnly"]="false";#爲該文字框是否可以填寫資料,若要只能觀看不能填寫,那麼就必須將其值設爲"true",反之要設爲"false"
2088
#可省略的參數:
2089
$conf["width"]="100";#爲文字框的外觀長度,預設是不作設定讓瀏覽器自行決定。
2090
$conf["maxInputLength"]="20";#爲可輸入的最大位元長度,預設不限制。
2091
$conf["autoFocus"]="true";#是否為將填寫的指標移到該表單,"true"代表要,預設為"false".
2092
$conf["value"]="form::inputText - testCase 1";#爲該文字框預設要顯示的文字,預設爲""。	
2093
#$conf["class"]="";#爲要套用的css樣式,若省略,則會套用預設的 "__inputTextCssStyle" 樣式,其屬性爲 "width:100%","font-size:30px"
2094
#$conf["jsActivitor"]="";#爲觸發js的條件,可以是"onChange"(已改變內容時)、"onClick"(按下按鈕時)、"onkeyup"(當鍵盤按下放開後)、"onmouseover"(當滑鼠移過去的時候)...,須搭配$conf["jsSubmitActionTarget"]參數。
2095
#$conf["jsAction"]="";#爲該js是要做什麼,可以是"document.testForm.submit()"(傳送名爲testForm的表單內容)...,須搭配$conf["jsActivitor"]參數。		
2096
#$conf["trStart"]="true";#爲是否要以<tr>開頭,"true"表示"是"。也可以看作新的一列開始,預設為"false".
2097
#$conf["tdStart"]="true";#爲是否要以<td>開頭,"true"表示"是"。也可以看成列裏面的元素開始,預設為"false".
2098
$conf["formStart"]="true";#爲是否要以<form>開頭,"true"表示"是",也可以看成表單的開始,預設為"false".
2099
$conf["formAction"]="formT.php";#表單遞交的目的地,若$conf["formStart"]為"true",則該參數不能省略.
2100
#$conf["formName"]="";#爲該表單的名稱
2101
#$conf["formMethod"]="";#爲傳輸的方法,若沒設定則預設爲post,其他可用的參數爲get。
2102
#$conf["formTarget"]="_blank";#為顯示的方式,若沒設定則預設爲"_self",其他可用的參數爲 "_blank"、"_parent"、"_top",也可以是iframe的名稱。
2103
#$conf["tableStart"]="true";#爲該表單是否要以<table>開始。"true"爲是,預設為"false".
2104
#$conf["tableClass"]="";#表格要套用的css樣式,若爲"__withoutBorder"的話則套用無框線的預設樣式;若爲"__withBorder"的話,則爲有框線的預設樣式,預設為"__withoutBorder".
2105
#$conf["formEnd"]="true";#爲是否要以<form>結尾,"true"表示"是",也可以看成表單的結束,預設為"false".
2106
#$conf["tdEnd"]="true";#爲是否要以</td>結尾,"true"表示"是"。也可以看成列裏面的元素結束,預設為"false".
2107
#$conf["trEnd"]="true";#爲是否要以</tr>結尾,"true"表示"是"。也可以看作該列結束,預設為"false".
2108
#$conf["tableEnd"]="true";#爲該表單是否要以</table>結尾,"true"爲是,預設為"false".
2109
#$conf["autocomplete"],字串,是否依據使用者過往輸入的記錄來提示可能要的輸入內容,"on"為啟用,"off"為停用.
2110
$conf["autocomplete"]="off";
2111
#$conf["required"],字串,該欄位是否必填,"true"為必填,"false"為可留空,預設為"false".
2112
$conf["required"]="true";
2113
#$conf["comment"],字串,輸入方框上面要放哪些註解文字.
2114
$conf["comment"]="form::inputText - testCase 1";
2115
#$conf["placeholder"],字串,當沒有內容時要顯示的內容.
2116
$conf["placeholder"]="請隨便輸入";
2117
#$conf["br"],字串,"true"代表最後要換行,預設為"false".
2118
$conf["br"]="true";
2119
#$conf["p"],字串,"true"代表最後要空一行,預設為"false".
2120
$conf["p"]="true";
2121
echo form::inputText($conf)["content"];
2122
unset($conf);
2123
 
2124
#函式說明:
2125
#放置按鈕
2126
#回傳結果:
2127
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
2128
#$result["function"],當前執行的函數.
2129
#$result["error"],錯誤訊息陣列.
2130
#$result["content"],按鈕語法. 
2131
#必要的參數:
2132
$conf["buttonDisplayValue"]="送出";#爲按鈕上顯示的文字。
2133
#可省略的參數:
2134
#$conf["buttonStyleName"]="";#可省略,爲按鈕所要使用的css樣式類別名稱,預設的css樣式爲 __simpleButtonLinkDefaultButtonCssStyle 。
2135
	#其屬性爲   "width","height","font-size","text-align"
2136
	#其屬性值爲 "100%" ,  "50"  ,    "30"   ,   "center"
2137
#$conf["buttonActionScriptFunction"]="";#可省略,爲按下按鈕時所要執行的javaScript函式,預設不設定。
2138
	#"document.forms.formName.submit()"爲傳送名爲testForm的表單內容
2139
	#"window.print()"爲使用瀏覽器內建工具列印當前網頁
2140
#$conf["buttonBorder"]="";#可省略,爲IE9內會自動產生外框,此爲外框的厚度,屬性值爲正整數,預設爲0。
2141
#$conf["disabled"]="true";#可省略,為按鈕的功能是否要取消,若為"true"則代表要取消,若為"false"則代表功能正常,預設為"false".
2142
#$conf["tableStart"]="true";#爲是否要表格開始。"false"代表否,"true"代表是。預設爲"false"。
2143
#$conf["tableClass"]="";#表格要套用的css樣式,若省略的話,則預設爲 __defaultTbaleCsssStyle 其屬性爲 table-layout:fixed word-break:break-all width:100% ,須搭配 $conf["tablStart"] 與 $conf["tableEnd"] 使用。
2144
#$conf["trStart"]="true";#爲是否要以<tr>開頭,"true"表示"是"。也可以看作新的一列開始,預設為"false".
2145
#$conf["trClass"]="__withoutBorder";#<tr>要套用的css樣式,預設為"__withoutBorder",亦即沒有框線的樣式;"__withBorder"則爲有框線的樣式
2146
#$conf["tdStart"]="true";#爲是否要以<td>開頭,"true"表示"是"。也可以看成列裏面的元素開始,預設為"false".
2147
#$conf["tdClass"]="__withoutBorder";#<td>要套用的css樣式,"__withoutBorder"爲沒有框線的樣式;__withBorder爲有框線的樣式
2148
#$conf["tdEnd"]="true";#爲是否要以</td>結尾,"true"表示"是"。也可以看成列裏面的元素結束,預設為"false".
2149
#$conf["trEnd"]="true";#爲是否要以</tr>結尾,"true"表示"是"。也可以看作該列結束,預設為"false".
2150
#$conf["tableEnd"]="true";#爲是否要表格結束。"false"代表否,"true"代表是,預設爲"false"。
2151
#$conf["formStart"]="true";#爲是否要表單開始,如果爲"true"則代表要表單開始,預設為"false".
2152
#$conf["action"]="";#爲表單要傳送到哪個頁面,須搭配$conf["formStart"]與$conf["formEnd"]參數使用
2153
#$conf["target"]="";#為目標表單顯示的方式,若沒設定則預設爲"_self",其他可用的參數爲 "_blank"、"_parent"、"_top",也可以是iframe的名稱。須搭配$conf["formStart"]與$conf["formEnd"]參數使用
2154
$conf["formEnd"]="true";#爲是否要表單結束,如果爲"true"則代表要表單結束,預設為"false".
2155
#參考資料來源:
2156
#http://stackoverflow.com/questions/3014649/how-to-disable-html-button-using-javascript
2157
echo form::button($conf)["content"];
2158
unset($conf);
2159
 
2160
*/
2161
 
2162
#提示要測試的函式
2163
echo "<hr>form::inputTextArea - testCase 1<br>";
2164
 
2165
/*
2166
 
2167
#涵式說明:
2168
#可以輸入文字的區塊
2169
#回傳結果:
2170
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
2171
#$result["function"],當前執行的函數.
2172
#$result["error"],錯誤訊息陣列.
2173
#$result["content"],按鈕語法. 		
2174
#必填的參數:
2175
$conf["name"]="form::inputTextArea - testCase 1";#爲文字輸入框的名稱,供接收端辨識用。
2176
$conf["readOnly"]="false";#爲是否要爲唯讀,如果爲"true",則爲唯讀。反之則爲"false"。
2177
#可省略的參數:
2178
#$conf["cols"]="";#爲文字輸入框的欄位數(寬),預設爲按照瀏覽器設定值。
2179
#$conf["rows"]="";#爲文字輸入框的列數(高),預設爲按照瀏覽器設定值。
2180
$conf["maxInputLength"]="40";#爲文字輸入的長度限制,預設無限制。
2181
$conf["defaultText"]="請任意輸入";#爲文字輸入框裏面的預設文字內容,預設是空的。
2182
#$conf["class"]=;#爲要套用的css樣式。如果沒有指定 ,則採用預設的css樣式,"__inputTextAreaCssStyle",其屬性爲 "width:100%","height:120px","font-size:30px"
2183
#$conf["jsActivitor"]="";#爲觸發js的條件,可以是"onChange"(已改變內容時)...,須搭配$conf["jsSubmitActionTarget"]參數。
2184
#$conf["jsAction"]="";#爲該js是要做什麼,可以是"document.testForm.submit()"(傳送名爲testForm的表單內容)...,須搭配$conf["jsActivitor"]參數。
2185
$conf["formStart"]="true";#爲是否要以<form>開頭,"true"表示"是",也可以看成表單的開始,預設為"false".
2186
$conf["formAction"]="formT.php";#表單遞交的目的地,若$conf["formStart"]為"true",則該參數不能省略.
2187
#$conf["formName"]="";#爲該表單的名稱
2188
#$conf["formMethod"]="";#爲傳輸的方法,若沒設定則預設爲post,其他可用的參數爲get。
2189
#$conf["formTarget"]="";#為顯示的方式,若沒設定則預設爲"_self",其他可用的參數爲 "_blank"、"_parent"、"_top",也可以是iframe的名稱。
2190
#$conf["formEnd"]="true";#爲是否要以<form>結尾,"true"表示"是",也可以看成表單的結束,預設為"false".
2191
#$conf["comment"],字串,輸入方框上面要放哪些註解文字.
2192
$conf["comment"]="可以輸入多行文字的文字方框";
2193
#$conf["required"],字串,該欄位是否必填,"true"為必填,"false"為可留空,預設為"false".
2194
$conf["required"]="true";
2195
#$conf["placeholder"],字串,當沒有內容時要顯示的內容.
2196
$conf["placeholder"]="請任意輸入";
2197
#$conf["trStart"]="true";#爲是否要以<tr>開頭,"true"表示"是",也可以看作新的一列開始,預設為"false".
2198
#$conf["tdStart"]="true";#爲是否要以<td>開頭,"true"表示"是",也可以看成列裏面的元素開始,預設為"false".
2199
#$conf["tdEnd"]="true";#爲是否要以</td>結尾,"true"表示"是",也可以看成列裏面的元素結束,預設為"false".
2200
#$conf["trEnd"]="true";#爲是否要以</tr>結尾,"true"表示"是",也可以看作該列結束,預設為"false".
2201
#參考資料來源:
2202
#input=>http://www.w3schools.com/tags/tag_input.asp
2203
echo form::inputTextArea($conf)["content"];
2204
unset($conf);
2205
 
2206
#函式說明:
2207
#放置按鈕
2208
#回傳結果:
2209
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
2210
#$result["function"],當前執行的函數.
2211
#$result["error"],錯誤訊息陣列.
2212
#$result["content"],按鈕語法. 
2213
#必要的參數:
2214
$conf["buttonDisplayValue"]="送出";#爲按鈕上顯示的文字。
2215
#可省略的參數:
2216
#$conf["buttonStyleName"]="";#可省略,爲按鈕所要使用的css樣式類別名稱,預設的css樣式爲 __simpleButtonLinkDefaultButtonCssStyle 。
2217
	#其屬性爲   "width","height","font-size","text-align"
2218
	#其屬性值爲 "100%" ,  "50"  ,    "30"   ,   "center"
2219
#$conf["buttonActionScriptFunction"]="";#可省略,爲按下按鈕時所要執行的javaScript函式,預設不設定。
2220
	#"document.forms.formName.submit()"爲傳送名爲testForm的表單內容
2221
	#"window.print()"爲使用瀏覽器內建工具列印當前網頁
2222
#$conf["buttonBorder"]="";#可省略,爲IE9內會自動產生外框,此爲外框的厚度,屬性值爲正整數,預設爲0。
2223
#$conf["disabled"]="true";#可省略,為按鈕的功能是否要取消,若為"true"則代表要取消,若為"false"則代表功能正常,預設為"false".
2224
#$conf["tableStart"]="true";#爲是否要表格開始。"false"代表否,"true"代表是。預設爲"false"。
2225
#$conf["tableClass"]="";#表格要套用的css樣式,若省略的話,則預設爲 __defaultTbaleCsssStyle 其屬性爲 table-layout:fixed word-break:break-all width:100% ,須搭配 $conf["tablStart"] 與 $conf["tableEnd"] 使用。
2226
#$conf["trStart"]="true";#爲是否要以<tr>開頭,"true"表示"是"。也可以看作新的一列開始,預設為"false".
2227
#$conf["trClass"]="__withoutBorder";#<tr>要套用的css樣式,預設為"__withoutBorder",亦即沒有框線的樣式;"__withBorder"則爲有框線的樣式
2228
#$conf["tdStart"]="true";#爲是否要以<td>開頭,"true"表示"是"。也可以看成列裏面的元素開始,預設為"false".
2229
#$conf["tdClass"]="__withoutBorder";#<td>要套用的css樣式,"__withoutBorder"爲沒有框線的樣式;__withBorder爲有框線的樣式
2230
#$conf["tdEnd"]="true";#爲是否要以</td>結尾,"true"表示"是"。也可以看成列裏面的元素結束,預設為"false".
2231
#$conf["trEnd"]="true";#爲是否要以</tr>結尾,"true"表示"是"。也可以看作該列結束,預設為"false".
2232
#$conf["tableEnd"]="true";#爲是否要表格結束。"false"代表否,"true"代表是,預設爲"false"。
2233
#$conf["formStart"]="true";#爲是否要表單開始,如果爲"true"則代表要表單開始,預設為"false".
2234
#$conf["action"]="";#爲表單要傳送到哪個頁面,須搭配$conf["formStart"]與$conf["formEnd"]參數使用
2235
#$conf["target"]="";#為目標表單顯示的方式,若沒設定則預設爲"_self",其他可用的參數爲 "_blank"、"_parent"、"_top",也可以是iframe的名稱。須搭配$conf["formStart"]與$conf["formEnd"]參數使用
2236
$conf["formEnd"]="true";#爲是否要表單結束,如果爲"true"則代表要表單結束,預設為"false".
2237
#參考資料來源:
2238
#http://stackoverflow.com/questions/3014649/how-to-disable-html-button-using-javascript
2239
echo form::button($conf)["content"];
2240
unset($conf);
2241
 
2242
*/
2243
 
2244
#提示要測試的函式
2245
echo "<hr>form::inputPassword - testCase 1<br>";
2246
 
2247
/*
2248
 
2249
#涵式說明:		
2250
#可以輸入密碼的表單
2251
#回傳的結果:
2252
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
2253
#$result["function"],當前執行的函數.
2254
#$result["error"],錯誤訊息陣列.
2255
#$result["content"],按鈕語法. 
2256
#必填的參數:
2257
$conf["name"]="form::inputPassword - testCase 1";#爲密碼輸入框的名稱,供接收端進行處理時的獨立名稱。
2258
#可省略的參數:
2259
#$conf["width"]="";#爲密碼輸入框的長度,預設無限制。
2260
$conf["maxInputLength"]="8";#爲密碼輸入的長度限制,預設無限制。
2261
$conf["defaultValue"]="xxxxxxxx";#預設的密碼
2262
#$conf["class"]="";#爲要套用的css樣式,若省略,則會套用預設的 __inputPasswordCssStyle 樣式,其屬性爲 "width:100%","font-size:30px"
2263
#$conf["jsActivitor"]="";#爲觸發js的條件,可以是"onChange"(已改變內容時)...,須搭配$conf["jsSubmitActionTarget"]參數。
2264
#$conf["jsAction"]="";#爲該js是要做什麼,可以是"document.testForm.submit()"(傳送名爲testForm的表單內容)...,須搭配$conf["jsActivitor"]參數。
2265
#$conf["comment"],字串,輸入方框上面要放哪些註解文字.
2266
$conf["comment"]="請輸入密碼";
2267
#$conf["placeholder"],字串,當沒有內容時要顯示的內容.
2268
$conf["placeholder"]="密碼不得為空";
2269
#$conf["trStart"]="true";#爲是否要以<tr>開頭,"true"表示"是",也可以看作新的一列開始,預設為"false".
2270
#$conf["tdStart"]="true";#爲是否要以<td>開頭,"true"表示"是",也可以看成列裏面的元素開始,預設為"false".
2271
#$conf["tdEnd"]="true";#爲是否要以</td>結尾,"true"表示"是",也可以看成列裏面的元素結束,預設為"false".
2272
#$conf["trEnd"]="true";#爲是否要以</tr>結尾,"true"表示"是",也可以看作該列結束,預設為"false".
2273
echo form::inputPassword($conf)["content"];
2274
unset($conf);
2275
 
2276
*/
2277
 
2278
#提示要測試的函式
2279
echo "<hr>form::inputRadio - testCase 1<br>";
2280
 
2281
/*
2282
 
2283
#涵式說明:
2284
#黑點式選單(單選)
2285
#回傳的結果:
2286
#$result["status"],執行是否正常,"true"代表正常,"false"代表失敗.
2287
#$result["error"],錯誤訊息陣列.
2288
#$result["content"],語法內容.
2289
#$result["function"],設置當前執行的涵式
2290
#必填參數:
2291
$conf["name"]="form::inputRadio - testCase 1";#爲黑點式選單的名稱
2292
$conf["sendValue"]=array("1","2","3");#爲陣列值,爲每個選項的實際傳送的數值,e.g. $sendValue = array("a","b","c","d","e");
2293
#可省略的參數:
2294
#$conf["class"]="__withoutBorder";#爲要套用的class樣式,"__withoutBorder"爲沒有框線的樣式;__withBorder爲有框線的樣式
2295
#$conf["outputValue"]=array();#爲陣列值,爲每個選項的實際顯示的數值, e.g. $outputValue = array("p","o","i","t","e"); 預設爲跟$conf["sendValue"]一樣。
2296
$conf["defaultValue"]="2";#爲預設的選項,爲實際傳送的數值之一。
2297
#$conf["comment"],字串,下拉式表單的註解文字.
2298
$conf["comment"]="請選擇一個數字";
2299
#$conf["disableHr"]="true";#如果設爲"true",則結尾不用<hr>來結束單選的範圍,預設為"false".
2300
#$conf["jsActivitor"]="";#爲觸發js的條件,可以是"onChange"(已改變內容時)...,須搭配$conf["jsSubmitActionTarget"]參數。
2301
#$conf["jsAction"]="";#爲該js是要做什麼,可以是"document.testForm.submit()"(傳送名爲testForm的表單內容)...,須搭配$conf["jsActivitor"]參數。
2302
#$conf["trStart"]="true";#爲是否要以<tr>開頭,"true"表示"是",也可以看作新的一列開始,預設為"false".
2303
#$conf["trClass"]="__withoutBorder";#<tr>要套用的css樣式,預設為"__withoutBorder",其爲沒有框線的樣式;__withBorder爲有框線的樣式
2304
#$conf["tdStart"]="true";#爲是否要以<td>開頭,"true"表示"是",也可以看成列裏面的元素開始,預設為"false".
2305
#$conf["tdClass"]="__withoutBorder";#<td>要套用的css樣式,預設為"__withoutBorder",其爲沒有框線的樣式;__withBorder爲有框線的樣式
2306
#$conf["tdEnd"]="true";#爲是否要以</td>結尾,"true"表示"是",也可以看成列裏面的元素結束,預設為"false".
2307
#$conf["trEnd"]="true";#爲是否要以</tr>結尾,"true"表示"是",也可以看作該列結束,預設為"false".
2308
#$conf["brBetweenOption"]="true";#是否每個選項用<br>標籤隔開,預設為"true".
2309
echo form::inputRadio($conf)["content"];
2310
unset($conf);
2311
 
2312
#涵式說明:
2313
#黑點式選單(單選)
2314
#回傳的結果:
2315
#$result["status"],執行是否正常,"true"代表正常,"false"代表失敗.
2316
#$result["error"],錯誤訊息陣列.
2317
#$result["content"],語法內容.
2318
#$result["function"],設置當前執行的涵式
2319
#必填參數:
2320
$conf["name"]="form::inputRadio - testCase 2";#爲黑點式選單的名稱
2321
$conf["sendValue"]=array("A","B","C");#爲陣列值,爲每個選項的實際傳送的數值,e.g. $sendValue = array("a","b","c","d","e");
2322
#可省略的參數:
2323
#$conf["class"]="__withoutBorder";#爲要套用的class樣式,"__withoutBorder"爲沒有框線的樣式;__withBorder爲有框線的樣式
2324
#$conf["outputValue"]=array();#爲陣列值,爲每個選項的實際顯示的數值, e.g. $outputValue = array("p","o","i","t","e"); 預設爲跟$conf["sendValue"]一樣。
2325
$conf["defaultValue"]="C";#爲預設的選項,爲實際傳送的數值之一。
2326
#$conf["comment"],字串,下拉式表單的註解文字.
2327
$conf["comment"]="請選擇一個字母";
2328
#$conf["disableHr"]="true";#如果設爲"true",則結尾不用<hr>來結束單選的範圍,預設為"false".
2329
#$conf["jsActivitor"]="";#爲觸發js的條件,可以是"onChange"(已改變內容時)...,須搭配$conf["jsSubmitActionTarget"]參數。
2330
#$conf["jsAction"]="";#爲該js是要做什麼,可以是"document.testForm.submit()"(傳送名爲testForm的表單內容)...,須搭配$conf["jsActivitor"]參數。
2331
#$conf["trStart"]="true";#爲是否要以<tr>開頭,"true"表示"是",也可以看作新的一列開始,預設為"false".
2332
#$conf["trClass"]="__withoutBorder";#<tr>要套用的css樣式,預設為"__withoutBorder",其爲沒有框線的樣式;__withBorder爲有框線的樣式
2333
#$conf["tdStart"]="true";#爲是否要以<td>開頭,"true"表示"是",也可以看成列裏面的元素開始,預設為"false".
2334
#$conf["tdClass"]="__withoutBorder";#<td>要套用的css樣式,預設為"__withoutBorder",其爲沒有框線的樣式;__withBorder爲有框線的樣式
2335
#$conf["tdEnd"]="true";#爲是否要以</td>結尾,"true"表示"是",也可以看成列裏面的元素結束,預設為"false".
2336
#$conf["trEnd"]="true";#爲是否要以</tr>結尾,"true"表示"是",也可以看作該列結束,預設為"false".
2337
#$conf["brBetweenOption"]="true";#是否每個選項用<br>標籤隔開,預設為"true".
2338
echo form::inputRadio($conf)["content"];
2339
unset($conf);
2340
 
2341
*/
2342
 
2343
#提示要測試的函式
2344
echo "<hr>form::inputCheckBox - testCase 1<br>";
2345
 
2346
/*
2347
 
2348
#勾選式選單(複選)
2349
#回傳結果:
2350
#$result["status"],執行是否正常,"true"代表正常,"false"代表失敗.
2351
#$result["error"],錯誤訊息陣列.
2352
#$result["content"],語法內容.
2353
#$result["function"],當前執行的函式.
2354
#必填的參數:	
2355
$conf["name"]=array("q-1","q-2","q-3","q-4","q-5");#爲勾選式選單傳送時的各選項的名稱。
2356
	#例如:$conf["name"]=array("q-1","q-2","q-3","q-4","q-5");
2357
$conf["sendValue"]=array("a","b","c","d","e");#爲陣列值,為勾選式選單實際傳送的內容.
2358
	#例如:$conf["sendValue"]=array("a","b","c","d","e");
2359
#可省略的參數:
2360
#$conf["class"]=;#爲要套用的class樣式
2361
#$conf["outputValue"]=array();#爲陣列值,爲每個選項的實際顯示的數值, e.g. $conf["outputValue"] = array("p","o","i","t","e"); 預設爲跟$conf["sendValue"]一樣。
2362
#$conf["checkedOption"]=array();#爲那些選項是否要勾選,須爲陣列值。例如array("1","3","4"),就代表第1、3、4個選項是勾選的狀態。
2363
$conf["comment"]="請選擇(可複選)";#為選單的註解
2364
#$conf["jsActivitor"]="";#爲觸發js的條件,可以是"onChange"(已改變內容時)...,須搭配$conf["jsSubmitActionTarget"]參數。
2365
#$conf["jsAction"]="";#爲該js是要做什麼,可以是"document.testForm.submit()"(傳送名爲testForm的表單內容)...,須搭配$conf["jsActivitor"]參數。	
2366
#$conf["formName"]="";#爲表單的名稱
2367
#$conf["formAction"]="";#爲表單要送到哪個php檔案。
2368
#$conf["actionTarget"]="";#爲表單處理好後的呈現方式,有_top,_self,_blank,_parent,元素名稱也可以.
2369
#$conf["hiddenVar"],字串陣列,隱藏的變數名稱陣列.
2370
#$conf["hiddenVar"]=array("");
2371
#$conf["hiddanVarValue"],字串陣列,隱藏變數的數值內容.
2372
#$conf["hiddenVarValue"]=array("");
2373
#$conf["formEnd"]="false";#爲是否要表單結束,預設爲"false"。
2374
#$conf["trStart"]="true";#爲是否要以<tr>開頭,"true"表示"是"。也可以看作新的一列開始。
2375
#$conf["tdStart"]="true";#爲是否要以<td>開頭,"true"表示"是"。也可以看成列裏面的元素開始
2376
#$conf["tdEnd"]="true";#爲是否要以</td>結尾,"true"表示"是"。也可以看成列裏面的元素結束
2377
#$conf["trEnd"]="true";#爲是否要以</tr>結尾,"true"表示"是"。也可以看作該列結束.
2378
#$conf["brBetweenOption"]="true";#是否每個選項用<br>標籤隔開.
2379
#備註:
2380
#每個選項傳送的內容,修改成預設爲"true".
2381
echo form::inputCheckBox($conf)["content"];
2382
unset($conf);
2383
 
2384
*/	
2385
 
2386
#提示要測試的函式
2387
echo "<hr>form::inputMultiHidden - testCase 1<br>";
2388
 
2389
/*
2390
 
2391
#傳送多個隱藏表單的資訊
2392
#回傳的數值:
2393
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
2394
#$result["error"],錯誤訊息陣列
2395
#$result["function"],當前執行的函數
2396
#$result["content"],語法
2397
#$result["sendedArrayName"],傳送的隱藏變數陣列
2398
#$result["sendedArrayValue"],傳送的隱藏變數陣列數值
2399
#$result["sendedArrayCount"],傳送的隱藏變數計數
2400
#必填的參數:
2401
$conf["nameArray"]=array("n1","n2","n3");#欲傳送的隱藏陣列變數名稱
2402
$conf["valueArray"]=array("v1","v2","v3");#欲傳送的隱藏陣列變數數值
2403
echo form::inputMultiHidden($conf)["content"];
2404
unset($conf);
2405
 
2406
*/
2407
 
2408
#提示要測試的函式
2409
echo "<hr>form::inputFile - testCase 1<br>";
2410
 
2411
/*
2412
 
2413
#涵式說明:
2414
#上傳檔案的表單
2415
#回傳的結果:
2416
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
2417
#$result["function"],當前執行的函數.
2418
#$result["error"],錯誤訊息陣列.
2419
#$result["content"],上傳檔案的語法.
2420
#必填寫的參數:
2421
#$conf["formFileName"],字串,該檔案上傳時的表單名稱。
2422
$conf["formFileName"]="form::inputFile - testCase 1";
2423
#可省略的參數:
2424
#$conf["acceptType"],字串,限定檔案的類型為"video/*","audio/*","img/*",預設不限定.
2425
#$conf["acceptType"]="video/*";
2426
#$conf["class"],字串,該上傳表單所要套用的css樣式,若省略則採用預設的css樣式"__inputFileCssStyle",其屬性爲 width:100% font-size:30px
2427
#$conf["class"]="";
2428
#$conf["id"],字串,爲該上傳表單的id,預設跟$conf["formFileName"]一樣.
2429
#$conf["id"]="";
2430
#$conf["required"],字串,該欄位是否必填,"true"為必填,"false"為可留空,預設為"false".
2431
$conf["required"]="true";
2432
#$conf["comment"],字串,輔助說明的文字,會出現在檔案上傳的上一行.
2433
$conf["comment"]="請上傳檔案";
2434
#$conf["formStart"],字串,爲是否要以<form>開頭,"true"表示"是",也可以看成表單的開始,預設為"false".
2435
$conf["formStart"]="true";
2436
#$conf["formAction"],字串,表單遞交的目的地,若$conf["formStart"]為"true",則該參數不能省略,預設為"false".
2437
$conf["formAction"]="formT.php";
2438
#$conf["formName"],字串,爲該表單的名稱
2439
#$conf["formName"]="";
2440
#$conf["formMethod"],字串,爲傳輸的方法,若沒設定則預設爲post,其他可用的參數爲get。
2441
#$conf["formMethod"]="";
2442
#$conf["formTarget"],字串,為顯示的方式,若沒設定則預設爲"_self",其他可用的參數爲 "_blank"、"_parent"、"_top",也可以是iframe的名稱。
2443
#$conf["formTarget"]="";
2444
#$conf["formEnd"],字串,爲是否要以<form>結尾,"true"表示"是",也可以看成表單的結束,預設為"false".
2445
#$conf["formEnd"]="true";
2446
#參考資料:
2447
#http://www.w3schools.com/tags/tag_input.asp
2448
echo form::inputFile($conf)["content"];
2449
unset($conf);
2450
 
2451
#涵式說明:
2452
#上傳檔案的表單
2453
#回傳的結果:
2454
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
2455
#$result["function"],當前執行的函數.
2456
#$result["error"],錯誤訊息陣列.
2457
#$result["content"],上傳檔案的語法.
2458
#必填寫的參數:
2459
#$conf["formFileName"],字串,該檔案上傳時的表單名稱。
2460
#$conf["formFileName"]="videoFile";
2461
#可省略的參數:
2462
#$conf["acceptType"],字串,限定檔案的類型為"video/*","audio/*","img/*",預設不限定.
2463
$conf["acceptType"]="video/*";
2464
#$conf["class"],字串,該上傳表單所要套用的css樣式,若省略則採用預設的css樣式"__inputFileCssStyle",其屬性爲 width:100% font-size:30px
2465
#$conf["class"]="";
2466
#$conf["id"],字串,爲該上傳表單的id,預設跟$conf["formFileName"]一樣.
2467
#$conf["id"]="";
2468
#$conf["required"],字串,該欄位是否必填,"true"為必填,"false"為可留空,預設為"false".
2469
$conf["required"]="true";
2470
#$conf["comment"],字串,輔助說明的文字,會出現在檔案上傳的上一行.
2471
$conf["comment"]="請上傳影片檔案";
2472
#$conf["formStart"],字串,爲是否要以<form>開頭,"true"表示"是",也可以看成表單的開始,預設為"false".
2473
#$conf["formStart"]="true";
2474
#$conf["formAction"],字串,表單遞交的目的地,若$conf["formStart"]為"true",則該參數不能省略,預設為"false".
2475
#$conf["formAction"]="formT.php";
2476
#$conf["formName"],字串,爲該表單的名稱
2477
#$conf["formName"]="";
2478
#$conf["formMethod"],字串,爲傳輸的方法,若沒設定則預設爲post,其他可用的參數爲get。
2479
#$conf["formMethod"]="";
2480
#$conf["formTarget"],字串,為顯示的方式,若沒設定則預設爲"_self",其他可用的參數爲 "_blank"、"_parent"、"_top",也可以是iframe的名稱。
2481
#$conf["formTarget"]="";
2482
#$conf["formEnd"],字串,爲是否要以<form>結尾,"true"表示"是",也可以看成表單的結束,預設為"false".
2483
#$conf["formEnd"]="true";
2484
#參考資料:
2485
#http://www.w3schools.com/tags/tag_input.asp
2486
echo form::inputFile($conf)["content"];
2487
unset($conf);
2488
 
2489
#涵式說明:
2490
#上傳檔案的表單
2491
#回傳的結果:
2492
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
2493
#$result["function"],當前執行的函數.
2494
#$result["error"],錯誤訊息陣列.
2495
#$result["content"],上傳檔案的語法.
2496
#必填寫的參數:
2497
#$conf["formFileName"],字串,該檔案上傳時的表單名稱。
2498
$conf["formFileName"]="audioFile";
2499
#可省略的參數:
2500
#$conf["acceptType"],字串,限定檔案的類型為"video/*","audio/*","img/*",預設不限定.
2501
$conf["acceptType"]="audio/*";
2502
#$conf["class"],字串,該上傳表單所要套用的css樣式,若省略則採用預設的css樣式"__inputFileCssStyle",其屬性爲 width:100% font-size:30px
2503
#$conf["class"]="";
2504
#$conf["id"],字串,爲該上傳表單的id,預設跟$conf["formFileName"]一樣.
2505
#$conf["id"]="";
2506
#$conf["required"],字串,該欄位是否必填,"true"為必填,"false"為可留空,預設為"false".
2507
$conf["required"]="true";
2508
#$conf["comment"],字串,輔助說明的文字,會出現在檔案上傳的上一行.
2509
$conf["comment"]="請上傳語音檔案";
2510
#$conf["formStart"],字串,爲是否要以<form>開頭,"true"表示"是",也可以看成表單的開始,預設為"false".
2511
#$conf["formStart"]="true";
2512
#$conf["formAction"],字串,表單遞交的目的地,若$conf["formStart"]為"true",則該參數不能省略,預設為"false".
2513
#$conf["formAction"]="formT.php";
2514
#$conf["formName"],字串,爲該表單的名稱
2515
#$conf["formName"]="";
2516
#$conf["formMethod"],字串,爲傳輸的方法,若沒設定則預設爲post,其他可用的參數爲get。
2517
#$conf["formMethod"]="";
2518
#$conf["formTarget"],字串,為顯示的方式,若沒設定則預設爲"_self",其他可用的參數爲 "_blank"、"_parent"、"_top",也可以是iframe的名稱。
2519
#$conf["formTarget"]="";
2520
#$conf["formEnd"],字串,爲是否要以<form>結尾,"true"表示"是",也可以看成表單的結束,預設為"false".
2521
#$conf["formEnd"]="true";
2522
#參考資料:
2523
#http://www.w3schools.com/tags/tag_input.asp
2524
echo form::inputFile($conf)["content"];
2525
unset($conf);
2526
 
2527
#涵式說明:
2528
#上傳檔案的表單
2529
#回傳的結果:
2530
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
2531
#$result["function"],當前執行的函數.
2532
#$result["error"],錯誤訊息陣列.
2533
#$result["content"],上傳檔案的語法.
2534
#必填寫的參數:
2535
#$conf["formFileName"],字串,該檔案上傳時的表單名稱。
2536
$conf["formFileName"]="imgFile";
2537
#可省略的參數:
2538
#$conf["acceptType"],字串,限定檔案的類型為"video/*","audio/*","image/*",預設不限定.
2539
$conf["acceptType"]="image/*";
2540
#$conf["class"],字串,該上傳表單所要套用的css樣式,若省略則採用預設的css樣式"__inputFileCssStyle",其屬性爲 width:100% font-size:30px
2541
#$conf["class"]="";
2542
#$conf["id"],字串,爲該上傳表單的id,預設跟$conf["formFileName"]一樣.
2543
#$conf["id"]="";
2544
#$conf["required"],字串,該欄位是否必填,"true"為必填,"false"為可留空,預設為"false".
2545
$conf["required"]="true";
2546
#$conf["comment"],字串,輔助說明的文字,會出現在檔案上傳的上一行.
2547
$conf["comment"]="請上傳圖片檔案";
2548
#$conf["formStart"],字串,爲是否要以<form>開頭,"true"表示"是",也可以看成表單的開始,預設為"false".
2549
#$conf["formStart"]="true";
2550
#$conf["formAction"],字串,表單遞交的目的地,若$conf["formStart"]為"true",則該參數不能省略,預設為"false".
2551
#$conf["formAction"]="formT.php";
2552
#$conf["formName"],字串,爲該表單的名稱
2553
#$conf["formName"]="";
2554
#$conf["formMethod"],字串,爲傳輸的方法,若沒設定則預設爲post,其他可用的參數爲get。
2555
#$conf["formMethod"]="";
2556
#$conf["formTarget"],字串,為顯示的方式,若沒設定則預設爲"_self",其他可用的參數爲 "_blank"、"_parent"、"_top",也可以是iframe的名稱。
2557
#$conf["formTarget"]="";
2558
#$conf["formEnd"],字串,爲是否要以<form>結尾,"true"表示"是",也可以看成表單的結束,預設為"false".
2559
#$conf["formEnd"]="true";
2560
#參考資料:
2561
#http://www.w3schools.com/tags/tag_input.asp
2562
echo form::inputFile($conf)["content"];
2563
unset($conf);
2564
 
2565
#函式說明:
2566
#放置按鈕
2567
#回傳結果:
2568
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
2569
#$result["function"],當前執行的函數.
2570
#$result["error"],錯誤訊息陣列.
2571
#$result["content"],按鈕語法. 
2572
#必要的參數:
2573
$conf["buttonDisplayValue"]="上傳";#爲按鈕上顯示的文字。
2574
#可省略的參數:
2575
#$conf["buttonStyleName"]="";#可省略,爲按鈕所要使用的css樣式類別名稱,預設的css樣式爲 __simpleButtonLinkDefaultButtonCssStyle 。
2576
	#其屬性爲   "width","height","font-size","text-align"
2577
	#其屬性值爲 "100%" ,  "50"  ,    "30"   ,   "center"
2578
#$conf["buttonActionScriptFunction"]="";#可省略,爲按下按鈕時所要執行的javaScript函式,預設不設定。
2579
	#"document.forms.formName.submit()"爲傳送名爲testForm的表單內容
2580
	#"window.print()"爲使用瀏覽器內建工具列印當前網頁
2581
#$conf["buttonBorder"]="";#可省略,爲IE9內會自動產生外框,此爲外框的厚度,屬性值爲正整數,預設爲0。
2582
#$conf["disabled"]="true";#可省略,為按鈕的功能是否要取消,若為"true"則代表要取消,若為"false"則代表功能正常,預設為"false".
2583
#$conf["tableStart"]="true";#爲是否要表格開始。"false"代表否,"true"代表是。預設爲"false"。
2584
#$conf["tableClass"]="";#表格要套用的css樣式,若省略的話,則預設爲 __defaultTbaleCsssStyle 其屬性爲 table-layout:fixed word-break:break-all width:100% ,須搭配 $conf["tablStart"] 與 $conf["tableEnd"] 使用。
2585
#$conf["trStart"]="true";#爲是否要以<tr>開頭,"true"表示"是"。也可以看作新的一列開始,預設為"false".
2586
#$conf["trClass"]="__withoutBorder";#<tr>要套用的css樣式,預設為"__withoutBorder",亦即沒有框線的樣式;"__withBorder"則爲有框線的樣式
2587
#$conf["tdStart"]="true";#爲是否要以<td>開頭,"true"表示"是"。也可以看成列裏面的元素開始,預設為"false".
2588
#$conf["tdClass"]="__withoutBorder";#<td>要套用的css樣式,"__withoutBorder"爲沒有框線的樣式;__withBorder爲有框線的樣式
2589
#$conf["tdEnd"]="true";#爲是否要以</td>結尾,"true"表示"是"。也可以看成列裏面的元素結束,預設為"false".
2590
#$conf["trEnd"]="true";#爲是否要以</tr>結尾,"true"表示"是"。也可以看作該列結束,預設為"false".
2591
#$conf["tableEnd"]="true";#爲是否要表格結束。"false"代表否,"true"代表是,預設爲"false"。
2592
#$conf["formStart"]="true";#爲是否要表單開始,如果爲"true"則代表要表單開始,預設為"false".
2593
#$conf["action"]="";#爲表單要傳送到哪個頁面,須搭配$conf["formStart"]與$conf["formEnd"]參數使用
2594
#$conf["target"]="";#為目標表單顯示的方式,若沒設定則預設爲"_self",其他可用的參數爲 "_blank"、"_parent"、"_top",也可以是iframe的名稱。須搭配$conf["formStart"]與$conf["formEnd"]參數使用
2595
$conf["formEnd"]="true";#爲是否要表單結束,如果爲"true"則代表要表單結束,預設為"false".
2596
#參考資料來源:
2597
#http://stackoverflow.com/questions/3014649/how-to-disable-html-button-using-javascript
2598
echo form::button($conf)["content"];
2599
unset($conf);
2600
 
2601
*/
2602
 
2603
#提示要測試的函式
2604
echo "<hr>form::uploadOneFile - testCase 1<br>";
2605
 
2606
/*
2607
 
2608
#涵式說明:
2609
#可以瀏覽要上傳的檔案
2610
#回傳的結果:
2611
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
2612
#$result["function"],當前執行的函數.
2613
#$result["error"],錯誤訊息陣列.
2614
#$result["content"],上傳檔案的語法.
2615
#必填的參數:
2616
#$conf["formFileName"],字串,該上傳檔案的表單名稱.	
2617
$conf["formFileName"]="form::uploadOneFile - testCase 1";
2618
#可省略的參數:
2619
#$conf["maxFileSize"],字串,檔案的最大限制,單位是位元組(byte)。1kb = 1024 byte ; 1mb = 1024 kb 約等與 1024000 byte,預設是10240000(10MB)
2620
$conf["maxFileSize"]="102400000";
2621
#$conf["browseButtonClass"],字串,瀏覽檔案的按鈕樣式,"__withoutBorder"爲沒有框線的樣式;"__withBorder",有框線的樣式
2622
#$conf["browseButtonClass"]="__withoutBorder";
2623
#$conf["acceptType"],字串,限定檔案的類型為"video/*","audio/*","image/*",預設不限定.
2624
$conf["acceptType"]="image/*";
2625
#$conf["required"],字串,該欄位是否必填,"true"為必填,"false"為可留空,預設為"false".
2626
$conf["required"]="true";
2627
#$conf["trStart"],字串,爲是否要以<tr>開頭,"true"表示"是",也可以看作新的一列開始,預設為"false".
2628
#$conf["trStart"]="true";
2629
#$conf["trClass"],字串,列的樣式,"__withoutBorder"爲沒有框線的樣式;"__withBorder",有框線的樣式,預設為"__withoutBorder".
2630
#$conf["trClass"]="__withoutBorder";
2631
#$conf["tdStart"],字串,爲是否要以<td>開頭,"true"表示"是",也可以看成列裏面的元素開始,預設為"false".
2632
#$conf["tdStart"]="false";
2633
#$conf["tdClass"],字串,行的樣式,"__withoutBorder"爲沒有框線的樣式;"__withBorder",有框線的樣式,預設為"__withoutBorder".
2634
#$conf["tdClass"]="__withoutBorder";
2635
#$conf["tdEnd"],字串,爲是否要以</td>結尾,"true"表示"是",也可以看成列裏面的元素結束,預設為"false".
2636
#$conf["tdEnd"]="true";
2637
#$conf["trEnd"],字串,爲是否要以</tr>結尾,"true"表示"是",也可以看作該列結束,預設為"false".
2638
#$conf["trEnd"]="true";
2639
#$conf["formStart"],字串,是否為表單的開始,"true"為是,預設為"false".
2640
$conf["formStart"]="true";
2641
#$conf["formName"],字串,表單的名稱
2642
#$conf["formName"]="";
2643
#$conf["formAction"],字串,表單的目標,若有設置$conf["formStart"]為"true",則預設為php檔案自己
2644
$conf["formAction"]="formT.php";
2645
#$conf["formTarget"],字串,表單要呈現回應的位置,預設為"_self".
2646
#$conf["formTarget"]="_self";
2647
#$conf["formEnd"],字串,是否為表單的結束,"true"為是,預設為"false".
2648
#$conf["formEnd"]="false";
2649
#$conf["comment"],字串,該上傳檔案的註解,預設不顯示.
2650
$conf["comment"]="請上傳一個圖片檔";
2651
echo form::uploadOneFile($conf)["content"];
2652
unset($conf);
2653
 
2654
#函式說明:
2655
#放置按鈕
2656
#回傳結果:
2657
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
2658
#$result["function"],當前執行的函數.
2659
#$result["error"],錯誤訊息陣列.
2660
#$result["content"],按鈕語法. 
2661
#必要的參數:
2662
$conf["buttonDisplayValue"]="上傳";#爲按鈕上顯示的文字。
2663
#可省略的參數:
2664
#$conf["buttonStyleName"]="";#可省略,爲按鈕所要使用的css樣式類別名稱,預設的css樣式爲 __simpleButtonLinkDefaultButtonCssStyle 。
2665
	#其屬性爲   "width","height","font-size","text-align"
2666
	#其屬性值爲 "100%" ,  "50"  ,    "30"   ,   "center"
2667
#$conf["buttonActionScriptFunction"]="";#可省略,爲按下按鈕時所要執行的javaScript函式,預設不設定。
2668
	#"document.forms.formName.submit()"爲傳送名爲testForm的表單內容
2669
	#"window.print()"爲使用瀏覽器內建工具列印當前網頁
2670
#$conf["buttonBorder"]="";#可省略,爲IE9內會自動產生外框,此爲外框的厚度,屬性值爲正整數,預設爲0。
2671
#$conf["disabled"]="true";#可省略,為按鈕的功能是否要取消,若為"true"則代表要取消,若為"false"則代表功能正常,預設為"false".
2672
#$conf["tableStart"]="true";#爲是否要表格開始。"false"代表否,"true"代表是。預設爲"false"。
2673
#$conf["tableClass"]="";#表格要套用的css樣式,若省略的話,則預設爲 __defaultTbaleCsssStyle 其屬性爲 table-layout:fixed word-break:break-all width:100% ,須搭配 $conf["tablStart"] 與 $conf["tableEnd"] 使用。
2674
#$conf["trStart"]="true";#爲是否要以<tr>開頭,"true"表示"是"。也可以看作新的一列開始,預設為"false".
2675
#$conf["trClass"]="__withoutBorder";#<tr>要套用的css樣式,預設為"__withoutBorder",亦即沒有框線的樣式;"__withBorder"則爲有框線的樣式
2676
#$conf["tdStart"]="true";#爲是否要以<td>開頭,"true"表示"是"。也可以看成列裏面的元素開始,預設為"false".
2677
#$conf["tdClass"]="__withoutBorder";#<td>要套用的css樣式,"__withoutBorder"爲沒有框線的樣式;__withBorder爲有框線的樣式
2678
#$conf["tdEnd"]="true";#爲是否要以</td>結尾,"true"表示"是"。也可以看成列裏面的元素結束,預設為"false".
2679
#$conf["trEnd"]="true";#爲是否要以</tr>結尾,"true"表示"是"。也可以看作該列結束,預設為"false".
2680
#$conf["tableEnd"]="true";#爲是否要表格結束。"false"代表否,"true"代表是,預設爲"false"。
2681
#$conf["formStart"]="true";#爲是否要表單開始,如果爲"true"則代表要表單開始,預設為"false".
2682
#$conf["action"]="";#爲表單要傳送到哪個頁面,須搭配$conf["formStart"]與$conf["formEnd"]參數使用
2683
#$conf["target"]="";#為目標表單顯示的方式,若沒設定則預設爲"_self",其他可用的參數爲 "_blank"、"_parent"、"_top",也可以是iframe的名稱。須搭配$conf["formStart"]與$conf["formEnd"]參數使用
2684
$conf["formEnd"]="true";#爲是否要表單結束,如果爲"true"則代表要表單結束,預設為"false".
2685
#參考資料來源:
2686
#http://stackoverflow.com/questions/3014649/how-to-disable-html-button-using-javascript
2687
echo form::button($conf)["content"];
2688
unset($conf);
2689
 
2690
*/
2691
 
2692
#提示要測試的函式
2693
echo "<hr>form::processUploadedFile - testCase 1<br>";
2694
 
2695
/*
2696
 
2697
#涵式說明:
2698
#上傳一個檔案,包含送出鈕與回上頁的按鈕
2699
#回傳的結果:
2700
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
2701
#$result["function"],當前執行的函數.
2702
#$result["error"],錯誤訊息陣列.
2703
#$result["content"],語法.
2704
#必填的參數:
2705
#$conf["formFileName"],字串,該上傳檔案的表單名稱.
2706
$conf["formFileName"]="form::processUploadedFile - testCase 1";
2707
#$conf["actionPage"],字串,處理表單資訊的頁面.
2708
$conf["actionPage"]="formT.php";
2709
#可省略的參數:
2710
#$conf["backButtonName"],字串,退回上一頁的按鈕要顯示的名稱,預設爲"回上頁"
2711
#$conf["backButtonName"]="回上頁";
2712
#$conf["backPage"],字串,返回的按鈕點了之後要到哪個頁面,預設是不使用.
2713
#$conf["backPage"]="";
2714
#$conf["backTarget"],字串,返回按鈕的顯示區塊.
2715
#$conf["backTarget"]="";
2716
#$conf["backButtonClass"],字串,回上頁按鈕的css樣式,預設為"__simpleButtonLinkDefaultButtonCssStyle".
2717
#$conf["backButtonClass"]="__simpleButtonLinkDefaultButtonCssStyle";
2718
#$conf["comment"],字串,該上傳檔案的註解,預設不顯示.
2719
#$conf["comment"]="";
2720
#$conf["formName"],字串,表單的名稱
2721
#$conf["formName"]="";
2722
#$conf["formTarget"],字串,表單要呈現回應的位置,預設為"_self".
2723
#$conf["formTarget"]="_self";
2724
#$conf["acceptType"],字串,限定檔案的類型為"video/*","audio/*","image/*",預設不限定.
2725
#$conf["acceptType"]="";
2726
#$conf["required"],字串,該欄位是否必填,"true"為必填,"false"為可留空,預設為"false".
2727
#$conf["required"]="true";
2728
#$conf["maxFileSize"],字串,檔案的最大限制,單位是位元組(byte),1kb = 1024 byte ; 1mb = 1024 kb 約等與 1024000 byte,預設爲"102400000"(100MB)
2729
#$conf["maxFileSize"]="102400000";
2730
#$conf["browseButtonClass"],字串,瀏覽要上傳檔案的css樣式,預設為"__inputFileCssStyle".
2731
#$conf["browseButtonClass"]="__inputFileCssStyle";
2732
#$conf["submitButtonClass"],字串,上傳按鈕的css樣式,預設為"__simpleButtonLinkDefaultButtonCssStyle".
2733
#$conf["submitButtonClass"]="__simpleButtonLinkDefaultButtonCssStyle";
2734
#$conf["submitButtonName"],字串,送出鈕要顯示的名稱,預設爲"上傳"
2735
#$conf["submitButtonName"]="上傳";
2736
echo form::uploadOneFileCom($conf)["content"];
2737
unset($conf);
2738
 
2739
#涵式說明:
2740
#處理上傳到暫存目錄的檔案,可以移動到指定的位置,並指定檔案的名稱。並且可以指定刪除舊有的檔案,然後將新檔案的相對位置寫入到資料庫裏面。
2741
#回傳的變數:
2742
#$result["status"],整體上傳有無成功。"true"代表完整成功 "false"代表有過程有錯誤
2743
#$result["error"],錯誤訊息陣列,$result["error"][0] 為"沒有接收到上傳的檔案",則代表沒有上傳檔案.
2744
#$result["warning"],警告訊息陣列
2745
#$result["ServerFileName"],檔案名稱
2746
#$result["ServerFileType"],檔案類型
2747
#$result["ServerFileSize"],檔案大小
2748
#$result["fileRelativePosition"],檔案的相對位置,包含檔案名稱與附檔名。
2749
#必填的參數:
2750
#$conf["formFileName"],字串,為上傳檔案時表單傳送時的名稱
2751
$conf["formFileName"]="form::processUploadedFile - testCase 1";
2752
#可省略的參數:
2753
#$conf["uploadDirUserDefine"],字串,為存放上傳檔案的目錄,如果沒設定則會自行建立依照系統時間的年月日十分秒來替資料夾命名,並將上傳的檔案存在裏面。
2754
$conf["uploadDirUserDefine"]="formT";
2755
#$conf["ServerFilenameUserDefine"],字串,為存放在伺服器上的檔案名稱,如果沒設定則依照台灣時間的年月日時分秒命名
2756
#$conf["ServerFilenameUserDefine"]="";
2757
#$conf["NoFileExtension"],字串,若為 "true" 則表 指定了檔案名稱後,不用再加上檔案型的副檔名,預設為"false".
2758
#$conf["NoFileExtension"]="true";
2759
#$conf["limitPage"],字串陣列,限制只能從哪些網頁檔案過來。
2760
#$conf["limitPage"]=array("");
2761
#$conf["taskName"],字串,爲該上傳作業的名稱,若沒設定,則預設爲"上傳作業"。
2762
#$conf["taskName"]="";
2763
#$conf["eraseOldFile"],字串,如果為"true"的話會移除同名的舊檔案,其值爲檔案的相對位置,預設為"false",不移除同名的檔案,並透過編號保留新的檔案.
2764
#$conf["eraseOldFile"]="";
2765
#$conf["dbProcess"],字串,如果爲"true",則會進行資料表資料更新的動作,亦即要設定 $conf["updatingMysqlServerAddress"] $conf["updatingMysqlAccount"] $conf["updatingDataBaseName"] $conf["updatingDataTableName"] $conf["updatingConditionDataTableColumnName"] $conf["updatingConditionDataTableColumnValue"] $conf["updatingTargetDataTableColumnName"] $conf["updatingTargetDataTableColumnValue"] 的內容,預設為"false".
2766
#$conf["dbProcess"]="true";	
2767
#$conf["updatingMysqlServerAddress"],字串,資料庫位於網路上的哪個位置.
2768
#$conf["updatingMysqlServerAddress"]=$dbAddress;
2769
#$conf["updatingMysqlAccount"],字串,連線時要使用的帳號,省略時代表不用密碼進行連線.
2770
#$conf["updatingMysqlAccount"]=$dbAccount;
2771
#$conf["updatingMysqlPassword"],字串,連線時要使用的密碼.
2772
#$conf["updatingMysqlPassword"]=$dbPassword;
2773
#$conf["updatingDataBaseName"],字串,要更新的目標資料所屬資料庫名稱.
2774
#$conf["updatingDataBaseName"]=$dbName;
2775
#$conf["updatingDataTableName"],字串,要更新的目標資料位於哪個資料表
2776
#$conf["updatingDataTableName"]="";
2777
#$conf["updatingConditionDataTableColumnName"],字串陣列,要用哪些欄位來識別要更新哪一筆資料,預設為array("id").
2778
#$conf["updatingConditionDataTableColumnName"]=array("id");
2779
#$conf["updatingConditionDataTableColumnValue"],字串陣列,該條件欄位內容的數值要爲多少,才是我們要修改的那筆資料。
2780
#$conf["updatingConditionDataTableColumnValue"]=array("");
2781
#$conf["updatingTargetDataTableColumnName"],字串陣列,要更新的資料欄位有?
2782
#$conf["updatingTargetDataTableColumnName"]=array("");	
2783
#$conf["updatingTargetDataTableColumnValue"],字串陣列,目標資料欄位要改成什麼樣的數值,如果其元素含有"filePosition",則會替換成新檔案的相對位置
2784
#$conf["updatingTargetDataTableColumnValue"]=array("");
2785
#參考資料:
2786
#file_exist()的用法
2787
#http:#php.net/manual/en/function.file-exists.php
2788
#bug:
2789
#目前發現上傳的檔案如果有中文字將會上傳失敗,但中文字如果是包在()裏面則不會出錯。
2790
var_dump($processUploadedFile=form::processUploadedFile($conf));
2791
unset($conf);
2792
 
2793
#移除上傳後的資料
2794
#涵式說明:
2795
#移除檔案
2796
#回傳的結果:
2797
#$result["status"],"true"代表移除成功,"false"代表移除失敗.
2798
#$result["error"],錯誤訊息陣列
2799
#$result["warning"],警告訊息陣列
2800
#$result["function"],當前執行的函數名稱
2801
#必填的參數:
2802
$conf["form::delFile"]["fileAddress"]=$processUploadedFile["fileRelativePosition"];#要移除檔案的位置
2803
#可省略參數:
2804
#$conf["commentsArray"],字串陣列,提示的文字描述,$conf["commentsArray"][$i]代表第($+1)行的描述.
2805
#$conf["commentsArray"]=array("");
2806
var_dump(fileAccess::delFile($conf["form::delFile"]));
2807
unset($conf["form::delFile"]);
2808
 
2809
*/
2810
 
2811
#提示要測試的函式
2812
echo "<hr>form::processMultiUploadedFile - testCase 1<br>";
2813
 
2814
/*
2815
 
2816
#涵式說明:
2817
#可以瀏覽要上傳的檔案
2818
#回傳的結果:
2819
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
2820
#$result["function"],當前執行的函數.
2821
#$result["error"],錯誤訊息陣列.
2822
#$result["content"],上傳檔案的語法.
2823
#必填的參數:
2824
#$conf["formFileName"],字串,該上傳檔案的表單名稱.	
2825
$conf["formFileName"]="file1";
2826
#可省略的參數:
2827
#$conf["maxFileSize"],字串,檔案的最大限制,單位是位元組(byte)。1kb = 1024 byte ; 1mb = 1024 kb 約等與 1024000 byte,預設是10240000(10MB)
2828
#$conf["maxFileSize"]="10240000";
2829
#$conf["browseButtonClass"],字串,瀏覽檔案的按鈕樣式,預設為"__inputFileCssStyle".
2830
#$conf["browseButtonClass"]="__inputFileCssStyle";
2831
#$conf["acceptType"],字串,限定檔案的類型為"video/*","audio/*","image/*",預設不限定.
2832
#$conf["acceptType"]="";
2833
#$conf["required"],字串,該欄位是否必填,"true"為必填,"false"為可留空,預設為"false".
2834
#$conf["required"]="true";
2835
#$conf["trStart"],字串,爲是否要以<tr>開頭,"true"表示"是",也可以看作新的一列開始,預設為"false".
2836
#$conf["trStart"]="true";
2837
#$conf["trClass"],字串,列的樣式,"__withoutBorder"爲沒有框線的樣式;"__withBorder",有框線的樣式,預設為"__withoutBorder".
2838
#$conf["trClass"]="__withoutBorder";
2839
#$conf["tdStart"],字串,爲是否要以<td>開頭,"true"表示"是",也可以看成列裏面的元素開始,預設為"false".
2840
#$conf["tdStart"]="false";
2841
#$conf["tdClass"],字串,行的樣式,"__withoutBorder"爲沒有框線的樣式;"__withBorder",有框線的樣式,預設為"__withoutBorder".
2842
#$conf["tdClass"]="__withoutBorder";
2843
#$conf["tdEnd"],字串,爲是否要以</td>結尾,"true"表示"是",也可以看成列裏面的元素結束,預設為"false".
2844
#$conf["tdEnd"]="true";
2845
#$conf["trEnd"],字串,爲是否要以</tr>結尾,"true"表示"是",也可以看作該列結束,預設為"false".
2846
#$conf["trEnd"]="true";
2847
#$conf["formStart"],字串,是否為表單的開始,"true"為是,預設為"false".
2848
$conf["formStart"]="true";
2849
#$conf["formName"],字串,表單的名稱
2850
#$conf["formName"]="";
2851
#$conf["formAction"],字串,表單的目標,若有設置$conf["formStart"]為"true",則預設為php檔案自己
2852
$conf["formAction"]="formT.php";
2853
#$conf["formTarget"],字串,表單要呈現回應的位置,預設為"_self".
2854
$conf["formTarget"]="_self";
2855
#$conf["formEnd"],字串,是否為表單的結束,"true"為是,預設為"false".
2856
#$conf["formEnd"]="true";
2857
#$conf["comment"],字串,該上傳檔案的註解,預設不顯示.
2858
$conf["comment"]="檔案一";
2859
echo form::uploadOneFile($conf)["content"];
2860
unset($conf);
2861
 
2862
#涵式說明:
2863
#可以瀏覽要上傳的檔案
2864
#回傳的結果:
2865
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
2866
#$result["function"],當前執行的函數.
2867
#$result["error"],錯誤訊息陣列.
2868
#$result["content"],上傳檔案的語法.
2869
#必填的參數:
2870
#$conf["formFileName"],字串,該上傳檔案的表單名稱.	
2871
$conf["formFileName"]="file2";
2872
#可省略的參數:
2873
#$conf["maxFileSize"],字串,檔案的最大限制,單位是位元組(byte)。1kb = 1024 byte ; 1mb = 1024 kb 約等與 1024000 byte,預設是10240000(10MB)
2874
#$conf["maxFileSize"]="10240000";
2875
#$conf["browseButtonClass"],字串,瀏覽檔案的按鈕樣式,預設為"__inputFileCssStyle".
2876
#$conf["browseButtonClass"]="__inputFileCssStyle";
2877
#$conf["acceptType"],字串,限定檔案的類型為"video/*","audio/*","image/*",預設不限定.
2878
#$conf["acceptType"]="";
2879
#$conf["required"],字串,該欄位是否必填,"true"為必填,"false"為可留空,預設為"false".
2880
#$conf["required"]="true";
2881
#$conf["trStart"],字串,爲是否要以<tr>開頭,"true"表示"是",也可以看作新的一列開始,預設為"false".
2882
#$conf["trStart"]="true";
2883
#$conf["trClass"],字串,列的樣式,"__withoutBorder"爲沒有框線的樣式;"__withBorder",有框線的樣式,預設為"__withoutBorder".
2884
#$conf["trClass"]="__withoutBorder";
2885
#$conf["tdStart"],字串,爲是否要以<td>開頭,"true"表示"是",也可以看成列裏面的元素開始,預設為"false".
2886
#$conf["tdStart"]="false";
2887
#$conf["tdClass"],字串,行的樣式,"__withoutBorder"爲沒有框線的樣式;"__withBorder",有框線的樣式,預設為"__withoutBorder".
2888
#$conf["tdClass"]="__withoutBorder";
2889
#$conf["tdEnd"],字串,爲是否要以</td>結尾,"true"表示"是",也可以看成列裏面的元素結束,預設為"false".
2890
#$conf["tdEnd"]="true";
2891
#$conf["trEnd"],字串,爲是否要以</tr>結尾,"true"表示"是",也可以看作該列結束,預設為"false".
2892
#$conf["trEnd"]="true";
2893
#$conf["formStart"],字串,是否為表單的開始,"true"為是,預設為"false".
2894
#$conf["formStart"]="true";
2895
#$conf["formName"],字串,表單的名稱
2896
#$conf["formName"]="";
2897
#$conf["formAction"],字串,表單的目標,若有設置$conf["formStart"]為"true",則預設為php檔案自己
2898
#$conf["formAction"]="";
2899
#$conf["formTarget"],字串,表單要呈現回應的位置,預設為"_self".
2900
#$conf["formTarget"]="_self";
2901
#$conf["formEnd"],字串,是否為表單的結束,"true"為是,預設為"false".
2902
#$conf["formEnd"]="true";
2903
#$conf["comment"],字串,該上傳檔案的註解,預設不顯示.
2904
$conf["comment"]="檔案二";
2905
echo form::uploadOneFile($conf)["content"];
2906
unset($conf);
2907
 
2908
#涵式說明:
2909
#可以瀏覽要上傳的檔案
2910
#回傳的結果:
2911
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
2912
#$result["function"],當前執行的函數.
2913
#$result["error"],錯誤訊息陣列.
2914
#$result["content"],上傳檔案的語法.
2915
#必填的參數:
2916
#$conf["formFileName"],字串,該上傳檔案的表單名稱.	
2917
$conf["formFileName"]="file3";
2918
#可省略的參數:
2919
#$conf["maxFileSize"],字串,檔案的最大限制,單位是位元組(byte)。1kb = 1024 byte ; 1mb = 1024 kb 約等與 1024000 byte,預設是10240000(10MB)
2920
#$conf["maxFileSize"]="10240000";
2921
#$conf["browseButtonClass"],字串,瀏覽檔案的按鈕樣式,預設為"__inputFileCssStyle".
2922
#$conf["browseButtonClass"]="__inputFileCssStyle";
2923
#$conf["acceptType"],字串,限定檔案的類型為"video/*","audio/*","image/*",預設不限定.
2924
#$conf["acceptType"]="";
2925
#$conf["required"],字串,該欄位是否必填,"true"為必填,"false"為可留空,預設為"false".
2926
#$conf["required"]="true";
2927
#$conf["trStart"],字串,爲是否要以<tr>開頭,"true"表示"是",也可以看作新的一列開始,預設為"false".
2928
#$conf["trStart"]="true";
2929
#$conf["trClass"],字串,列的樣式,"__withoutBorder"爲沒有框線的樣式;"__withBorder",有框線的樣式,預設為"__withoutBorder".
2930
#$conf["trClass"]="__withoutBorder";
2931
#$conf["tdStart"],字串,爲是否要以<td>開頭,"true"表示"是",也可以看成列裏面的元素開始,預設為"false".
2932
#$conf["tdStart"]="false";
2933
#$conf["tdClass"],字串,行的樣式,"__withoutBorder"爲沒有框線的樣式;"__withBorder",有框線的樣式,預設為"__withoutBorder".
2934
#$conf["tdClass"]="__withoutBorder";
2935
#$conf["tdEnd"],字串,爲是否要以</td>結尾,"true"表示"是",也可以看成列裏面的元素結束,預設為"false".
2936
#$conf["tdEnd"]="true";
2937
#$conf["trEnd"],字串,爲是否要以</tr>結尾,"true"表示"是",也可以看作該列結束,預設為"false".
2938
#$conf["trEnd"]="true";
2939
#$conf["formStart"],字串,是否為表單的開始,"true"為是,預設為"false".
2940
#$conf["formStart"]="true";
2941
#$conf["formName"],字串,表單的名稱
2942
#$conf["formName"]="";
2943
#$conf["formAction"],字串,表單的目標,若有設置$conf["formStart"]為"true",則預設為php檔案自己
2944
#$conf["formAction"]="";
2945
#$conf["formTarget"],字串,表單要呈現回應的位置,預設為"_self".
2946
#$conf["formTarget"]="_self";
2947
#$conf["formEnd"],字串,是否為表單的結束,"true"為是,預設為"false".
2948
#$conf["formEnd"]="true";
2949
#$conf["comment"],字串,該上傳檔案的註解,預設不顯示.
2950
$conf["comment"]="檔案三";
2951
echo form::uploadOneFile($conf)["content"];
2952
unset($conf);
2953
 
2954
#函式說明:
2955
#放置按鈕
2956
#回傳結果:
2957
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
2958
#$result["function"],當前執行的函數.
2959
#$result["error"],錯誤訊息陣列.
2960
#$result["content"],按鈕語法. 
2961
#必要的參數:
2962
$conf["buttonDisplayValue"]="上傳";#爲按鈕上顯示的文字。
2963
#可省略的參數:
2964
#$conf["buttonStyleName"]="";#可省略,爲按鈕所要使用的css樣式類別名稱,預設的css樣式爲 __simpleButtonLinkDefaultButtonCssStyle 。
2965
	#其屬性爲   "width","height","font-size","text-align"
2966
	#其屬性值爲 "100%" ,  "50"  ,    "30"   ,   "center"
2967
#$conf["buttonActionScriptFunction"]="";#可省略,爲按下按鈕時所要執行的javaScript函式,預設不設定。
2968
	#"document.forms.formName.submit()"爲傳送名爲testForm的表單內容
2969
	#"window.print()"爲使用瀏覽器內建工具列印當前網頁
2970
#$conf["buttonBorder"]="";#可省略,爲IE9內會自動產生外框,此爲外框的厚度,屬性值爲正整數,預設爲0。
2971
#$conf["disabled"]="true";#可省略,為按鈕的功能是否要取消,若為"true"則代表要取消,若為"false"則代表功能正常,預設為"false".
2972
#$conf["tableStart"]="true";#爲是否要表格開始。"false"代表否,"true"代表是。預設爲"false"。
2973
#$conf["tableClass"]="";#表格要套用的css樣式,若省略的話,則預設爲 __defaultTbaleCsssStyle 其屬性爲 table-layout:fixed word-break:break-all width:100% ,須搭配 $conf["tablStart"] 與 $conf["tableEnd"] 使用。
2974
#$conf["trStart"]="true";#爲是否要以<tr>開頭,"true"表示"是"。也可以看作新的一列開始,預設為"false".
2975
#$conf["trClass"]="__withoutBorder";#<tr>要套用的css樣式,預設為"__withoutBorder",亦即沒有框線的樣式;"__withBorder"則爲有框線的樣式
2976
#$conf["tdStart"]="true";#爲是否要以<td>開頭,"true"表示"是"。也可以看成列裏面的元素開始,預設為"false".
2977
#$conf["tdClass"]="__withoutBorder";#<td>要套用的css樣式,"__withoutBorder"爲沒有框線的樣式;__withBorder爲有框線的樣式
2978
#$conf["tdEnd"]="true";#爲是否要以</td>結尾,"true"表示"是"。也可以看成列裏面的元素結束,預設為"false".
2979
#$conf["trEnd"]="true";#爲是否要以</tr>結尾,"true"表示"是"。也可以看作該列結束,預設為"false".
2980
#$conf["tableEnd"]="true";#爲是否要表格結束。"false"代表否,"true"代表是,預設爲"false"。
2981
#$conf["formStart"]="true";#爲是否要表單開始,如果爲"true"則代表要表單開始,預設為"false".
2982
#$conf["action"]="";#爲表單要傳送到哪個頁面,須搭配$conf["formStart"]與$conf["formEnd"]參數使用
2983
#$conf["target"]="";#為目標表單顯示的方式,若沒設定則預設爲"_self",其他可用的參數爲 "_blank"、"_parent"、"_top",也可以是iframe的名稱。須搭配$conf["formStart"]與$conf["formEnd"]參數使用
2984
$conf["formEnd"]="true";#爲是否要表單結束,如果爲"true"則代表要表單結束,預設為"false".
2985
#參考資料來源:
2986
#http://stackoverflow.com/questions/3014649/how-to-disable-html-button-using-javascript
2987
echo form::button($conf)["content"];
2988
unset($conf);
2989
 
2990
#涵式說明:
2991
#處理多個上傳到暫存目錄的檔案,可以移動到指定的位置,並指定檔案的名稱。並且可以指定刪除舊有的檔案,然後將新檔案的相對位置寫入到資料庫裏面。
2992
#回傳的變數:
2993
#$result["ServerFileName"][$i]#第$i-1個檔案的名稱.
2994
#$result["ServerFileType"][$i]#第$i-1個檔案的類型.
2995
#$result["ServerFileSize"][$i]#第$i-1個檔案的大小.
2996
#$result["status"]#整體上傳有無成功,"true"代表完整成功,"false"代表有過程有錯誤.
2997
#$result["error"],錯誤訊息陣列.
2998
#$result["fileRelativePosition"][$i]#第$i-1個檔案的相對位置,包含檔案名稱與附檔名。
2999
#必填的參數:
3000
#$conf["formFileName"],為上傳檔案時表單傳送時的名稱陣列.
3001
$conf["formFileName"]=array("file1","file2","file3");
3002
#可省略的參數:
3003
#$conf["uploadDirUserDefine"],字串陣列,為存放上傳檔案的目錄,如果沒設定則會自行建立依照系統時間的年月日十分秒來替資料夾命名,並將上傳的檔案存在裏面。
3004
$conf["uploadDirUserDefine"]=array("formT","formT","formT");
3005
#$conf["ServerFilenameUserDefine"],字串陣列,為存放在伺服器上的檔案名稱,如果沒設定則依照台灣時間的年月日時分秒命名
3006
$conf["ServerFilenameUserDefine"]=array("file1","file2","file3");
3007
#$conf["NoFileExtension"],字串陣列,若為 "true" 則表 指定了檔案名稱後,不用再加上檔案型的副檔名,預設皆為為"false".
3008
#$conf["NoFileExtension"]=array("true");
3009
#$conf["limitPage"],字串陣列,限制只能從哪些網頁檔案過來。
3010
#$conf["limitPage"]=array("");
3011
#$conf["taskName"],字串,爲該上傳作業的名稱,若沒設定,則預設爲"上傳作業"。
3012
#$conf["taskName"]="";
3013
#$conf["eraseOldFile"],字串陣列,如果為"true"的話會移除同名的舊檔案,其值爲檔案的相對位置,預設為"false",不移除同名的檔案,並透過編號保留新的檔案.
3014
$conf["eraseOldFile"]=array("true","true","true");
3015
#$conf["dbProcess"],字串,如果爲"true",則會進行資料表資料更新的動作,亦即要設定 $conf["updatingMysqlServerAddress"] $conf["updatingMysqlAccount"] $conf["updatingDataBaseName"] $conf["updatingDataTableName"] $conf["updatingConditionDataTableColumnName"] $conf["updatingConditionDataTableColumnValue"] $conf["updatingTargetDataTableColumnName"] $conf["updatingTargetDataTableColumnValue"] 的內容,預設為"false".
3016
#$conf["dbProcess"]="true";	
3017
#$conf["updatingMysqlServerAddress"],字串,資料庫位於網路上的哪個位置.
3018
#$conf["updatingMysqlServerAddress"]=$dbAddress;
3019
#$conf["updatingMysqlAccount"],字串,連線時要使用的帳號,省略時代表不用密碼進行連線.
3020
#$conf["updatingMysqlAccount"]=$dbAccount;
3021
#$conf["updatingMysqlPassword"],字串,連線時要使用的密碼.
3022
#$conf["updatingMysqlPassword"]=$dbPassword;
3023
#$conf["updatingDataBaseName"],字串,要更新的目標資料所屬資料庫名稱.
3024
#$conf["updatingDataBaseName"]=$dbName;
3025
#$conf["updatingDataTableName"],字串,要更新的目標資料位於哪個資料表.
3026
#$conf["updatingDataTableName"]="";
3027
#$conf["updatingConditionDataTableColumnName"],字串陣列,要用哪些欄位來識別要更新哪一筆資料,預設為array("id").
3028
#$conf["updatingConditionDataTableColumnName"]=array("id");
3029
#$conf["updatingConditionDataTableColumnValue"],字串陣列,該條件欄位內容的數值要爲多少,才是我們要修改的那筆資料。
3030
#$conf["updatingConditionDataTableColumnValue"]=array("");
3031
#$conf["updatingTargetDataTableColumnName"],字串陣列,要更新的資料欄位有?
3032
#$conf["updatingTargetDataTableColumnName"]=array("");	
3033
#$conf["updatingTargetDataTableColumnValue"],字串陣列,目標資料欄位要改成什麼樣的數值,如果其元素含有"filePosition",則會替換成新檔案的相對位置
3034
#$conf["updatingTargetDataTableColumnValue"]=array("");
3035
#參考資料:
3036
#file_exist()的用法
3037
#http:#php.net/manual/en/function.file-exists.php
3038
var_dump(form::processMultiUploadedFile($conf));
3039
unset($conf);
3040
 
3041
*/
3042
 
3043
#提示要測試的函式
3044
echo "<hr>form::uploadMultiFile - testCase 1<br>";
3045
 
3046
/*
3047
 
3048
#涵式說明:
3049
#上傳多個檔案
3050
#回傳結果:
3051
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
3052
#$result["function"],當前執行的函數.
3053
#$result["error"],錯誤訊息陣列.
3054
#$result["content"],上傳檔案的語法.
3055
#必填參數:
3056
#$conf["formFileName"],字串陣列,每個要上傳檔案的表單名稱.	
3057
$conf["formFileName"]=array("inputFile1","inputFile2","inputFile3");
3058
#可省略參數:
3059
#$conf["maxFileSize"],字串陣列,各個檔案的最大限制,單位是位元組(byte)。1kb = 1024 byte ; 1mb = 1024 kb 約等與 1024000 byte,預設是10240000(10MB)
3060
$conf["maxFileSize"]=array("10240000","10240000","10240000");
3061
#$conf["browseButtonClass"],字串陣列,瀏覽檔案的按鈕樣式,預設為"__qbpwcf__inputFileCssStyle".
3062
#$conf["browseButtonClass"]=array("__inputFileCssStyle","__inputFileCssStyle","__inputFileCssStyle");
3063
#$conf["acceptType"],字串陣列,限定各個檔案的類型為"video/*","audio/*","image/*",預設不限定.
3064
$conf["acceptType"]=array("video/*","audio/*","image/*");
3065
#$conf["required"],字串陣列,各個欄位是否必填,"true"為必填,"false"為可留空,預設為"false".
3066
$conf["required"]=array("true","true","true");
3067
#$conf["comment"],字串陣列,各個上傳檔案的註解,預設不顯示.
3068
$conf["comment"]=array("請上傳影片","請上傳語音","請上傳圖片");
3069
#$conf["formStart"],字串,是否為表單的開始,"true"為是,預設為"false".
3070
$conf["formStart"]="true";
3071
#$conf["formName"],字串,表單的名稱
3072
$conf["formName"]="form::uploadMultiFile - testCase 1";
3073
#$conf["formAction"],字串,表單的目標,若有設置$conf["formStart"]為"true",則預設為php檔案自己
3074
$conf["formAction"]="formT.php";
3075
#$conf["formTarget"],字串,表單要呈現回應的位置,預設為"_self".
3076
$conf["formTarget"]="_self";
3077
$uploadMultiFile=form::uploadMultiFile($conf);
3078
unset($conf);
3079
 
3080
echo $uploadMultiFile["content"];
3081
 
3082
*/
3083
 
3084
#提示要測試的函式
3085
echo "<hr>form::uploadMultiFileCom - testCase 1<br>";
3086
 
3087
/*
3088
 
3089
#涵式說明:
3090
#上傳多個檔案,包含回上頁跟送出表單的按鈕.
3091
#回傳結果:
3092
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
3093
#$result["function"],當前執行的函數.
3094
#$result["error"],錯誤訊息陣列.
3095
#$result["content"],上傳檔案的語法.
3096
#必填參數:
3097
#$conf["formFileName"],字串陣列,該上傳檔案的表單名稱.
3098
$conf["formFileName"]=array("file1","file2","file3");
3099
#$conf["actionPage"],字串,處理表單資訊的頁面.
3100
$conf["actionPage"]="formT.php";
3101
#可省略參數:
3102
#$conf["backButtonName"],字串,退回上一頁的按鈕要顯示的名稱,預設爲"回上頁"
3103
#$conf["backButtonName"]="回上頁";
3104
#$conf["backPage"],字串,返回的按鈕點了之後要到哪個頁面,預設是不使用.
3105
$conf["backPage"]="formT.php";
3106
#$conf["backTarget"],字串,返回按鈕的顯示區塊,可以為"_self"自己這個頁面,"_top"整個畫面,"_blank"新的分頁,"_parent"父頁面,預設為"_self".
3107
#$conf["backTarget"]="";
3108
#$conf["backButtonClass"],字串,回上頁按鈕的css樣式,預設為"__simpleButtonLinkDefaultButtonCssStyle".
3109
#$conf["backButtonClass"]="__simpleButtonLinkDefaultButtonCssStyle";
3110
#$conf["formName"],字串,表單的名稱
3111
$conf["formName"]="form::uploadMultiFileCom - testCase 1";
3112
#$conf["formTarget"],字串,表單要呈現回應的位置,預設為"_self".
3113
#$conf["formTarget"]="_self";
3114
#$conf["acceptType"],字串陣列,限定各個檔案的類型為"video/*","audio/*","image/*",預設不限定.
3115
$conf["acceptType"]=array("audio/*","video/*","image/*");
3116
#$conf["comment"],字串陣列,各個上傳檔案的註解,預設不顯示.
3117
$conf["comment"]=array("請上傳音樂","請上傳影片","請上傳圖片");
3118
#$conf["required"],字串陣列,各個欄位是否必填,"true"為必填,"false"為可留空,預設為"false".
3119
$conf["required"]=array("true","true","true");
3120
#$conf["maxFileSize"],字串陣列,各個檔案的最大限制,單位是位元組(byte),1kb = 1024 byte ; 1mb = 1024 kb 約等與 1024000 byte,預設爲"102400000"(100MB)
3121
$conf["maxFileSize"]=array("102400000","102400000","102400000");
3122
#$conf["browseButtonClass"],字串陣列,瀏覽要上傳檔案的css樣式,預設為"__inputFileCssStyle".
3123
#$conf["browseButtonClass"]=array("__inputFileCssStyle");
3124
#$conf["submitButtonClass"],字串,上傳按鈕的css樣式,預設為"__simpleButtonLinkDefaultButtonCssStyle".
3125
#$conf["submitButtonClass"]="__simpleButtonLinkDefaultButtonCssStyle";
3126
#$conf["submitButtonName"],字串,送出鈕要顯示的名稱,預設爲"上傳"
3127
#$conf["submitButtonName"]="上傳";
3128
$uploadMultiFileCom=form::uploadMultiFileCom($conf);
3129
unset($conf);
3130
 
3131
var_dump($uploadMultiFileCom);
3132
 
3133
#涵式說明:
3134
#處理多個上傳到暫存目錄的檔案,可以移動到指定的位置,並指定檔案的名稱。並且可以指定刪除舊有的檔案,然後將新檔案的相對位置寫入到資料庫裏面。
3135
#回傳的變數:
3136
#$result["ServerFileName"][$i]#第$i-1個檔案的名稱.
3137
#$result["ServerFileType"][$i]#第$i-1個檔案的類型.
3138
#$result["ServerFileSize"][$i]#第$i-1個檔案的大小.
3139
#$result["status"]#整體上傳有無成功,"true"代表完整成功,"false"代表有過程有錯誤.
3140
#$result["error"],錯誤訊息陣列.
3141
#$result["fileRelativePosition"][$i]#第$i-1個檔案的相對位置,包含檔案名稱與附檔名。
3142
#必填的參數:
3143
#$conf["formFileName"],為上傳檔案時表單傳送時的名稱陣列.
3144
$conf["formFileName"]=array("file1","file2","file3");
3145
#可省略的參數:
3146
#$conf["uploadDirUserDefine"],字串陣列,為存放上傳檔案的目錄,如果沒設定則會自行建立依照系統時間的年月日十分秒來替資料夾命名,並將上傳的檔案存在裏面。
3147
$conf["uploadDirUserDefine"]=array("formT","formT","formT");
3148
#$conf["ServerFilenameUserDefine"],字串陣列,為存放在伺服器上的檔案名稱,如果沒設定則依照台灣時間的年月日時分秒命名
3149
$conf["ServerFilenameUserDefine"]=array("file1","file2","file3");
3150
#$conf["NoFileExtension"],字串陣列,若為 "true" 則表 指定了檔案名稱後,不用再加上檔案型的副檔名,預設皆為為"false".
3151
#$conf["NoFileExtension"]=array("true");
3152
#$conf["limitPage"],字串陣列,限制只能從哪些網頁檔案過來。
3153
#$conf["limitPage"]=array("");
3154
#$conf["taskName"],字串,爲該上傳作業的名稱,若沒設定,則預設爲"上傳作業"。
3155
#$conf["taskName"]="";
3156
#$conf["eraseOldFile"],字串陣列,如果為"true"的話會移除同名的舊檔案,其值爲檔案的相對位置,預設為"false",不移除同名的檔案,並透過編號保留新的檔案.
3157
$conf["eraseOldFile"]=array("true","true","true");
3158
#$conf["dbProcess"],字串,如果爲"true",則會進行資料表資料更新的動作,亦即要設定 $conf["updatingMysqlServerAddress"] $conf["updatingMysqlAccount"] $conf["updatingDataBaseName"] $conf["updatingDataTableName"] $conf["updatingConditionDataTableColumnName"] $conf["updatingConditionDataTableColumnValue"] $conf["updatingTargetDataTableColumnName"] $conf["updatingTargetDataTableColumnValue"] 的內容,預設為"false".
3159
#$conf["dbProcess"]="true";	
3160
#$conf["updatingMysqlServerAddress"],字串,資料庫位於網路上的哪個位置.
3161
#$conf["updatingMysqlServerAddress"]=$dbAddress;
3162
#$conf["updatingMysqlAccount"],字串,連線時要使用的帳號,省略時代表不用密碼進行連線.
3163
#$conf["updatingMysqlAccount"]=$dbAccount;
3164
#$conf["updatingMysqlPassword"],字串,連線時要使用的密碼.
3165
#$conf["updatingMysqlPassword"]=$dbPassword;
3166
#$conf["updatingDataBaseName"],字串,要更新的目標資料所屬資料庫名稱.
3167
#$conf["updatingDataBaseName"]=$dbName;
3168
#$conf["updatingDataTableName"],字串,要更新的目標資料位於哪個資料表.
3169
#$conf["updatingDataTableName"]="";
3170
#$conf["updatingConditionDataTableColumnName"],字串陣列,要用哪些欄位來識別要更新哪一筆資料,預設為array("id").
3171
#$conf["updatingConditionDataTableColumnName"]=array("id");
3172
#$conf["updatingConditionDataTableColumnValue"],字串陣列,該條件欄位內容的數值要爲多少,才是我們要修改的那筆資料。
3173
#$conf["updatingConditionDataTableColumnValue"]=array("");
3174
#$conf["updatingTargetDataTableColumnName"],字串陣列,要更新的資料欄位有?
3175
#$conf["updatingTargetDataTableColumnName"]=array("");	
3176
#$conf["updatingTargetDataTableColumnValue"],字串陣列,目標資料欄位要改成什麼樣的數值,如果其元素含有"filePosition",則會替換成新檔案的相對位置
3177
#$conf["updatingTargetDataTableColumnValue"]=array("");
3178
#參考資料:
3179
#file_exist()的用法
3180
#http://php.net/manual/en/function.file-exists.php
3181
var_dump(form::processMultiUploadedFile($conf));
3182
unset($conf);
3183
 
3184
*/
3185
 
3186
#提示要測試的函式
3187
echo "<hr>form::serialize - testCase 1<br>";
3188
 
3189
/*
3190
 
3191
#涵式說明:
3192
#一個簡單的按鈕,按了可以到指定的頁面,同時也可以傳送多個隱藏的變數
3193
#回傳的結果
3194
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
3195
#$result["error"],錯誤訊息陣列
3196
#$result["function"],當前執行的函數名稱.
3197
#$result["content"],語法內容
3198
#必填的參數:
3199
#$conf["buttonDisplayValue"],字串,按鈕上要顯示的文字
3200
$conf["buttonDisplayValue"]="test";
3201
#可以省略的參數:
3202
#$conf["buttonStyleName"],字串,按鈕的css樣式應該爲何,若省略的話預設會採用 __simpleButtonLinkDefaultButtonCssStyle 的樣式,其設定為"width:100%;height:50;font-size:30;text-align:center;
3203
#$conf["buttonStyleName"]="";
3204
#$conf["hiddenVarName"],陣列,要傳送的隱藏變數名稱,與 $conf["hiddenVarContent"] 相對應。
3205
$conf["hiddenVarName"]=array("n1","n2","n3");
3206
#$conf["hiddenVarContent"],陣列,要傳誦的隱藏變數內容,與 $conf["hiddenVarName"] 相對應。
3207
$conf["hiddenVarContent"]=array("v1","v2","v3");
3208
#$conf["disabled"],字串,為按鈕的功能是否要取消,若為"true"則代表要取消,若為"false"則代表功能正常,預設為"false".
3209
#$conf["disabled"]="true";
3210
#$conf["formStart"],字串,爲是否要表單開始,如果爲"true"則代表要表單開始,預設爲"false".
3211
$conf["formStart"]="true";
3212
#$conf["method"],字串,爲傳輸的方法,若沒設定則預設爲post,其他可用的參數爲get。
3213
#$conf["method"]="";
3214
#$conf["formName"],字串,該表單的名稱
3215
#$conf["formName"]="";
3216
#$conf["buttonId"],字串,按鈕的id
3217
#$conf["buttonId"]="";
3218
#$conf["actionPage"],字串,按鈕按了之後要到哪個地方?若爲 $_SERVER["PHP_SELF"],則爲回到目前頁面。
3219
$conf["actionPage"]="formT.php";
3220
#$conf["buttonActionScriptFunction"],字串,爲按下按鈕時所要執行的javaScript函式,預設不設定,可以是"document.forms.formName.submit()"(傳送名爲testForm的表單內容).
3221
#$conf["buttonActionScriptFunction"]="";
3222
#$conf["formEnd"],字串,爲是否要表單結束,如果爲"true"則代表要表單結束,預設爲"false"
3223
$conf["formEnd"]="true";
3224
#$conf["tableStart"],字串,爲是否要表格開始,"true"表示"是",預設為"false".
3225
#$conf["tableStart"]="true";
3226
#$conf["tableClass"],字串,爲表格要採用的css樣式名稱,"__withoutBorder"代表沒有框線的預設樣式;"__withBorder"代表有框線的預設樣式,預設為"__withoutBorder".
3227
#$conf["tableClass"]="__withoutBorder";
3228
#$conf["trStart"],字串,爲是否要以<tr>開頭,"true"表示"是"。也可以看作新的一列開始,預設為"false".
3229
#$conf["trStart"]="true"
3230
#$conf["trClass"],字串,列開始的css樣式,"__withoutBorder"代表沒有框線的預設樣式;"__withBorder"代表有框線的預設樣式,預設為"__withoutBorder"
3231
#$conf["trClass"]="__withoutBorder";
3232
#$conf["tdStart"],字串,爲是否要以<td>開頭,"true"表示"是"。也可以看成列裏面的元素開始,預設為"false"
3233
#$conf["tdStart"]="true";
3234
#$conf["tdClass"],字串,行開始的css樣式,"__withoutBorder"代表沒有框線的預設樣式;"__withBorder"代表有框線的預設樣式,預設為"__withoutBorder"
3235
#$conf["tdClass"]="__withoutBorder";
3236
#$conf["tdEnd"],字串,爲是否要以</td>結尾,"true"表示"是"。也可以看成列裏面的元素結束,預設為"false".
3237
#$conf["tdEnd"]="true";
3238
#$conf["trEnd"],字串,爲是否要以</tr>結尾,"true"表示"是"。也可以看作該列結束,預設為"false".
3239
#$conf["trEnd"]="true";
3240
#$conf["displayTarget"],字串,頁面的呈現方法,可以是開新視窗(_blank)、在目前頁面、頁框裏面(_self)、在父頁面(_parent)、最上層頁面(_top),預設為"_top"。
3241
#$conf["displayTarget"]="";
3242
#$conf["tableEnd"],字串,爲是否要表格結束,"true"表示"是",預設為"false".
3243
#$conf["tableEnd"]="true";
3244
var_dump(form::sendHugeDataButton($conf));
3245
unset($conf);	
3246
 
3247
#函式說明:
3248
#將接收到的表單資訊用serialize壓縮成一字串.
3249
#回傳結果:
3250
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
3251
#$result["function"],當前執行的函數.
3252
#$result["error"],錯誤訊息陣列.
3253
#$result["content"],serialize後的表單資料字串. 
3254
#必填參數:
3255
#無
3256
#可省略參數:
3257
#$conf["type"],接收的表單傳送方式,可以用的有"post","get","any",預設為 "any".
3258
#$conf["type"]="any";
3259
#參考資料:
3260
#serialize=>http://php.net/manual/en/function.serialize.php 
3261
var_dump(form::serialize($conf=array()));
3262
 
3263
*/
3264
 
3265
#提示要測試的函式
3266
echo "<hr>form::unserialize - testCase 1<br>";
3267
 
3268
/*
3269
 
3270
#測試資料
3271
$postData["n1"]="v1";
3272
$postData["n2"]="v2";
3273
$postData["n3"]="v3";
3274
 
3275
#函式說明:
3276
#將接收到的表單資訊用serialize壓縮成一字串.
3277
#回傳結果:
3278
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
3279
#$result["function"],當前執行的函數.
3280
#$result["error"],錯誤訊息陣列.
3281
#$result["content"],serialize後的表單資料字串. 
3282
#必填參數:
3283
#$conf["serial_FD_str"],透過serialize壓縮過的表單資料
3284
$conf["serial_FD_str"]=serialize($postData);
3285
#可省略參數:
3286
#無
3287
#參考資料:
3288
#serialize=>http://php.net/manual/en/function.serialize.php
3289
var_dump(form::unserialize($conf));
3290
unset($conf);
3291
 
3292
*/
3293
 
3294
#提示要測試的函式
3295
echo "<hr>form::pullDownList - testCase 1<br>";
3296
 
3297
/*
3298
#涵式說明:
3299
#建立含有分群功能的下拉式選單 
3300
#回傳結果:
3301
#
3302
#必填參數:
3303
#$conf["option"][$group][$optionDisplayName]=$autualVal,一、二維字串陣列,代表$group群組的選項$optionDisplayName實際上傳送的內容為$autualVal.
3304
$conf["option"]["0"]="0";
3305
$conf["option"]["A"]["a"]=1;
3306
$conf["option"]["A"]["b"]=2;
3307
$conf["option"]["A"]["c"]=3;
3308
$conf["option"]["B"]["a"]=2;
3309
$conf["option"]["B"]["b"]=4;
3310
$conf["option"]["B"]["c"]=6;
3311
$conf["option"]["C"]="c";
3312
$conf["option"]["D"]="c";
3313
#可省略參數:
3314
#$conf["name"],字串,選單用於傳送的名稱,預設為"pullDownList[]".
3315
#$conf["name"]="pullDownList[]";	
3316
#$conf["id"],字串,元素id,預設跟$conf["name"]一樣.
3317
#$conf["id"]="pullDownList[]";	
3318
#$conf["default"],字串陣列,代表哪個群組的選項是預設要選取的,$conf["default"]=array("g1","v1")代表g1群組的v1選擇為預設值.
3319
$conf["default"]=array("B","b");
3320
#$conf["class"],字串陣列,代表要使用哪些css的class.
3321
$conf["class"]=array("danger","alert-danger");
3322
#$conf["style"],二維字串陣列,代表要使用哪些css style,例如$conf["style"]["color"]="black",就代表使用"color"屬性,屬性值為"black".
3323
$conf["style"]["color"]="green";
3324
#$conf["notSelectedText"],一維陣列字串,沒有選擇項目時要顯示的選項為何,預設為$conf["notSelectedText"]["請選擇"]="unSelected";則代表顯示"請選擇",值為"unSelected".
3325
#$conf["notSelectedText"]["請選擇"]="unSelected"
3326
#$conf["onChangeFunction"],字串,當下拉式選單的內容變動時,要執行哪個js函數與要帶的參數,或要做的js,預設為"return false;".
3327
$conf["onChangeFunction"]="alert('you selected '+this.value+'!');";
3328
#參考資料:
3329
#HTML <optgroup> Tag=>http://www.w3schools.com/Tags/tag_optgroup.asp
3330
#備註:
3331
#建構中
3332
$pullDownList=form::pullDownList($conf);
3333
unset($conf);
3334
 
3335
#如果建立下拉式選單失敗
3336
if($pullDownList["status"]==="false"){
3337
 
3338
	#印出內容
3339
	var_dump($pullDownList);
3340
 
3341
	#結束程式
3342
	exit;
3343
 
3344
	}#if end
3345
 
3346
#印出語法
3347
echo $pullDownList["content"];
3348
 
3349
*/
3350
 
3351
#提示要測試的函式
3352
echo "<hr>form::is_ajax - testCase 1<br>";
3353
 
3354
/*
3355
 
3356
#函式說明:
3357
#判斷當前php檔的執行是否為ajax的要求.
3358
#回傳結果:
3359
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
3360
#$result["function"],當前執行的函數.
3361
#$result["content"],是否為ajax要求,"true"代表是,"false"代表不是. 
3362
$is_ajax=form::is_ajax();
3363
 
3364
var_dump($is_ajax);
3365
 
3366
*/	
3367
 
3368
#提示要測試的函式
3369
echo "<hr>form::is_ajax - testCase 2<br>";
3370
 
3371
/*
3372
 
3373
#涵式說明:
3374
#建立透過javaScript傳送post數值到特定頁面,並且取得頁面的回應,將之結果放置在特定的區塊裏面的js函式.
3375
#回傳結果:
3376
#$result["status"],執行正確與否,"true"代表執行正確,"false"代表執行失敗.
3377
#$result["error"],錯誤訊息陣列.
3378
#$result["content"],JavaScript的語法 
3379
#$result["function"],當前執行的函數名稱
3380
#必填參數:
3381
$conf["receivePage"]=$_SERVER['PHP_SELF'];#要接收數值的頁面。
3382
$conf["varNameArray"]=array("var1");#要傳送的數值名稱
3383
$conf["varValueArray"]=array("val1");#要傳送的數值內容。
3384
$conf["jsFunctionName"]="is_ajax_t_2";#ajax裏面的js涵式名稱
3385
$conf["responsePalaceId"]="is_ajax_t_2";#回傳的內容要呈現於哪個<span id = ? ></span>、<div id= ? ></div>區塊之間。
3386
#參考資料來源:
3387
#http://www.w3school.com.cn/php/php_ajax_suggest.asp
3388
$ajaxSendPostValue=javaScript::ajaxSendPostValue($conf);
3389
unset($conf);
3390
 
3391
#如果建立下拉式選單失敗
3392
if($ajaxSendPostValue["status"]==="false"){
3393
 
3394
	#印出內容
3395
	var_dump($ajaxSendPostValue);
3396
 
3397
	#結束程式
3398
	exit;
3399
 
3400
	}#if end
3401
 
3402
#印出 ajax
3403
echo $ajaxSendPostValue["content"];
3404
 
3405
#函式說明:
3406
#放置按鈕
3407
#回傳結果:
3408
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
3409
#$result["function"],當前執行的函數.
3410
#$result["error"],錯誤訊息陣列.
3411
#$result["content"],按鈕語法. 
3412
#必要的參數:
3413
$conf["buttonDisplayValue"]="ajax";#爲按鈕上顯示的文字。
3414
#可省略的參數:
3415
#$conf["buttonStyleName"]="";#可省略,爲按鈕所要使用的css樣式類別名稱,預設的css樣式爲 __simpleButtonLinkDefaultButtonCssStyle 。
3416
	#其屬性爲   "width","height","font-size","text-align"
3417
	#其屬性值爲 "100%" ,  "50"  ,    "30"   ,   "center"
3418
$conf["buttonActionScriptFunction"]="is_ajax_t_2()";#可省略,爲按下按鈕時所要執行的javaScript函式或程式,預設不設定。
3419
	#"document.forms.formName.submit()"爲傳送名爲testForm的表單內容
3420
	#"window.print()"爲使用瀏覽器內建工具列印當前網頁
3421
	#若搭配 javaScript 類別的 confirmWindow 函數的回傳結果,則會有確認視窗的效果.
3422
#$conf["buttonBorder"]="";#可省略,爲IE9內會自動產生外框,此爲外框的厚度,屬性值爲正整數,預設爲0。
3423
#$conf["disabled"]="true";#可省略,為按鈕的功能是否要取消,若為"true"則代表要取消,若為"false"則代表功能正常,預設為"false".
3424
#$conf["tableStart"]="true";#爲是否要表格開始。"false"代表否,"true"代表是。預設爲"false"。
3425
#$conf["tableClass"]="";#表格要套用的css樣式,若省略的話,則預設爲 __defaultTbaleCsssStyle 其屬性爲 table-layout:fixed word-break:break-all width:100% ,須搭配 $conf["tablStart"] 與 $conf["tableEnd"] 使用。
3426
#$conf["trStart"]="true";#爲是否要以<tr>開頭,"true"表示"是"。也可以看作新的一列開始,預設為"false".
3427
#$conf["trClass"]="__withoutBorder";#<tr>要套用的css樣式,預設為"__withoutBorder",亦即沒有框線的樣式;"__withBorder"則爲有框線的樣式
3428
#$conf["tdStart"]="true";#爲是否要以<td>開頭,"true"表示"是"。也可以看成列裏面的元素開始,預設為"false".
3429
#$conf["tdClass"]="__withoutBorder";#<td>要套用的css樣式,"__withoutBorder"爲沒有框線的樣式;__withBorder爲有框線的樣式
3430
#$conf["tdEnd"]="true";#爲是否要以</td>結尾,"true"表示"是"。也可以看成列裏面的元素結束,預設為"false".
3431
#$conf["trEnd"]="true";#爲是否要以</tr>結尾,"true"表示"是"。也可以看作該列結束,預設為"false".
3432
#$conf["tableEnd"]="true";#爲是否要表格結束。"false"代表否,"true"代表是,預設爲"false"。
3433
#$conf["formStart"]="true";#爲是否要表單開始,如果爲"true"則代表要表單開始,預設為"false".
3434
#$conf["action"]="";#爲表單要傳送到哪個頁面,須搭配$conf["formStart"]與$conf["formEnd"]參數使用
3435
#$conf["target"]="";#為目標表單顯示的方式,若沒設定則預設爲"_self",其他可用的參數爲 "_blank"、"_parent"、"_top",也可以是iframe的名稱。須搭配$conf["formStart"]與$conf["formEnd"]參數使用
3436
#$conf["formEnd"]="true";#爲是否要表單結束,如果爲"true"則代表要表單結束,預設為"false".
3437
#$conf["formId"],字串,表單的id.
3438
#$conf["formId"]="";
3439
#$conf["buttonId"],字串,按鈕的id.
3440
#$conf["buttonId"]="";
3441
#參考資料來源:
3442
#http://stackoverflow.com/questions/3014649/how-to-disable-html-button-using-javascript
3443
$button=form::button($conf);
3444
unset($conf);
3445
 
3446
#如果建立下拉式選單失敗
3447
if($button["status"]==="false"){
3448
 
3449
	#印出內容
3450
	var_dump($button);
3451
 
3452
	#結束程式
3453
	exit;
3454
 
3455
	}#if end
3456
 
3457
#印出按鈕
3458
echo $button["content"];
3459
 
3460
#印出show 出回應的 span區塊
3461
echo "<span id=\"is_ajax_t_2\"></span>";
3462
 
3463
#函式說明:
3464
#判斷當前php檔的執行是否為ajax的要求.
3465
#回傳結果:
3466
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
3467
#$result["function"],當前執行的函數.
3468
#$result["content"],是否為ajax要求,"true"代表是,"false"代表不是. 
3469
$is_ajax=form::is_ajax();
3470
 
3471
var_dump($is_ajax);
3472
 
3473
*/
3474
 
3475
#提示要測試的函式
3476
echo "<hr>form::is_ajax - testCase 3<br>";
3477
 
3478
/*
3479
 
3480
#涵式說明:
3481
#建立透過javaScript傳送post數值到特定頁面,並且取得頁面的回應,將之結果放置在特定的區塊裏面的js函式.
3482
#回傳結果:
3483
#$result["status"],執行正確與否,"true"代表執行正確,"false"代表執行失敗.
3484
#$result["error"],錯誤訊息陣列.
3485
#$result["content"],JavaScript的語法 
3486
#$result["function"],當前執行的函數名稱
3487
#必填參數:
3488
$conf["receivePage"]=$_SERVER['PHP_SELF']."?is_ajax=true";#要接收數值的頁面。
3489
$conf["varNameArray"]=array("var1");#要傳送的數值名稱
3490
$conf["varValueArray"]=array("val1");#要傳送的數值內容。
3491
$conf["jsFunctionName"]="is_ajax_t_3";#ajax裏面的js涵式名稱
3492
$conf["responsePalaceId"]="is_ajax_t_3";#回傳的內容要呈現於哪個<span id = ? ></span>、<div id= ? ></div>區塊之間。
3493
#參考資料來源:
3494
#http://www.w3school.com.cn/php/php_ajax_suggest.asp
3495
$ajaxSendPostValue=javaScript::ajaxSendPostValue($conf);
3496
unset($conf);
3497
 
3498
#如果建立下拉式選單失敗
3499
if($ajaxSendPostValue["status"]==="false"){
3500
 
3501
	#印出內容
3502
	var_dump($ajaxSendPostValue);
3503
 
3504
	#結束程式
3505
	exit;
3506
 
3507
	}#if end
3508
 
3509
#印出 ajax
3510
echo $ajaxSendPostValue["content"];
3511
 
3512
#函式說明:
3513
#放置按鈕
3514
#回傳結果:
3515
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
3516
#$result["function"],當前執行的函數.
3517
#$result["error"],錯誤訊息陣列.
3518
#$result["content"],按鈕語法. 
3519
#必要的參數:
3520
$conf["buttonDisplayValue"]="ajax";#爲按鈕上顯示的文字。
3521
#可省略的參數:
3522
#$conf["buttonStyleName"]="";#可省略,爲按鈕所要使用的css樣式類別名稱,預設的css樣式爲 __simpleButtonLinkDefaultButtonCssStyle 。
3523
	#其屬性爲   "width","height","font-size","text-align"
3524
	#其屬性值爲 "100%" ,  "50"  ,    "30"   ,   "center"
3525
$conf["buttonActionScriptFunction"]="is_ajax_t_3()";#可省略,爲按下按鈕時所要執行的javaScript函式或程式,預設不設定。
3526
	#"document.forms.formName.submit()"爲傳送名爲testForm的表單內容
3527
	#"window.print()"爲使用瀏覽器內建工具列印當前網頁
3528
	#若搭配 javaScript 類別的 confirmWindow 函數的回傳結果,則會有確認視窗的效果.
3529
#$conf["buttonBorder"]="";#可省略,爲IE9內會自動產生外框,此爲外框的厚度,屬性值爲正整數,預設爲0。
3530
#$conf["disabled"]="true";#可省略,為按鈕的功能是否要取消,若為"true"則代表要取消,若為"false"則代表功能正常,預設為"false".
3531
#$conf["tableStart"]="true";#爲是否要表格開始。"false"代表否,"true"代表是。預設爲"false"。
3532
#$conf["tableClass"]="";#表格要套用的css樣式,若省略的話,則預設爲 __defaultTbaleCsssStyle 其屬性爲 table-layout:fixed word-break:break-all width:100% ,須搭配 $conf["tablStart"] 與 $conf["tableEnd"] 使用。
3533
#$conf["trStart"]="true";#爲是否要以<tr>開頭,"true"表示"是"。也可以看作新的一列開始,預設為"false".
3534
#$conf["trClass"]="__withoutBorder";#<tr>要套用的css樣式,預設為"__withoutBorder",亦即沒有框線的樣式;"__withBorder"則爲有框線的樣式
3535
#$conf["tdStart"]="true";#爲是否要以<td>開頭,"true"表示"是"。也可以看成列裏面的元素開始,預設為"false".
3536
#$conf["tdClass"]="__withoutBorder";#<td>要套用的css樣式,"__withoutBorder"爲沒有框線的樣式;__withBorder爲有框線的樣式
3537
#$conf["tdEnd"]="true";#爲是否要以</td>結尾,"true"表示"是"。也可以看成列裏面的元素結束,預設為"false".
3538
#$conf["trEnd"]="true";#爲是否要以</tr>結尾,"true"表示"是"。也可以看作該列結束,預設為"false".
3539
#$conf["tableEnd"]="true";#爲是否要表格結束。"false"代表否,"true"代表是,預設爲"false"。
3540
#$conf["formStart"]="true";#爲是否要表單開始,如果爲"true"則代表要表單開始,預設為"false".
3541
#$conf["action"]="";#爲表單要傳送到哪個頁面,須搭配$conf["formStart"]與$conf["formEnd"]參數使用
3542
#$conf["target"]="";#為目標表單顯示的方式,若沒設定則預設爲"_self",其他可用的參數爲 "_blank"、"_parent"、"_top",也可以是iframe的名稱。須搭配$conf["formStart"]與$conf["formEnd"]參數使用
3543
#$conf["formEnd"]="true";#爲是否要表單結束,如果爲"true"則代表要表單結束,預設為"false".
3544
#$conf["formId"],字串,表單的id.
3545
#$conf["formId"]="";
3546
#$conf["buttonId"],字串,按鈕的id.
3547
#$conf["buttonId"]="";
3548
#參考資料來源:
3549
#http://stackoverflow.com/questions/3014649/how-to-disable-html-button-using-javascript
3550
$button=form::button($conf);
3551
unset($conf);
3552
 
3553
#如果建立下拉式選單失敗
3554
if($button["status"]==="false"){
3555
 
3556
	#印出內容
3557
	var_dump($button);
3558
 
3559
	#結束程式
3560
	exit;
3561
 
3562
	}#if end
3563
 
3564
#印出按鈕
3565
echo $button["content"];
3566
 
3567
#印出show 出回應的 span區塊
3568
echo "<span id=\"is_ajax_t_3\"></span>";
3569
 
3570
#函式說明:
3571
#判斷當前php檔的執行是否為ajax的要求.
3572
#回傳結果:
3573
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
3574
#$result["function"],當前執行的函數.
3575
#$result["content"],是否為ajax要求,"true"代表是,"false"代表不是. 
3576
#可省略參數:
3577
#$conf["useGetVarToRecogniseAjaxRequest"],字串,用來識別是否為ajax要求的get變數名稱,若其值為"true"則代表為ajax要求,反之為"false",判斷好後會將該變數移除.
3578
#$conf["useGetVarToRecogniseAjaxRequest"]="is_ajax";
3579
#$conf["usePostVarToRecogniseAjaxRequest"],字串,用來識別是否為ajax要求的post變數名稱,若其值為"true"則代表為ajax要求,反之為"false",判斷好後會將該變數移除.
3580
#$conf["usePostVarToRecogniseAjaxRequest"]="is_ajax";
3581
#備註:
3582
#如果client端沒有傳送ajax要求的識別header,則無法識別是ajax要求.
3583
$conf["useGetVarToRecogniseAjaxRequest"]="is_ajax";
3584
$is_ajax=form::is_ajax($conf);
3585
unset($conf);
3586
 
3587
var_dump($is_ajax);
3588
 
3589
*/	
3590
 
3591
#提示要測試的函式
3592
echo "<hr>form::is_ajax - testCase 4<br>";
3593
 
3594
/*
3595
 
3596
#涵式說明:
3597
#建立透過javaScript傳送post數值到特定頁面,並且取得頁面的回應,將之結果放置在特定的區塊裏面的js函式.
3598
#回傳結果:
3599
#$result["status"],執行正確與否,"true"代表執行正確,"false"代表執行失敗.
3600
#$result["error"],錯誤訊息陣列.
3601
#$result["content"],JavaScript的語法 
3602
#$result["function"],當前執行的函數名稱
3603
#必填參數:
3604
$conf["receivePage"]=$_SERVER['PHP_SELF'];#要接收數值的頁面。
3605
$conf["varNameArray"]=array("var1","is_ajax");#要傳送的數值名稱
3606
$conf["varValueArray"]=array("val1","true");#要傳送的數值內容。
3607
$conf["jsFunctionName"]="is_ajax_t_4";#ajax裏面的js涵式名稱
3608
$conf["responsePalaceId"]="is_ajax_t_4";#回傳的內容要呈現於哪個<span id = ? ></span>、<div id= ? ></div>區塊之間。
3609
#參考資料來源:
3610
#http://www.w3school.com.cn/php/php_ajax_suggest.asp
3611
$ajaxSendPostValue=javaScript::ajaxSendPostValue($conf);
3612
unset($conf);
3613
 
3614
#如果建立下拉式選單失敗
3615
if($ajaxSendPostValue["status"]==="false"){
3616
 
3617
	#印出內容
3618
	var_dump($ajaxSendPostValue);
3619
 
3620
	#結束程式
3621
	exit;
3622
 
3623
	}#if end
3624
 
3625
#印出 ajax
3626
echo $ajaxSendPostValue["content"];
3627
 
3628
#函式說明:
3629
#放置按鈕
3630
#回傳結果:
3631
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
3632
#$result["function"],當前執行的函數.
3633
#$result["error"],錯誤訊息陣列.
3634
#$result["content"],按鈕語法. 
3635
#必要的參數:
3636
$conf["buttonDisplayValue"]="ajax";#爲按鈕上顯示的文字。
3637
#可省略的參數:
3638
#$conf["buttonStyleName"]="";#可省略,爲按鈕所要使用的css樣式類別名稱,預設的css樣式爲 __simpleButtonLinkDefaultButtonCssStyle 。
3639
	#其屬性爲   "width","height","font-size","text-align"
3640
	#其屬性值爲 "100%" ,  "50"  ,    "30"   ,   "center"
3641
$conf["buttonActionScriptFunction"]="is_ajax_t_4()";#可省略,爲按下按鈕時所要執行的javaScript函式或程式,預設不設定。
3642
	#"document.forms.formName.submit()"爲傳送名爲testForm的表單內容
3643
	#"window.print()"爲使用瀏覽器內建工具列印當前網頁
3644
	#若搭配 javaScript 類別的 confirmWindow 函數的回傳結果,則會有確認視窗的效果.
3645
#$conf["buttonBorder"]="";#可省略,爲IE9內會自動產生外框,此爲外框的厚度,屬性值爲正整數,預設爲0。
3646
#$conf["disabled"]="true";#可省略,為按鈕的功能是否要取消,若為"true"則代表要取消,若為"false"則代表功能正常,預設為"false".
3647
#$conf["tableStart"]="true";#爲是否要表格開始。"false"代表否,"true"代表是。預設爲"false"。
3648
#$conf["tableClass"]="";#表格要套用的css樣式,若省略的話,則預設爲 __defaultTbaleCsssStyle 其屬性爲 table-layout:fixed word-break:break-all width:100% ,須搭配 $conf["tablStart"] 與 $conf["tableEnd"] 使用。
3649
#$conf["trStart"]="true";#爲是否要以<tr>開頭,"true"表示"是"。也可以看作新的一列開始,預設為"false".
3650
#$conf["trClass"]="__withoutBorder";#<tr>要套用的css樣式,預設為"__withoutBorder",亦即沒有框線的樣式;"__withBorder"則爲有框線的樣式
3651
#$conf["tdStart"]="true";#爲是否要以<td>開頭,"true"表示"是"。也可以看成列裏面的元素開始,預設為"false".
3652
#$conf["tdClass"]="__withoutBorder";#<td>要套用的css樣式,"__withoutBorder"爲沒有框線的樣式;__withBorder爲有框線的樣式
3653
#$conf["tdEnd"]="true";#爲是否要以</td>結尾,"true"表示"是"。也可以看成列裏面的元素結束,預設為"false".
3654
#$conf["trEnd"]="true";#爲是否要以</tr>結尾,"true"表示"是"。也可以看作該列結束,預設為"false".
3655
#$conf["tableEnd"]="true";#爲是否要表格結束。"false"代表否,"true"代表是,預設爲"false"。
3656
#$conf["formStart"]="true";#爲是否要表單開始,如果爲"true"則代表要表單開始,預設為"false".
3657
#$conf["action"]="";#爲表單要傳送到哪個頁面,須搭配$conf["formStart"]與$conf["formEnd"]參數使用
3658
#$conf["target"]="";#為目標表單顯示的方式,若沒設定則預設爲"_self",其他可用的參數爲 "_blank"、"_parent"、"_top",也可以是iframe的名稱。須搭配$conf["formStart"]與$conf["formEnd"]參數使用
3659
#$conf["formEnd"]="true";#爲是否要表單結束,如果爲"true"則代表要表單結束,預設為"false".
3660
#$conf["formId"],字串,表單的id.
3661
#$conf["formId"]="";
3662
#$conf["buttonId"],字串,按鈕的id.
3663
#$conf["buttonId"]="";
3664
#參考資料來源:
3665
#http://stackoverflow.com/questions/3014649/how-to-disable-html-button-using-javascript
3666
$button=form::button($conf);
3667
unset($conf);
3668
 
3669
#如果建立下拉式選單失敗
3670
if($button["status"]==="false"){
3671
 
3672
	#印出內容
3673
	var_dump($button);
3674
 
3675
	#結束程式
3676
	exit;
3677
 
3678
	}#if end
3679
 
3680
#印出按鈕
3681
echo $button["content"];
3682
 
3683
#印出show 出回應的 span區塊
3684
echo "<span id=\"is_ajax_t_4\"></span>";
3685
 
3686
#函式說明:
3687
#判斷當前php檔的執行是否為ajax的要求.
3688
#回傳結果:
3689
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
3690
#$result["function"],當前執行的函數.
3691
#$result["content"],是否為ajax要求,"true"代表是,"false"代表不是. 
3692
#可省略參數:
3693
#$conf["useGetVarToRecogniseAjaxRequest"],字串,用來識別是否為ajax要求的get變數名稱,若其值為"true"則代表為ajax要求,反之為"false",判斷好後會將該變數移除.
3694
#$conf["useGetVarToRecogniseAjaxRequest"]="is_ajax";
3695
#$conf["usePostVarToRecogniseAjaxRequest"],字串,用來識別是否為ajax要求的post變數名稱,若其值為"true"則代表為ajax要求,反之為"false",判斷好後會將該變數移除.
3696
#$conf["usePostVarToRecogniseAjaxRequest"]="is_ajax";
3697
#備註:
3698
#如果client端沒有傳送ajax要求的識別header,則無法識別是ajax要求.
3699
$conf["usePostVarToRecogniseAjaxRequest"]="is_ajax";
3700
$is_ajax=form::is_ajax($conf);
3701
unset($conf);
3702
 
3703
var_dump($is_ajax);
3704
 
3705
*/	
3706
 
3707
#提示要測試的函式
3708
echo "<hr>form::buttonReset - testCase 1<br>";
3709
 
3710
/*
3711
 
3712
#說明:
3713
#將表單填寫的狀態還原至預設值的按鈕.
3714
#回傳的內容:
3715
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
3716
#$result["function"],當前執行的函數.
3717
#$result["error"],錯誤訊息陣列.
3718
#$result["content"],按鈕語法.
3719
#必填的參數:
3720
#$conf["value"],字串,爲清空表單內容的按鈕顯示名稱
3721
$conf["form::buttonReset"]["value"]="reset";
3722
#可省略的參數:
3723
#$conf["class"],字串,爲要套用的css樣式名稱,預設為__qbpwcf_base."
3724
#$conf["class"]="";
3725
#$conf["trStart"],字串,爲是否要以<tr>開頭,"true"表示"是",也可以看作新的一列開始,預設為"false".
3726
#$conf["trStart"]="true";
3727
#$conf["tdStart"],字串,爲是否要以<td>開頭,"true"表示"是",可以看成列裏面的元素開始,預設為"false".
3728
#$conf["tdStart"]="true";
3729
#$conf["tdEnd"],字串,爲是否要以</td>結尾,"true"表示"是",也可以看成列裏面的元素結束,預設為"false".
3730
#$conf["trEnd"]="true";#爲是否要以</tr>結尾,"true"表示"是",也可以看作該列結束,預設為"false".
3731
#$conf["buttonId"],字串,按鈕的id.
3732
#$conf["buttonId"]="";
3733
$buttonReset=form::buttonReset($conf["form::buttonReset"]);
3734
unset($conf["form::buttonReset"]);
3735
 
3736
#如果建立重設按鈕失敗
3737
if($buttonReset["status"]==="false"){
3738
 
3739
	#印出內容
3740
	var_dump($buttonReset);
3741
 
3742
	#停止執行
3743
	exit;
3744
 
3745
	}#if end
3746
 
3747
#印出語法
3748
echo $buttonReset["content"];
3749
 
3750
*/
3751
 
3752
#提示要測試的函式
3753
echo "<hr>form::scrollingList - testCase 1<br>";
3754
 
3755
#/*
3756
 
3757
#涵式說明:
3758
#建立下拉式表單,選項會用全螢幕的div區塊呈現.
3759
#回傳的結果:
3760
#$result["status"],執行是否正常,"true"代表正常,"false"代表失敗.
3761
#$result["error"],錯誤訊息陣列.
3762
#$result["content"],語法內容.
3763
#$result["function"],設置當前執行的涵式
3764
#必填的參數: 
3765
#$conf["name"],字串,爲該下拉式選單的名稱
3766
$conf["name"]="scrollingList";
3767
#$conf["sendValue"],陣列值,爲每個選項的實際傳送的數值,e.g. $sendValue = array("a","b","c","d","e");
3768
$conf["sendValue"]=array("Aa","Bb","Cc","Dd","Ee","Ff","Gg","Hh","Ii","Jj","Kk");
3769
#可省略的參數:
3770
#$conf["formName"]="";#該表單的名稱
3771
$conf["outputValue"]=array("11","22","33","44","55","66","77","88","99","1010","1111");#爲陣列值,爲每個選項的實際顯示的數值, e.g. $outputValue = array("p","o","i","t","e");,如果沒有設定,則其值同$conf["sendValue"]。
3772
#$conf["viewCount"]="";#為一次要顯示幾個選項,預設爲顯示一個。
3773
$conf["defaultValue"]="Ff";#為預設選取那個選項,須爲$conf["sendValue"]其中的一個值。
3774
#$conf["class"]="";#爲要套用的class樣式,預設為 "__qbpwcf_inputSelect".
3775
#$conf["readOnly"],字串,內容是否唯獨,預設為"false",不唯獨,"true"為唯獨.
3776
#$conf["readOnly"]="true";
3777
#$conf["comment"],字串,輸入方框上面要放哪些註解文字,亦即用label來呈現,同時指定"for"屬性的數值為當前"input"標籤的id,意即參數"name"的內容.
3778
#$conf["comment"]="";
3779
#$conf["formAction"]="";#爲該下拉式表單要傳送到的位置
3780
#$conf["actionTarget"]="_self";#要如何接收網頁的迴應,預設爲_self
3781
#$conf["independentForm"]="false";#是否該下拉式選單就是一個完整的表單,"true"代表是,"false"代表不是,預設為"true"
3782
#$conf["hiddenVar"],字串陣列,隱藏的變數名稱陣列.
3783
#$conf["hiddenVar"]=array("");
3784
#$conf["hiddanVarValue"],字串陣列,隱藏變數的數值內容.
3785
#$conf["hiddenVarValue"]=array("");
3786
#$conf["fixedPosition"],字串,該下拉式選單是否要隨着滾軸滾動時固定在畫面上特定的位置,於設為"false",代表不固定,"true"代表要固定.
3787
#$conf["fixedPosition"]="true";
3788
#$conf["fixedPosition.fixedTop"],字串,該選單距離畫面頂部的固定距離,預設為0px.
3789
#$conf["fixedPosition.fixedTop"]="0px";
3790
#$conf["fixedPosition.fixedLeft"],字串,該選單距離畫面左方的固定距離.預設為0px.
3791
#$conf["fixedPosition.fixedLeft"]="0px";
3792
#$conf["fixedPosition.emptySpaceSize"],字串,表單位置要放置多寬的空白,於設為40px.
3793
#$conf["fixedPosition.emptySpaceSize"]="40px"; 
3794
#$conf["tableStartClass"]="__withoutBorder";#表格要採用的css樣式,預設為__withoutBorder,__withoutBorder為沒有框線的樣式,__withBorder為有樣式的表格.
3795
#$conf["tableStart"]="true";#爲是否要以<table>結尾,"true"表示"是"。也可以看作表格結束。	
3796
#$conf["trStart"]="true";#爲是否要以<tr>開頭,"true"表示"是"。也可以看作新的一列開始。
3797
#$conf["tdStart"]="true";#爲是否要以<td>開頭,"true"表示"是"。也可以看成列裏面的元素開始
3798
#$conf["tdEnd"]="true";#爲是否要以</td>結尾,"true"表示"是"。也可以看成列裏面的元素結束
3799
#$conf["trEnd"]="true";#爲是否要以</tr>結尾,"true"表示"是"。也可以看作該列結束。
3800
#$conf["tableEnd"]="true";#爲是否要以</table>結尾,"true"表示"是"。也可以看作表格結束。		
3801
#備註:
3802
#$_SERVER["PHP_SELF"]為php檔案自己
3803
#參考資料來源:
3804
#http://stackoverflow.com/questions/833032/submit-is-not-a-function-in-javascript => form的id重複會導致"document.testForm.submit()"的javaScript語法出錯。
3805
#http://stackoverflow.com/questions/14622124/all-of-commands-for-submit-in-onchange-select-not-work => documents.forms.formName.submit() 才會將正確的表單送出。
3806
#http://stackoverflow.com/questions/368813/html-form-readonly-select-tag-input => 禁止改變選項,且也不會傳送該名稱表單
3807
#tableStart & tableEnd 要補上
3808
$scrollingList=form::scrollingList($conf);
3809
unset($conf);
3810
 
3811
#如果建立重設按鈕失敗
3812
if($scrollingList["status"]==="false"){
3813
 
3814
	#印出內容
3815
	var_dump($scrollingList);
3816
 
3817
	#停止執行
3818
	exit;
3819
 
3820
	}#if end
3821
 
3822
#印出語法
3823
echo $scrollingList["content"];
3824
 
3825
#*/
3826
 
3827
?>
3828
 
3829
<script>
3830
 
3831
/*
3832
 
3833
//取得下拉式選單元素
3834
var scrollingList=document.getElementById('scrollingList');
3835
 
3836
//將下拉式選單綁定'mousedown'事件,
3837
var scrollingListMousedownEvent = scrollingList.addEventListener("mousedown",function(event){
3838
 
3839
	//取消預設按下滑鼠的效果
3840
	event.preventDefault();
3841
 
3842
	});
3843
 
3844
//將下拉式選單綁定'focus'事件,觸發時要執行物件__qbpwcf_scrollingList的函數
3845
var scrollingListClickEvent = scrollingList.addEventListener("click",function(event){
3846
 
3847
	//debug
3848
	//console.log(event);
3849
 
3850
	//取得下拉式選單內容
3851
	var inputSelect=event.target;
3852
 
3853
	//debug
3854
	//console.log(inputSelect);
3855
 
3856
	//讓下拉式選單趕緊隱藏
3857
	inputSelect.style.opacity='0';
3858
 
3859
	//取得選項的數目
3860
	var opLen=inputSelect.options.length;
3861
 
3862
	//debug
3863
	//console.log(opLen);
3864
 
3865
	//新增覆蓋全螢幕的div
3866
	var root=document.createElement('div');
3867
 
3868
	//設置最外層div的id
3869
	root.setAttribute('id','scrollingListRootDiv');
3870
 
3871
	//設置最外層div的樣式
3872
	root.setAttribute('class','__qbpwcf_scrollingListRootDiv');	
3873
 
3874
	//新增為了將不足divForMiddle可見高度的選項們置中的div
3875
	var divForMiddle=document.createElement('div');
3876
 
3877
	//設置為了上下置中的div樣式	
3878
	divForMiddle.setAttribute('class','__qbpwcf_scrollingListOutterDiv');
3879
 
3880
	//初始化記錄選擇的選項index
3881
	var selectedOptionIndex=-1;
3882
 
3883
	//針對每個選項
3884
	for(var i=0;i< opLen;i++){
3885
 
3886
		//debug
3887
		//console.log(i);
3888
 
3889
		//debug
3890
		//console.log(inputSelect.options[i].value);
3891
 
3892
		//取得選項實際數值
3893
		var opVal=inputSelect.options[i].value;
3894
 
3895
		//debug
3896
		//console.log(inputSelect.options[i].innerHTML);
3897
 
3898
		//取得選項顯示名稱
3899
		var opShow=inputSelect.options[i].innerHTML;
3900
 
3901
		//debug
3902
		//console.log(opVal+'=>'+opShow);
3903
 
3904
		//建立選項的div
3905
		var opDiv=document.createElement('div');
3906
 
3907
		//設置選項div的class
3908
		opDiv.setAttribute('class','__qbpwcf_inputSelect __qbpwcf_inputSelect_hover');
3909
 
3910
		//設置選項div的數值內容
3911
		opDiv.setAttribute('data-val',opVal);
3912
 
3913
		//設置選項div的編號(從0開始)
3914
		opDiv.setAttribute('data-no',i);
3915
 
3916
		//若該選項有 'selected' 屬性
3917
		if(inputSelect.options[i].attributes['selected']!==undefined){
3918
 
3919
			//debug
3920
			//console.log('第'+opDiv.attributes['data-no'].value+'個選項為現有選擇的項目');
3921
 
3922
			//標記該選項為原先所選擇的項目
3923
			opDiv.setAttribute('data-selected','true');
3924
 
3925
			//記錄原先所選擇的項目的index
3926
			var selectedOptionIndex=parseInt(opDiv.attributes['data-no'].value);
3927
 
3928
			}//if end
3929
 
3930
		//建立選項名稱文字節點
3931
		var textnode = document.createTextNode(opShow); 
3932
 
3933
		//將文字放進選項的div
3934
		opDiv.appendChild(textnode);
3935
 
3936
		//將選項放進為了上下左右置中的div
3937
		divForMiddle.appendChild(opDiv);
3938
 
3939
		}//for end
3940
 
3941
	//新增為了上下左右置中的div
3942
	var divForCenterMiddle=document.createElement('div');
3943
 
3944
	//設置為了內部元素都上下左右置中的div樣式	
3945
	//divForCenterMiddle.setAttribute('style','background-color:white;position:fixed;top:15%;left:15%;height:70%;width:70%;overflow-y:auto;border:1px solid black;');
3946
	divForCenterMiddle.setAttribute('class','__qbpwcf_scrollingListInnerDiv');
3947
 
3948
	//將上下置中的選項們放進可以上下左右置中的div
3949
	divForCenterMiddle.appendChild(divForMiddle);
3950
 
3951
	//將選項放進最外層的div
3952
	root.appendChild(divForCenterMiddle);
3953
 
3954
	//將整個div放到body裡面
3955
	document.body.appendChild(root);
3956
 
3957
	//調整滾軸表單的置中效果
3958
	scrollingListMiddleFunction();
3959
 
3960
	//取得所有選項
3961
	var allOptions=document.getElementsByClassName('__qbpwcf_inputSelect_hover');
3962
 
3963
	//debug
3964
	//console.log(allOptions);
3965
 
3966
	//移動滾軸讓原本選擇的選項盡量置中
3967
 
3968
	//原先選擇的項目索引
3969
	//console.log(selectedOptionIndex);
3970
 
3971
	//opLen 選項的數目
3972
	//console.log(opLen);
3973
 
3974
	//取得選單的滾軸上端位置
3975
	//var scrollingListScrollTop=document.getElementById('scrollingListRootDiv').children[0].scrollTop;
3976
 
3977
	//debug
3978
	//console.log(scrollingListScrollTop);
3979
 
3980
	//取得選單的滾軸上端位置最大值
3981
	var scrollingListScrollTopMax=document.getElementById('scrollingListRootDiv').children[0].scrollTopMax;
3982
 
3983
	//debug
3984
	//console.log(scrollingListScrollTopMax);
3985
 
3986
	//取得選單的可見高度
3987
	//var scrollingListViewHeight=document.getElementById('scrollingListRootDiv').children[0].clientHeight;
3988
 
3989
	//debug
3990
	//console.log(scrollingListViewHeight);
3991
 
3992
	//取得選單含滾軸的總高度
3993
	//var scrollingListScrollHeight=document.getElementById('scrollingListRootDiv').children[0].scrollHeight;
3994
 
3995
	//debug
3996
	//console.log(scrollingListScrollHeight);
3997
 
3998
	//debug
3999
	//console.log(selectedOptionIndex);
4000
 
4001
	//如果有滾軸
4002
	if(scrollingListScrollTopMax!==0){
4003
 
4004
		//如果是第一個選項
4005
		if(selectedOptionIndex===0){
4006
 
4007
			//滾軸拉到最上面
4008
			document.getElementById('scrollingListRootDiv').children[0].scrollTop=0;
4009
 
4010
			//debug
4011
			//console.log('scrollingListScrollTop=0');
4012
 
4013
			}//if end
4014
 
4015
		//如果之前選擇的選項索引剛好等於 opLen/2
4016
		else if(((selectedOptionIndex+1)===(opLen/2))){
4017
 
4018
			//debug
4019
			//console.log('之前選擇的選項索引剛好等於一半');
4020
 
4021
			//取得新的滾軸高度
4022
			var newScrollTop=scrollingListScrollTopMax/2;
4023
 
4024
			//設置滾軸的上端位置
4025
			document.getElementById('scrollingListRootDiv').children[0].scrollTop=newScrollTop;
4026
 
4027
			//debug
4028
			//console.log('scrollingListScrollTop='+newScrollTop.toString());
4029
 
4030
			}//if end
4031
 
4032
		//如果之前選擇的選項索引小於半
4033
		else if((selectedOptionIndex+1)<(opLen/2)){
4034
 
4035
			//debug
4036
			//console.log('之前選擇的選項索引未過半,加幾個'+(selectedOptionIndex+1).toString());
4037
 
4038
			//取得新的滾軸高度
4039
			var newScrollTop=scrollingListScrollTopMax/opLen*selectedOptionIndex+1;
4040
 
4041
			//設置滾軸的上端位置
4042
			document.getElementById('scrollingListRootDiv').children[0].scrollTop=newScrollTop;
4043
 
4044
			//debug
4045
			//console.log('scrollingListScrollTop='+newScrollTop.toString());
4046
 
4047
			}//if end
4048
 
4049
		//如果之前選擇的選項索引過半
4050
		else if((selectedOptionIndex+1)>(opLen/2)){
4051
 
4052
			//debug
4053
			//console.log('之前選擇的選項索引過半,減幾個'+(opLen-selectedOptionIndex-1).toString());
4054
 
4055
			//取得新的滾軸高度
4056
			var newScrollTop=scrollingListScrollTopMax-scrollingListScrollTopMax/opLen*(opLen-selectedOptionIndex-1);
4057
 
4058
			//設置滾軸的上端位置
4059
			document.getElementById('scrollingListRootDiv').children[0].scrollTop=newScrollTop;
4060
 
4061
			//debug
4062
			//console.log('scrollingListScrollTop='+newScrollTop.toString());
4063
 
4064
			}//if end
4065
 
4066
		//如果是最後一個選項
4067
		else if(selectedOptionIndex===opLen){
4068
 
4069
			//如果是最後一個選項
4070
			document.getElementById('scrollingListRootDiv').children[0].scrollTop=scrollingListScrollTopMax;
4071
 
4072
			//debug
4073
			//console.log('scrollingListScrollTop='+scrollingListScrollTopMax);
4074
 
4075
			}//if end		
4076
 
4077
		//不應該跑到的地方
4078
		else{
4079
 
4080
			//debug
4081
			console.log('error occur!');		
4082
 
4083
			}//else end
4084
 
4085
		}//if end
4086
 
4087
	//針對每個選項
4088
	for(var i=0;i<allOptions.length;i++){
4089
 
4090
		//綁定所有選項的 'click' 事件
4091
		allOptions[i].addEventListener("click",function(event){
4092
 
4093
			//debug
4094
			//console.log(event);
4095
 
4096
			//取得點擊到的選項
4097
			var clickedOption=event.target;
4098
 
4099
			//debug
4100
			//console.log(clickedOption);
4101
 
4102
			//取得點擊到的選項數值
4103
			var clickedValue=clickedOption.attributes['data-val'].value;
4104
 
4105
			//debug
4106
			//console.log(clickedValue);
4107
 
4108
			//取得點擊到的選項編號
4109
			var clickedNo=clickedOption.attributes['data-no'].value;
4110
 
4111
			//debug
4112
			//console.log(clickedNo);
4113
 
4114
			//取得點擊到的選項名稱
4115
			var clickedName=clickedOption.innerHTML;
4116
 
4117
			//debug
4118
			//console.log(clickedName);
4119
 
4120
			//修改下拉式選單選則的數值
4121
 
4122
			//針對每個下拉式選單實際的選項
4123
			for(var j=0;j<allOptions.length;j++){
4124
 
4125
				//移除 selected 屬性
4126
				inputSelect.options[j].removeAttribute('selected');	
4127
 
4128
				}//for end
4129
 
4130
			//debug
4131
			//console.log('設置 inputSelect.options['+clickedNo+'] 的 selected 屬性');
4132
 
4133
			//設置點選的選項的 selected 屬性
4134
			inputSelect.options[clickedNo].setAttribute('selected','');	
4135
 
4136
			//取得要移除 scrolling list 的 div
4137
			var divToDel=document.getElementById('scrollingListRootDiv');
4138
 
4139
			//debug
4140
			//console.log(divTodel);
4141
 
4142
			//移除 scrolling list div
4143
			divToDel.remove();
4144
 
4145
			//復原下拉式選單
4146
			inputSelect.style.opacity='unset';
4147
 
4148
			});//function end
4149
 
4150
		}//for end
4151
 
4152
	});
4153
 
4154
//調整滾軸表單的置中效果事件
4155
function scrollingListMiddleEvent(){
4156
 
4157
	//綁定視窗resize的事件
4158
	window.addEventListener("resize",function(event){
4159
 
4160
		//調整滾軸表單的置中效果
4161
		scrollingListMiddleFunction();
4162
 
4163
		});
4164
 
4165
	}//function scrollingListMiddleEvent end
4166
 
4167
//新增當視窗大小改變時的事件
4168
scrollingListMiddleEvent();
4169
 
4170
//調整滾軸表單的置中效果
4171
function scrollingListMiddleFunction(){
4172
 
4173
	//取得下拉式選單的div
4174
	var rootDiv=document.getElementById('scrollingListRootDiv');
4175
 
4176
	//如果沒有下拉式選單的div
4177
	if(rootDiv===null){
4178
 
4179
		return false;
4180
 
4181
		}//if end
4182
 
4183
	//取得下拉式選單的外框高度
4184
	var listOutterDivHeight=rootDiv.children[0].clientHeight;
4185
 
4186
	//下拉式選單的外框高度
4187
	//console.log(listOutterDivHeight);
4188
 
4189
	//取得下拉式選單的內寬高度
4190
	var listInnerDivHeight=rootDiv.children[0].children[0].clientHeight;
4191
 
4192
	//下拉式選單的內寬高度
4193
	//console.log(listInnerDivHeight);
4194
 
4195
	//如果有滾軸
4196
	if(rootDiv.children[0].scrollTopMax!==0){
4197
 
4198
		//取消選項內框與選單外框的高度
4199
		rootDiv.children[0].children[0].style['margin-top']='unset';
4200
 
4201
		//結束 event
4202
		return false;
4203
 
4204
		}//if end
4205
 
4206
	//沒有滾軸
4207
 
4208
	//計算選項內框與選單外框的高度
4209
	var marginTop=((listOutterDivHeight-listInnerDivHeight)/2).toString()+'px';
4210
 
4211
	//debug
4212
	console.log(marginTop);
4213
 
4214
	//設置選項內框與選單外框的高度,已便讓選項列表上下置中於選單外框
4215
	rootDiv.children[0].children[0].style['margin-top']=marginTop;
4216
 
4217
	}//function scrollingListMiddleFunction end
4218
 
4219
*/
4220
 
4221
</script>