檢視 LiteSite/signup 的原始碼
←
LiteSite/signup
跳轉到:
導覽
、
搜尋
根據以下的原因,您並無權限去做編輯這個頁面:
您剛才的請求只有這個使用者組的使用者才能使用:
使用者
你可以檢視並複製本頁面的原始碼。
[[分類:LiteSite]] 用於調查、報名、連署 ===○、版本=== #2020.4:「學前教育公共化」研討會(signupDoings) #2020.6:「不錯學群」招生說明會(signupDoings) #2020.7:「不錯學群」新生面談預約(signupDoings2) #2020.10:海星共識營(signupDoings) #2021.1:跨校選修學習需求調查(/AL/signupDoings) #2021.3:「自主學習輔導平台建構」選主題分享(signupDoings) #2021.8:「海星的回顧與修改」(/EM/signupDoings/thisDoing.php) #2021.10:自帶培籌備活動3報名(/EMEP/ALPartner/signupDoings/thisDoing.php) #2022.1:自帶培自荐(/EMEP/ALPartner/selfRecommend/signupDoings) #2022.1:「自主學習三日譚」註冊(/EMEP/20220124/signupDoings/thisDoing.php) #2022.2:「動手學科學」招募實習生(/s4e/signupDoings/thisDoing.php) #2022.3:均優2022議程人員自填資料(/2022/signupDoings/thisDoing.php) #2022.4:振鐸40週年籌備茶會(/jendo/40years/signupDoings/thisDoing.php) #2022.8:輔導平台(/jendo/counseling2/signupDoings/ 未完成) #2022.11:「開門辦教育落花生」報名(/EMEP/peanut/signupDoings/thisDoing.php) #2023.1:「光譜平台」(720+/spectrum/signupDoings) #2023.5:「教育再公共化聯盟」成立紀者會報名(/ggp/signupDoings) #2023.11:「發展教育社群」報名(/ggp/OSJA/signupDoings) #2024.3:「三社群四組課」報名(/ggp/course) #2024.6:「三社群四組課」報名(/AL/signup),引入 signupBase.php,thisDoing.php ===一、檔案清單=== ====(一)程式列表==== signupCommon.php 各活動通用設定檔,各系統不同點主要是前置字和郵寄伺服器 signupBase.php 指定資料表 thisDoing.php 當前活動設定檔 signup.php 首次報名 signupE.php 修改報名資料,即依帳號選擇並維護個人資料 signupE.php?buttonWord=按鈕字樣&name=誰&thisDoing=活動設定檔&thisBase=指定資料表 signupPerson.php 管理者看報名者一覽表 signupPersonR.php 公眾看報名者一覽表 signupComment.php 報名者意見留言,依不同的 siteGrp ,調整常數prefix,Doings,變數$ET->formType['commentCategory'] participantNotice.php 寄行前通知 showIntroduction.php 秀簡介 活動管理.php 問卷結果.php 廣宣清單.php ====(二)近期使用==== #海星共識營報名:/EM/signupDoings #跨校選修學習需求調查:/NL/signupDoings #不錯學群報名及面談登記:/NL/signupDoings、signupDoings2 #學前教育公共化研討會報名 #部分班級實驗教育客廳會報名 ===二、signupCommon.php=== ====(○)1~4表,兩配置檔==== 連結資料庫: #靠 theme.php 連結資料庫 #如果要使用預設資料庫之外的資料庫,才下「DB::connect("mysql://…"); 四資料表: #$tbl:人員資料表 #$tbll:關係資料表 #$tbll."KeyValue":相依於 $lKeyValue 陣列(在 thisDoing.php 中設定),為每活動每報名者的問巻題目答案 #$tblo:關係資料表所連的另一主體資料表 兩配置檔 #基本配置檔:預設名 signupBase.php ,可由 $_REQUEST['thisBase'] 指定 #活動配置檔:預設名 thisDoing.php ,可由 $_REQUEST['thisDoing'] 指定 ====(一)主程式==== #載入常數、布景直到連上資料庫 #載入資料表名稱、不使用欄、欄代名 #*有設 $_REQUEST['thisBase'] ,載入指定檔;否則載入 signupBase.php #*設定表名:$tbl=$prefix.'Signup'.$suffix; #*不使用欄:$dropField=array(…); #*欄代名:$alias=array('欄名'=>'提示',…); #安排欄屬性: #*須查欄:$fields=array('欄名'=>'提示',…);由資料表衍生 #*必填欄:$mustField=array('欄名',…); #*mail欄:$emailField=array('欄名'); #*預設值欄:$defaultField=array('欄名'=>'預設值',…); #設定欄的 formType #*是否欄:$radioyn=array('欄名',…); #*核取欄:$checkbox=array('欄名',…); #*隱藏欄:$hidden=array('欄名'=>'後送值',…); #*多值欄:$bitCheckbox=array('欄名'=>array(值=>提示,…)); #*多值欄:$spanCheckbox=array('欄名'=>array(值=>提示,…)); #認證欄與認證條件: #*$idField #*$psdField #*$郵址 #*$姓名 #*$idKey:辨識欄=輸入值 #*$idKeyE:辨識欄=輸入值 且 密碼欄=輸入值 #剖析三資料表 #*剖析關係資料表($tbll)諸欄 #*剖析另一主體資料表($tblo)諸欄 #*載入本次報名的手動參數,判斷有無設定 $_REQUEST['thisDoing'] ,若有載入指定檔案,沒有就載入預設的thisDoing.php #*剖析人員資料表($tbl)諸欄 #設定管制欄位 #*必填欄位 #*使用 Email 格式的欄位 #*使用預設值而不使用調查表問欄值的欄位 #*… #可套用選項:$options #*$options['職業屬性'] #*$options['city'] #*$options['device'] #*$options['OS'] #*$options['學校職務'] #*$options['rule'] #phpmailer 路徑 #設定提示字: #*$surveyTitle:整個調查、報名、連署的總名稱,如:跨校選修/「留下小孩唸書的錢,台灣才有翻身的希望」 #*$FromName:通知的寄信人,如:丁志仁 #*$mailHead:各項用\n間隔開,最後一項末尾也要加\n #*#Content-Type: text/html; charset=UTF-8 #*#Content-Transfer-Encoding: 8bit #*#From: 丁志仁 <admin@science4everyone.net> #*$surveyExplain:表單之上文字,如:/為求連署有效,請以真實姓名,真實 Email 連署。 #*$surveyShortTitle:signup的性質,如:選課/報名/調查/連署 #*$surveyQueryTitle:各問題之上的抬頭,如:可選課程一覽表:/我要連署 #*$surveySubmit:後送按鈕,如:選課/連署 #*$surveyContact:聯絡人,如:'系統聯絡人:<br/>林青高:0910100693 E-mail:inorganicom@gmail.com'; #*$signupPeriod:報名截止時間,如:mktime(13,55,59,10,29,2019) #*$expiredMsg:報名截止後提示,如:報名時間已過 #*$surveyR0Msg:報名成功頁面秀出文字,說明聯絡事宜。 #*$surveyR1Msg:已報名過頁面秀出之提示字 #*$surveyR2Msg:報名成功頁面秀出文字,說明 signup 已成功。 #*$surveyR3Msg:寄通知之主旨 #*$surveyR4Msg:寄通知之信文 #*$surveyR5Msg:寄通知之寄件者 #*$surveyE1Msg:驗證未通過之提示 #*$surveyER0Msg:說明聯絡事宜 #*$surveyER1Msg:修改成功頁面秀出文字 #*$surveyER2Msg:寄修改通知之主旨 #*$surveyER3Msg:寄修改通知之信文 #*$surveyER4Msg:驗證未過之提示 #*$n:通知計數上限,只能由此行改動,不准由 URL 輸入值 #*$surveyN1Msg:行前通知互動提示,如:沒有需要發通知的人。 #*$surveyN2Msg:行前通知主旨 #*$surveyN3Msg:行前通知信文 #調製調查問題 $surveyQuery=array() #$str #*javascript #*調查或報名相關說明 #*表單前半 #函式 basicInformation #函式 surveyQuery ====(二)$str==== =====①javascript===== #chkForm(): #*從必填欄中,檢查 email 及必填 #*檢查核取必填欄 #isEmail(待檢字串):檢查 #showHide(核取物件,顯隱物件ID):顯隱切換 =====②$surveyExplain===== =====③form===== #導向自己的程式名 #name=調查表 =====④表前半部===== #跨三欄 #$surveyShortTitle =====⑤表後半部===== ====(三)basicInformation($fields,$dropField,$mustField,$fieldValue=array(),$取消報名=0)==== 諸引數: #$fields #$dropField #$mustField #$fieldValue=array() #$取消報名=0 全域變數 #$str #$radioyn #$checkbox #$hidden #$options #$checkField #$alias 每一個$fields元素做一次,但排除用餐、住宿、交通、ip: #非隱藏欄須做提示,提示空字串不加「:」,必填欄加「*」 #$checkField做顯隱 #$checkbox後送1 #$bitCheckbox:1byte後送多值 #提示為「性別」做男女 radio #$radioyn做是否 radio #提示為「職業屬性、學校職務、行動裝置、作業系統、學生戶籍」套用選項,做 select #欄值為「city、role」套用選項,做 select #欄值為「idOfSchool」:即時追踪使用者輸入的字串,蒐索校名縮小範圍,選定之後送 sid #$hidden後送設定值 #其他做 input/text ====(四)surveyQuery($surveySubmit='修改',$fieldValue=array())==== 諸引數: #$surveySubmit='修改' #$fieldValue=array():各問題項的值,索引為問題項的 ID 全域變數 #$str #$surveyQueryTitle:問題項的總抬頭,可以是空字串 #$surveyShortTitle #$surveyQuery:問題項陣列 #$surveyQueryVchar #$surveyQueryCheckbox #$surveyDimensions:調查維度,0維沒有問題項;一維就一排問題項;二維問題項,問題有分類 #$categoryItem #$lField:關係資料表每一筆的待問設定 #*簡答:$lField['varchar']=array('欄名'=>'提示','欄名'=>'提示',…); #*核取:$lField['checkbox']=array('欄名'=>'提示','欄名'=>'提示',…); #$lKeyValue 每一個可以被選的問題項(如一門課)做一次: #選取問題項的核取方塊 #造出所有的 $lField['checkbox'] #造出所有的 $lField['varchar'],每一欄一行 #之後處理 $lKeyValue #*須要以下全域變數:$tbl,$tblKey,$idKey,$tbll,$tblKey,$tbloKey #*目前 'formType' 有: #*#text:填字 #*#textarea:多行填字 #*#checkbox:複選 ====(五)dispWeb($str,$html1,$html2)==== 如果非 ajax 加頁首頁尾,否則只回傳 $str ====(六)fields2sql($fields)==== 欄名指示轉為sql賦值子句 ====(七)可設定欄位型態==== :-----人員----- #預設: text #$radioyn=array('欄名1','欄名2'):其能選是、否的按鈕,分別後送 0,1 #$checkbox=array('欄名1','欄名2'):只有一個核取方塊,只能打勾或不打勾,分別後送 0,1 #$hidden=array('欄名'=>'值',…);對指定欄後送固定值 #$radio['欄名']=array(1=>'提示',2=>'提示',4=>'提示',8=>'提示',16=>'提示');:只能選一個的按鈕 #$bitCheckbox['欄名']=array(1=>'提示',2=>'提示',4=>'提示',8=>'提示',16=>'提示'); #$spanCheckbox['欄名']=array(1=>'議題1',2=>'議題2',3=>'議題3',4=>'議題4',5=>'議題5',6=>'議題6',7=>'議題7'); #$textarea['欄名']=true; #$options['選項陣列'] #$checkField:必填欄位<br/>-----關係資料表----- #$lField #*checkbox: 核取方塊 #*varchar: 文字填入<br/>-----可設定的 KeyValue 欄位型態----- #$lKeyValue #*text :文字填入 #*textarea :文字區塊填入 #*checkbox :核取方塊 ===三、signup.php=== ===四、signupE.php=== ====(一)共同前置處理==== #將 $_REQUEST['buttonWord'] 轉成常數「surveyQuerySubmit」,預設為「修改」。 #將傳入值全部化為變數。必須先於載入 signupCommon.php ,因 signupCommon.php 中的 $idKey 會用到這些變數。 #載入 signupCommon.php 。 #檢查是否已過了修改期限。 ====(二)若後送捕捉 keyin 值,還它一個相應選單==== ====(三)如果是後送認證表單,檢查認證資料表,通過後,送出問卷表單==== ====(四)如果是後送問卷表單,執行資料表更新操作==== :調用 fields2sql($fields) 去形成 sql 命令 ====(五)else,送出認證表單==== #如果 $idNotEmail 就取「姓名」 #若 $_REQUEST['thisDoing'] 就傳遞 thisDoing 檔名 #若 $_REQUEST['thisBase'] 就傳遞 thisBase 檔名
返回到
LiteSite/signup
。
導航
個人工具
登入
名字空間
頁面
討論
變換
檢視
閱讀
檢視原始碼
檢視歷史
動作
搜尋
導覽
首頁
近期變動
隨機頁面
使用說明
工具箱
連入頁面
相關頁面修訂記錄
特殊頁面
頁面資訊