線上簽到系統-2

線上點名系統-2

試算表名稱:線上點名系統-2

結果以Alter視窗顯示


你是一位教師,想要使用Google試算表完成一個線上簽到系統。


Google試算表,ID: 線上點名系統-2試算表ID,內有兩個工作表,分別是工作表1與工作表2。

工作表1結構如下:

1.第一列是標題列。

2.欄A:班級,欄B:座號,欄C:姓名,欄D:學號,欄E:核取方塊。


工作表2結構如下:

1.第一列是標題列。

2.欄A:簽到日期,欄B:簽到時間,欄C:姓名,欄D:學號。


線上簽到系統功能

1.於GAS的「檔案」>「HTML」新增一個index.html網頁表單,網頁標題「學生線上簽到系統」,輸入學生學號(6碼),可輸入學生學號(6碼)當作簽到。

2.透過「學號」尋找Google試算表的相對學號。

3.找到學號則簽到成功,找不到則簽到未成功。

4.簽到成功:核取方塊打勾,回傳姓名給html。並且將簽到日期、時間、姓名、學號,依序寫入工作表2。

5.簽到未成功:回傳查無此學號。

6.將GAS程式碼打包成網頁應用程式。


請詳細解說撰寫步驟。

程式流程

index.html

方法1: 

google.script.run.withSuccessHandler(function(GAS回傳值){

document.getElementById('段落p的id顯示回傳結果').textContent = GAS回傳參數;

}).GAS函數;

方法2:  處理函數獨立

google.script.run.withSuccessHandler(functionName).GAS函數;

function functionName(GAS回傳){

document.getElementById('段落p的id顯示回傳結果').textContent = GAS回傳參數;

}

程式碼.gs

function doGet() {

  return HtmlService.createHtmlOutputFromFile('index'); //執行完畢返回index.html

}

function processForm(formData) {

  略。。。

  if (studentRow !== -1) {

    。。。

    return '簽到成功!姓名:' + studentName;

  } else {

    return '查無此學號!';

  }

}

由被index.html所呼叫的processForm,以return方式回傳結果文字。