郝佳晶
(山西職業(yè)技術(shù)學(xué)院,山西 太原 030006)
隨著數(shù)字化校園建設(shè)的快速推進(jìn),當(dāng)前各高校的學(xué)籍管理工作普遍實(shí)現(xiàn)了信息化與網(wǎng)絡(luò)化運(yùn)行,學(xué)籍信息化管理軟件的應(yīng)用,為高校提供了強(qiáng)大的數(shù)據(jù)存儲(chǔ)、管理與數(shù)據(jù)挖掘分析服務(wù),為學(xué)籍管理工作提供了便利[1]。但在具體運(yùn)行過程中,對(duì)于學(xué)籍信息的檢索與校驗(yàn)操作,當(dāng)前的學(xué)籍信息化管理軟件均采用人工輸入檢索鍵值“例如:學(xué)號(hào)、身份證號(hào)碼”的方式完成。在該操作模式下,存在著手工錄入緩慢、易出錯(cuò)的問題,尤其是在需要連續(xù)處理大量信息的工作場(chǎng)景下,用戶更加容易疲勞和出現(xiàn)輸入失誤,導(dǎo)致錄入速度和系統(tǒng)運(yùn)行速度無法匹配,造成工作效率急劇下降。針對(duì)該問題,本文設(shè)計(jì)了基于二維碼圖片的數(shù)據(jù)檢索方案,基于學(xué)籍庫(kù)中的基本信息為每一個(gè)學(xué)生構(gòu)建學(xué)籍二維碼,在學(xué)籍信息檢索與校驗(yàn)的過程中采用二維碼掃碼器設(shè)備即可自動(dòng)完成信息的錄入與檢索操作。
二維碼技術(shù)在數(shù)字化學(xué)籍管理中的應(yīng)用原理如圖1所示,二維碼圖片中的數(shù)據(jù)內(nèi)容基于學(xué)籍基本信息構(gòu)建,同時(shí)還包含了用于在學(xué)籍?dāng)?shù)據(jù)庫(kù)中檢索的鍵值。數(shù)字化學(xué)籍管理系統(tǒng)在工作中根據(jù)不同的功能需求,從二維碼圖片中提取信息,并在學(xué)籍?dāng)?shù)據(jù)庫(kù)中檢索相關(guān)數(shù)據(jù)。
圖1 二維碼技術(shù)在數(shù)字化學(xué)籍管理中的應(yīng)用原理圖
在構(gòu)建二維碼圖片的過程中,需要先將數(shù)據(jù)通過PHP提供的json_encode()函數(shù)封裝為Json格式,再使用PHP- qrcode類庫(kù)提供的QRcode::png()函數(shù)將Json字符串轉(zhuǎn)換為二維碼信息并保存為圖片文件[2]。
在通過學(xué)籍管理系統(tǒng)檢索諸如學(xué)生體檢數(shù)據(jù)、考試成績(jī)等關(guān)聯(lián)信息時(shí),系統(tǒng)從二維碼中提取該學(xué)生的數(shù)據(jù)庫(kù)檢索鍵值,并基于該鍵值構(gòu)建多表查詢命令,從數(shù)據(jù)庫(kù)中獲取相關(guān)數(shù)據(jù)呈現(xiàn)給用戶。在具體應(yīng)用過程中,首先通過掃碼器設(shè)備讀取二維碼圖片中的Json字符串,再使用json_decode()函數(shù)將Json字符串轉(zhuǎn)換為PHP數(shù)組后通過關(guān)鍵字讀取數(shù)據(jù)內(nèi)容。而從數(shù)據(jù)庫(kù)中檢索數(shù)據(jù)的操作則基于PHP提供的mysql_pconnect()和mysql_query()函數(shù)完成。
學(xué)籍?dāng)?shù)據(jù)校驗(yàn)功能中,需要向用戶提供學(xué)生的學(xué)籍描述與數(shù)字照片信息,對(duì)于存儲(chǔ)著海量學(xué)籍信息的數(shù)據(jù)庫(kù),發(fā)起數(shù)據(jù)檢索操作會(huì)消耗較多的時(shí)間和系統(tǒng)資源,導(dǎo)致學(xué)籍管理系統(tǒng)的響應(yīng)速度下降。因此,有必要對(duì)圖文混合檢索機(jī)制進(jìn)行優(yōu)化,盡量減少數(shù)據(jù)檢索的次數(shù)和復(fù)雜度。本文所設(shè)計(jì)的數(shù)據(jù)校驗(yàn)方案中,學(xué)籍文本描述信息從二維碼中獲取,系統(tǒng)僅根據(jù)檢索鍵值從數(shù)據(jù)庫(kù)中調(diào)取該學(xué)生的圖片數(shù)據(jù),二者組合成完整的學(xué)籍校驗(yàn)信息并呈現(xiàn)給用戶,可以有效降低信息檢索的復(fù)雜度和傳輸?shù)臄?shù)據(jù)量、提升了系統(tǒng)響應(yīng)速度。
$data =array(' Id ' =>' 檢索鍵值','content'=>' 學(xué)籍基本信息' ); //基于學(xué)籍信息與檢索鍵值創(chuàng)建數(shù)組
$info = json_encode($data); //將信息封裝為Json格式
$values = $info; //設(shè)置二維碼內(nèi)容
$errorCorrectionLevel = ' H'; //設(shè)置二維碼容錯(cuò)級(jí)別
$matrixPointSize = 20; //設(shè)置生成圖片文件大小
$picaddr=' 文件存儲(chǔ)路徑'; //設(shè)置文件保存路徑,路徑中應(yīng)包含圖片后綴名png
QRcode::png($values, $ picaddr, $errorCorrectionLevel, $matrixPointSize, 2); //創(chuàng)建二維碼圖片
$json=$_POST[' 前端控件名稱']; //獲取由前端控件傳遞的Json字符串
$data=json_decode($json, true); //將Json格式的數(shù)據(jù)轉(zhuǎn)換為數(shù)組
echo $data[' Id ']; //提取檢索鍵值
echo $data[' content']; //提取學(xué)籍信息
需要注意的是,對(duì)于從前端控件獲取Json字符串的實(shí)現(xiàn)過程,是通過在前端頁面上設(shè)置控件焦點(diǎn)的方式實(shí)現(xiàn)的,檢索頁面的默認(rèn)焦點(diǎn)應(yīng)綁定在檢索文本框控件上,二維碼掃碼器在完成圖片信息讀取操作后,會(huì)自動(dòng)將信息填入檢索文本框控件中并同時(shí)發(fā)起一個(gè)模擬鍵盤操作‘Enter’,前端頁面的數(shù)據(jù)提交則需要基于Form表單的POST方式完成,在該模式下,頁面在收到掃碼器發(fā)起的‘Enter’操作后,會(huì)立即將檢索文本框控件中的信息提交至后端PHP程序中進(jìn)行處理。
本文通過構(gòu)建學(xué)籍信息二維碼的方式,對(duì)學(xué)籍檔案的數(shù)字化管理中學(xué)籍信息檢索與校對(duì)功能進(jìn)行了優(yōu)化,改進(jìn)了學(xué)籍信息管理系統(tǒng)的操作模式。在使學(xué)籍信息管理人員能夠使用二維碼掃碼器設(shè)備以更加便捷高效的方式完成信息檢索和校對(duì)工作的同時(shí),有效提升了系統(tǒng)運(yùn)行效率和響應(yīng)速度。同時(shí)也為數(shù)字化校園的項(xiàng)目建設(shè)與功能完善提供了有效的技術(shù)參考。