| 14 |
liveuser |
1 |
<?php
|
|
|
2 |
|
|
|
3 |
#宣告指派命名空間
|
|
|
4 |
namespace qbpwcf;
|
|
|
5 |
|
|
|
6 |
#匯入外部套件
|
|
|
7 |
include("../../allInOneForJson.php");
|
|
|
8 |
|
|
|
9 |
#接受POST變數
|
|
|
10 |
#涵式說明:
|
|
|
11 |
#可以處理多個透過GET、POST而來的資訊,儲存成變數,同時限定傳送的方法、來源,來增加安全性,檢查有沒有皆收到必須要接收到的變數,沒有接收到的變數可以指定從session變數中取得.
|
|
|
12 |
#回傳的結果:
|
|
|
13 |
#$result["status"],執行正常與否,"true"代表正常,"false"代表不正常.
|
|
|
14 |
#$result["error"],錯誤訊息陣列.
|
|
|
15 |
#$resutl["function"],當前執行的涵式名稱.
|
|
|
16 |
#$result["warning"],警告訊息陣列.
|
|
|
17 |
#$result["passed"],是否有皆收到全部該接收到的變數,若有設定$conf["checkedVarName"]的話,執行正常後會回傳該結果。
|
|
|
18 |
#$result["lostVarName"],沒有皆收到的變數名稱陣列
|
|
|
19 |
#$result["inputDataContent"],所接收的參數陣列.
|
|
|
20 |
#$result["inputDataContent"]["變數名稱"],所接收變數的內容.
|
|
|
21 |
#$result["inputDataCount"],從表單總共接收到幾個元素.
|
|
|
22 |
#$result["HTTP_REFERER"],前一頁的網址,null代表不存在.
|
|
|
23 |
#必填的參數:
|
|
|
24 |
#$conf["method"],字串,傳送過來的資料是用"post/POST"還是"get/GET"?
|
|
|
25 |
$conf["method"]="POST";
|
|
|
26 |
#可省略的參數:
|
|
|
27 |
#$conf["allowGet"],字串,是否要允許 get 傳值,"true",代表允許;"false" ,代表不允許,預設爲不允許.
|
|
|
28 |
#$conf["allowGet"]="true";
|
|
|
29 |
#$conf["limitPrePage"],字串陣列,是否要限定前一頁的網址為哪些,才能接收內容,不符合則轉址.
|
|
|
30 |
$conf["limitPrePage"]=array("tableT.php");
|
|
|
31 |
#$conf["transferLocation"],字串,遇到get傳值,或前一個頁面不符合要求時要轉址到的頁面,預設爲資安素養網"https://isafe.moe.edu.tw/"
|
|
|
32 |
#$conf["transferLocation"]="";
|
|
|
33 |
#$conf["ignore"]=字串陣列,如果要接收的變數名稱與該陣列其一元素一樣,則不放進要回傳的變數裏面.
|
|
|
34 |
#$conf["ignore"]=array();
|
|
|
35 |
#$conf["correctCharacter"]=,字串,如果爲"false",則不處理可能導致網頁出問題的字串,預設爲要進行處理.
|
|
|
36 |
#$conf["correctCharacter"]="false";
|
|
|
37 |
#$conf["checkedVarName"],字串陣列,為檢查是否有接收到哪些變數.
|
|
|
38 |
$conf["checkedVarName"]=array("pageNumber");
|
|
|
39 |
#$conf["canBeEmptyString"],字串,用$conf["checkedVarName"]指定接收的變數名稱陣列,若接收到的內容為空字串是否算有接收到內容,預設為"false","true"代表接收到的內容可以為空字串,"false"代表接收到的內容不可以為空字串.
|
|
|
40 |
#$conf["canBeEmptyString"]="false";
|
|
|
41 |
#$conf["sessionNameArray"],陣列,若存在則代表若沒有從表單取得變數,則從session變數中取得內容,每個元素代表每個表單變數對應的session名稱,若不是要改用session方式取得變數內容的變數,請輸入null,數量請跟$conf["checkedVarName"]參數一致.
|
|
|
42 |
#$conf["sessionNameArray"]=array();
|
|
|
43 |
#$conf["unsetSessionArray"],陣列,與$conf["sessionNameArray"]對應的元素,是否要接收到變數後就卸除,"true"代表要卸除,"false"代表不要卸除.
|
|
|
44 |
#$conf["unsetSessionArray"]=array();
|
|
|
45 |
#$conf["recaptcha_url"],字串,有內容代表要檢查有無透過recaptcha於特定頁面網址認證過.
|
|
|
46 |
#$conf["recaptcha_url"]="";
|
|
|
47 |
#參考資料來源:
|
|
|
48 |
#foreach 的用法 -> http://php.net/manual/en/control-structures.foreach.php
|
|
|
49 |
#伺服器端的變數 -> http://php.net/manual/en/reserved.variables.server.php
|
|
|
50 |
#備註:
|
|
|
51 |
#表單變數的名稱若含有「.」,則會變成「-」。
|
|
|
52 |
$responseMultiInputDataSecurityEnhance=form::responseMultiInputDataSecurityEnhance($conf);
|
|
|
53 |
unset($conf);
|
|
|
54 |
|
|
|
55 |
#如果表單接收失敗
|
|
|
56 |
if($responseMultiInputDataSecurityEnhance["status"]==="false"){
|
|
|
57 |
|
|
|
58 |
#印出結果
|
|
|
59 |
var_dump($responseMultiInputDataSecurityEnhance);
|
|
|
60 |
|
|
|
61 |
#結束執行
|
|
|
62 |
exit;
|
|
|
63 |
|
|
|
64 |
}#if end
|
|
|
65 |
|
|
|
66 |
#如果表單驗證失敗
|
|
|
67 |
if($responseMultiInputDataSecurityEnhance["status"]==="false"){
|
|
|
68 |
|
|
|
69 |
#印出結果
|
|
|
70 |
var_dump($responseMultiInputDataSecurityEnhance);
|
|
|
71 |
|
|
|
72 |
#結束執行
|
|
|
73 |
exit;
|
|
|
74 |
|
|
|
75 |
}#if end
|
|
|
76 |
|
|
|
77 |
#接收變數
|
|
|
78 |
$pageNumber=$responseMultiInputDataSecurityEnhance["inputDataContent"]["pageNumber"];
|
|
|
79 |
|
|
|
80 |
#判斷頁碼
|
|
|
81 |
switch($pageNumber){
|
|
|
82 |
|
|
|
83 |
#如果是第一頁
|
|
|
84 |
case "1":
|
|
|
85 |
|
|
|
86 |
#初始化要印出的回應
|
|
|
87 |
$res=array();
|
|
|
88 |
|
|
|
89 |
#建立metaData
|
|
|
90 |
$meta=array();
|
|
|
91 |
$meta["pageNumber"]="1";
|
|
|
92 |
$meta["currentNumber"]="10";
|
|
|
93 |
$meta["numberPerPage"]="10";
|
|
|
94 |
$meta["total"]="28";
|
|
|
95 |
$res["meta"]=$meta;
|
|
|
96 |
|
|
|
97 |
#建立第一頁的資料
|
|
|
98 |
$data=array();
|
|
|
99 |
$data[]=array("1","1a","1aa","1aaa","1aaaa","1aaaaa","1aaaaaa");
|
|
|
100 |
$data[]=array("2","2b","2bb","2bbb","2bbbb","2bbbbb","2bbbbbb");
|
|
|
101 |
$data[]=array("3","3c","3cc","3ccc","3cccc","3ccccc","3cccccc");
|
|
|
102 |
$data[]=array("4","4c","4cc","4ccc","4cccc","4ccccc","4cccccc");
|
|
|
103 |
$data[]=array("5","5c","5cc","5ccc","5cccc","5ccccc","5cccccc");
|
|
|
104 |
$data[]=array("6","6c","6cc","6ccc","6cccc","6ccccc","6cccccc");
|
|
|
105 |
$data[]=array("7","7c","7cc","7ccc","7cccc","7ccccc","7cccccc");
|
|
|
106 |
$data[]=array("8","8c","8cc","8ccc","8cccc","8ccccc","8cccccc");
|
|
|
107 |
$data[]=array("9","9c","9cc","9ccc","9cccc","9ccccc","9cccccc");
|
|
|
108 |
$data[]=array("10","10c","10cc","10ccc","10cccc","10ccccc","10cccccc");
|
|
|
109 |
$res["data"]=$data;
|
|
|
110 |
|
|
|
111 |
#印出結果
|
|
|
112 |
echo json_encode($res);
|
|
|
113 |
exit;
|
|
|
114 |
|
|
|
115 |
break;
|
|
|
116 |
|
|
|
117 |
#如果是第二頁
|
|
|
118 |
case "2":
|
|
|
119 |
|
|
|
120 |
#初始化要印出的回應
|
|
|
121 |
$res=array();
|
|
|
122 |
|
|
|
123 |
#建立metaData
|
|
|
124 |
$meta=array();
|
|
|
125 |
$meta["pageNumber"]="2";
|
|
|
126 |
$meta["currentNumber"]="10";
|
|
|
127 |
$meta["numberPerPage"]="10";
|
|
|
128 |
$meta["total"]="28";
|
|
|
129 |
$res["meta"]=$meta;
|
|
|
130 |
|
|
|
131 |
#建立第一頁的資料
|
|
|
132 |
$data=array();
|
|
|
133 |
$data[]=array("11","1a","1aa","1aaa","1aaaa","1aaaaa","1aaaaaa");
|
|
|
134 |
$data[]=array("12","2b","2bb","2bbb","2bbbb","2bbbbb","2bbbbbb");
|
|
|
135 |
$data[]=array("13","3c","3cc","3ccc","3cccc","3ccccc","3cccccc");
|
|
|
136 |
$data[]=array("14","4c","4cc","4ccc","4cccc","4ccccc","4cccccc");
|
|
|
137 |
$data[]=array("15","5c","5cc","5ccc","5cccc","5ccccc","5cccccc");
|
|
|
138 |
$data[]=array("16","6c","6cc","6ccc","6cccc","6ccccc","6cccccc");
|
|
|
139 |
$data[]=array("17","7c","7cc","7ccc","7cccc","7ccccc","7cccccc");
|
|
|
140 |
$data[]=array("18","8c","8cc","8ccc","8cccc","8ccccc","8cccccc");
|
|
|
141 |
$data[]=array("19","9c","9cc","9ccc","9cccc","9ccccc","9cccccc");
|
|
|
142 |
$data[]=array("20","10c","10cc","10ccc","10cccc","10ccccc","10cccccc");
|
|
|
143 |
$res["data"]=$data;
|
|
|
144 |
|
|
|
145 |
#印出結果
|
|
|
146 |
echo json_encode($res);
|
|
|
147 |
exit;
|
|
|
148 |
|
|
|
149 |
break;
|
|
|
150 |
|
|
|
151 |
#如果是第三頁
|
|
|
152 |
case "3":
|
|
|
153 |
|
|
|
154 |
#初始化要印出的回應
|
|
|
155 |
$res=array();
|
|
|
156 |
|
|
|
157 |
#建立metaData
|
|
|
158 |
$meta=array();
|
|
|
159 |
$meta["pageNumber"]="3";
|
|
|
160 |
$meta["currentNumber"]="8";
|
|
|
161 |
$meta["numberPerPage"]="10";
|
|
|
162 |
$meta["total"]="28";
|
|
|
163 |
$res["meta"]=$meta;
|
|
|
164 |
|
|
|
165 |
#建立第一頁的資料
|
|
|
166 |
$data=array();
|
|
|
167 |
$data[]=array("21","1a","1aa","1aaa","1aaaa","1aaaaa","1aaaaaa");
|
|
|
168 |
$data[]=array("22","2b","2bb","2bbb","2bbbb","2bbbbb","2bbbbbb");
|
|
|
169 |
$data[]=array("23","3c","3cc","3ccc","3cccc","3ccccc","3cccccc");
|
|
|
170 |
$data[]=array("24","4c","4cc","4ccc","4cccc","4ccccc","4cccccc");
|
|
|
171 |
$data[]=array("25","5c","5cc","5ccc","5cccc","5ccccc","5cccccc");
|
|
|
172 |
$data[]=array("26","6c","6cc","6ccc","6cccc","6ccccc","6cccccc");
|
|
|
173 |
$data[]=array("27","7c","7cc","7ccc","7cccc","7ccccc","7cccccc");
|
|
|
174 |
$data[]=array("28","8c","8cc","8ccc","8cccc","8ccccc","8cccccc");
|
|
|
175 |
$res["data"]=$data;
|
|
|
176 |
|
|
|
177 |
#印出結果
|
|
|
178 |
echo json_encode($res);
|
|
|
179 |
exit;
|
|
|
180 |
|
|
|
181 |
break;
|
|
|
182 |
|
|
|
183 |
#其他頁碼
|
|
|
184 |
default:
|
|
|
185 |
|
|
|
186 |
#如果頁碼大於3
|
|
|
187 |
if($pageNumber>3){
|
|
|
188 |
|
|
|
189 |
#初始化要印出的回應
|
|
|
190 |
$res=array();
|
|
|
191 |
|
|
|
192 |
#建立metaData
|
|
|
193 |
$meta=array();
|
|
|
194 |
$meta["pageNumber"]="3";
|
|
|
195 |
$meta["currentNumber"]="8";
|
|
|
196 |
$meta["numberPerPage"]="10";
|
|
|
197 |
$meta["total"]="28";
|
|
|
198 |
$res["meta"]=$meta;
|
|
|
199 |
|
|
|
200 |
#建立第一頁的資料
|
|
|
201 |
$data=array();
|
|
|
202 |
$data[]=array("21","1a","1aa","1aaa","1aaaa","1aaaaa","1aaaaaa");
|
|
|
203 |
$data[]=array("22","2b","2bb","2bbb","2bbbb","2bbbbb","2bbbbbb");
|
|
|
204 |
$data[]=array("23","3c","3cc","3ccc","3cccc","3ccccc","3cccccc");
|
|
|
205 |
$data[]=array("24","4c","4cc","4ccc","4cccc","4ccccc","4cccccc");
|
|
|
206 |
$data[]=array("25","5c","5cc","5ccc","5cccc","5ccccc","5cccccc");
|
|
|
207 |
$data[]=array("26","6c","6cc","6ccc","6cccc","6ccccc","6cccccc");
|
|
|
208 |
$data[]=array("27","7c","7cc","7ccc","7cccc","7ccccc","7cccccc");
|
|
|
209 |
$data[]=array("28","8c","8cc","8ccc","8cccc","8ccccc","8cccccc");
|
|
|
210 |
$res["data"]=$data;
|
|
|
211 |
|
|
|
212 |
#印出結果
|
|
|
213 |
echo json_encode($res);
|
|
|
214 |
exit;
|
|
|
215 |
|
|
|
216 |
break;
|
|
|
217 |
|
|
|
218 |
}#if end
|
|
|
219 |
|
|
|
220 |
#初始化要印出的回應
|
|
|
221 |
$res=array();
|
|
|
222 |
|
|
|
223 |
#建立metaData
|
|
|
224 |
$meta=array();
|
|
|
225 |
$meta["pageNumber"]="1";
|
|
|
226 |
$meta["currentNumber"]="10";
|
|
|
227 |
$meta["numberPerPage"]="10";
|
|
|
228 |
$meta["total"]="28";
|
|
|
229 |
$res["meta"]=$meta;
|
|
|
230 |
|
|
|
231 |
#建立第一頁的資料
|
|
|
232 |
$data=array();
|
|
|
233 |
$data[]=array("1","1a","1aa","1aaa","1aaaa","1aaaaa","1aaaaaa");
|
|
|
234 |
$data[]=array("2","2b","2bb","2bbb","2bbbb","2bbbbb","2bbbbbb");
|
|
|
235 |
$data[]=array("3","3c","3cc","3ccc","3cccc","3ccccc","3cccccc");
|
|
|
236 |
$data[]=array("4","4c","4cc","4ccc","4cccc","4ccccc","4cccccc");
|
|
|
237 |
$data[]=array("5","5c","5cc","5ccc","5cccc","5ccccc","5cccccc");
|
|
|
238 |
$data[]=array("6","6c","6cc","6ccc","6cccc","6ccccc","6cccccc");
|
|
|
239 |
$data[]=array("7","7c","7cc","7ccc","7cccc","7ccccc","7cccccc");
|
|
|
240 |
$data[]=array("8","8c","8cc","8ccc","8cccc","8ccccc","8cccccc");
|
|
|
241 |
$data[]=array("9","9c","9cc","9ccc","9cccc","9ccccc","9cccccc");
|
|
|
242 |
$data[]=array("10","10c","10cc","10ccc","10cccc","10ccccc","10cccccc");
|
|
|
243 |
$res["data"]=$data;
|
|
|
244 |
|
|
|
245 |
#印出結果
|
|
|
246 |
echo json_encode($res);
|
|
|
247 |
exit;
|
|
|
248 |
|
|
|
249 |
break;
|
|
|
250 |
|
|
|
251 |
}#switch end
|
|
|
252 |
|
|
|
253 |
?>
|