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("../../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
?>