Rev 911 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
<?php#宣告指派命名空間namespace qbpwcf;#匯入外部套件include("../../allInOneForJson.php");#接受POST變數#涵式說明:#可以處理多個透過GET、POST而來的資訊,儲存成變數,同時限定傳送的方法、來源,來增加安全性,檢查有沒有皆收到必須要接收到的變數,沒有接收到的變數可以指定從session變數中取得.#回傳的結果:#$result["status"],執行正常與否,"true"代表正常,"false"代表不正常.#$result["error"],錯誤訊息陣列.#$resutl["function"],當前執行的涵式名稱.#$result["warning"],警告訊息陣列.#$result["passed"],是否有皆收到全部該接收到的變數,若有設定$conf["checkedVarName"]的話,執行正常後會回傳該結果。#$result["lostVarName"],沒有皆收到的變數名稱陣列#$result["inputDataContent"],所接收的參數陣列.#$result["inputDataContent"]["變數名稱"],所接收變數的內容.#$result["inputDataCount"],從表單總共接收到幾個元素.#$result["HTTP_REFERER"],前一頁的網址,null代表不存在.#必填的參數:#$conf["method"],字串,傳送過來的資料是用"post/POST"還是"get/GET"?$conf["method"]="POST";#可省略的參數:#$conf["allowGet"],字串,是否要允許 get 傳值,"true",代表允許;"false" ,代表不允許,預設爲不允許.#$conf["allowGet"]="true";#$conf["limitPrePage"],字串陣列,是否要限定前一頁的網址為哪些,才能接收內容,不符合則轉址.$conf["limitPrePage"]=array("tableT.php");#$conf["transferLocation"],字串,遇到get傳值,或前一個頁面不符合要求時要轉址到的頁面,預設爲資安素養網"https://isafe.moe.edu.tw/"#$conf["transferLocation"]="";#$conf["ignore"]=字串陣列,如果要接收的變數名稱與該陣列其一元素一樣,則不放進要回傳的變數裏面.#$conf["ignore"]=array();#$conf["correctCharacter"]=,字串,如果爲"false",則不處理可能導致網頁出問題的字串,預設爲要進行處理.#$conf["correctCharacter"]="false";#$conf["checkedVarName"],字串陣列,為檢查是否有接收到哪些變數.$conf["checkedVarName"]=array("pageNumber");#$conf["canBeEmptyString"],字串,用$conf["checkedVarName"]指定接收的變數名稱陣列,若接收到的內容為空字串是否算有接收到內容,預設為"false","true"代表接收到的內容可以為空字串,"false"代表接收到的內容不可以為空字串.#$conf["canBeEmptyString"]="false";#$conf["sessionNameArray"],陣列,若存在則代表若沒有從表單取得變數,則從session變數中取得內容,每個元素代表每個表單變數對應的session名稱,若不是要改用session方式取得變數內容的變數,請輸入null,數量請跟$conf["checkedVarName"]參數一致.#$conf["sessionNameArray"]=array();#$conf["unsetSessionArray"],陣列,與$conf["sessionNameArray"]對應的元素,是否要接收到變數後就卸除,"true"代表要卸除,"false"代表不要卸除.#$conf["unsetSessionArray"]=array();#$conf["recaptcha_url"],字串,有內容代表要檢查有無透過recaptcha於特定頁面網址認證過.#$conf["recaptcha_url"]="";#參考資料來源:#foreach 的用法 -> http://php.net/manual/en/control-structures.foreach.php#伺服器端的變數 -> http://php.net/manual/en/reserved.variables.server.php#備註:#表單變數的名稱若含有「.」,則會變成「-」。$responseMultiInputDataSecurityEnhance=form::responseMultiInputDataSecurityEnhance($conf);unset($conf);#如果表單接收失敗if($responseMultiInputDataSecurityEnhance["status"]==="false"){#印出結果var_dump($responseMultiInputDataSecurityEnhance);#結束執行exit;}#if end#如果表單驗證失敗if($responseMultiInputDataSecurityEnhance["status"]==="false"){#印出結果var_dump($responseMultiInputDataSecurityEnhance);#結束執行exit;}#if end#接收變數$pageNumber=$responseMultiInputDataSecurityEnhance["inputDataContent"]["pageNumber"];#判斷頁碼switch($pageNumber){#如果是第一頁case "1":#初始化要印出的回應$res=array();#建立metaData$meta=array();$meta["pageNumber"]="1";$meta["currentNumber"]="10";$meta["numberPerPage"]="10";$meta["total"]="28";$res["meta"]=$meta;#建立第一頁的資料$data=array();$data[]=array("1","1a","1aa","1aaa","1aaaa","1aaaaa","1aaaaaa");$data[]=array("2","2b","2bb","2bbb","2bbbb","2bbbbb","2bbbbbb");$data[]=array("3","3c","3cc","3ccc","3cccc","3ccccc","3cccccc");$data[]=array("4","4c","4cc","4ccc","4cccc","4ccccc","4cccccc");$data[]=array("5","5c","5cc","5ccc","5cccc","5ccccc","5cccccc");$data[]=array("6","6c","6cc","6ccc","6cccc","6ccccc","6cccccc");$data[]=array("7","7c","7cc","7ccc","7cccc","7ccccc","7cccccc");$data[]=array("8","8c","8cc","8ccc","8cccc","8ccccc","8cccccc");$data[]=array("9","9c","9cc","9ccc","9cccc","9ccccc","9cccccc");$data[]=array("10","10c","10cc","10ccc","10cccc","10ccccc","10cccccc");$res["data"]=$data;#印出結果echo json_encode($res);exit;break;#如果是第二頁case "2":#初始化要印出的回應$res=array();#建立metaData$meta=array();$meta["pageNumber"]="2";$meta["currentNumber"]="10";$meta["numberPerPage"]="10";$meta["total"]="28";$res["meta"]=$meta;#建立第一頁的資料$data=array();$data[]=array("11","1a","1aa","1aaa","1aaaa","1aaaaa","1aaaaaa");$data[]=array("12","2b","2bb","2bbb","2bbbb","2bbbbb","2bbbbbb");$data[]=array("13","3c","3cc","3ccc","3cccc","3ccccc","3cccccc");$data[]=array("14","4c","4cc","4ccc","4cccc","4ccccc","4cccccc");$data[]=array("15","5c","5cc","5ccc","5cccc","5ccccc","5cccccc");$data[]=array("16","6c","6cc","6ccc","6cccc","6ccccc","6cccccc");$data[]=array("17","7c","7cc","7ccc","7cccc","7ccccc","7cccccc");$data[]=array("18","8c","8cc","8ccc","8cccc","8ccccc","8cccccc");$data[]=array("19","9c","9cc","9ccc","9cccc","9ccccc","9cccccc");$data[]=array("20","10c","10cc","10ccc","10cccc","10ccccc","10cccccc");$res["data"]=$data;#印出結果echo json_encode($res);exit;break;#如果是第三頁case "3":#初始化要印出的回應$res=array();#建立metaData$meta=array();$meta["pageNumber"]="3";$meta["currentNumber"]="8";$meta["numberPerPage"]="10";$meta["total"]="28";$res["meta"]=$meta;#建立第一頁的資料$data=array();$data[]=array("21","1a","1aa","1aaa","1aaaa","1aaaaa","1aaaaaa");$data[]=array("22","2b","2bb","2bbb","2bbbb","2bbbbb","2bbbbbb");$data[]=array("23","3c","3cc","3ccc","3cccc","3ccccc","3cccccc");$data[]=array("24","4c","4cc","4ccc","4cccc","4ccccc","4cccccc");$data[]=array("25","5c","5cc","5ccc","5cccc","5ccccc","5cccccc");$data[]=array("26","6c","6cc","6ccc","6cccc","6ccccc","6cccccc");$data[]=array("27","7c","7cc","7ccc","7cccc","7ccccc","7cccccc");$data[]=array("28","8c","8cc","8ccc","8cccc","8ccccc","8cccccc");$res["data"]=$data;#印出結果echo json_encode($res);exit;break;#其他頁碼default:#如果頁碼大於3if($pageNumber>3){#初始化要印出的回應$res=array();#建立metaData$meta=array();$meta["pageNumber"]="3";$meta["currentNumber"]="8";$meta["numberPerPage"]="10";$meta["total"]="28";$res["meta"]=$meta;#建立第一頁的資料$data=array();$data[]=array("21","1a","1aa","1aaa","1aaaa","1aaaaa","1aaaaaa");$data[]=array("22","2b","2bb","2bbb","2bbbb","2bbbbb","2bbbbbb");$data[]=array("23","3c","3cc","3ccc","3cccc","3ccccc","3cccccc");$data[]=array("24","4c","4cc","4ccc","4cccc","4ccccc","4cccccc");$data[]=array("25","5c","5cc","5ccc","5cccc","5ccccc","5cccccc");$data[]=array("26","6c","6cc","6ccc","6cccc","6ccccc","6cccccc");$data[]=array("27","7c","7cc","7ccc","7cccc","7ccccc","7cccccc");$data[]=array("28","8c","8cc","8ccc","8cccc","8ccccc","8cccccc");$res["data"]=$data;#印出結果echo json_encode($res);exit;break;}#if end#初始化要印出的回應$res=array();#建立metaData$meta=array();$meta["pageNumber"]="1";$meta["currentNumber"]="10";$meta["numberPerPage"]="10";$meta["total"]="28";$res["meta"]=$meta;#建立第一頁的資料$data=array();$data[]=array("1","1a","1aa","1aaa","1aaaa","1aaaaa","1aaaaaa");$data[]=array("2","2b","2bb","2bbb","2bbbb","2bbbbb","2bbbbbb");$data[]=array("3","3c","3cc","3ccc","3cccc","3ccccc","3cccccc");$data[]=array("4","4c","4cc","4ccc","4cccc","4ccccc","4cccccc");$data[]=array("5","5c","5cc","5ccc","5cccc","5ccccc","5cccccc");$data[]=array("6","6c","6cc","6ccc","6cccc","6ccccc","6cccccc");$data[]=array("7","7c","7cc","7ccc","7cccc","7ccccc","7cccccc");$data[]=array("8","8c","8cc","8ccc","8cccc","8ccccc","8cccccc");$data[]=array("9","9c","9cc","9ccc","9cccc","9ccccc","9cccccc");$data[]=array("10","10c","10cc","10ccc","10cccc","10ccccc","10cccccc");$res["data"]=$data;#印出結果echo json_encode($res);exit;break;}#switch end?>