摘 要:隨著高職院校單獨招生考試逐年放開,學生選擇的學校也越來越多,報名人數和實際參考的人數相差非常大。利用PHP編制程序來實現準考證號的動態(tài)的生成和從而完成準考證的制作和打印,大大解決了考務工作的安排的難度,節(jié)約了大量資源并提高的工作效率。
關鍵詞:PHPWord;準考證;自動打印
中圖分類號:TP39
近年來,在高等職業(yè)技術院校單獨招生正在如火如荼進行,由于單獨招生工作由各個職業(yè)技術學院組織進行,省招辦沒有統(tǒng)一組織,學生可以選擇多所學校報名,在資格審查的時候再確定去哪一所學校,這就造成報名的人數和實際參加考試的人數相差很大,這導致每個職業(yè)技術學院的考務安排異常困難,如何解決這一實際問題就是非常迫切。
1 項目需求
項目需求就是在學生報到時進行動態(tài)編制準考證,從而實現考室和座位號的安排,從而解決按照報名人數安排考室而造成了大量考室的缺考和資源浪費。
2 解決方法
單獨招生考試的面向的對象是普通高中學生和職業(yè)高中學生,他們所學的知識不完全相同,各個高職院校對學生的要求也不盡相同,考試科目也可能不同。在上午文化考試筆試時,將普通高中學生和職業(yè)高中分別安排,并按照學生報到的先后來安排座位號,從而實現準考證號的生成,完成學生準考證的制作。整個程序的流程如圖1所示。
圖1 程序流程圖
3 系統(tǒng)中主要角色設置
在整個系統(tǒng)中主要是完成準考證的制作,從而實現考室和座位號的安排。因此主要角色是管理員和負責考務的工作人員。
3.1 考務工作人員
考務工作人員主要負責學生的報到管理,準考證打印,準考證補打等。他們可操作的資源相對較少,考務工作人員的用例圖如圖2所示。
圖2 考務工作人員用例圖
3.2 管理員
管理員就是系統(tǒng)的最高權限擁有者,是整個單獨招生準考證自動打印程序的管理者,主要負責所有基礎信息的準備(包括考室信息的管理、考試科目的管理等),用戶的管理,權限的分配等。他可以操作系統(tǒng)中所有的資源,管理員的用例圖如圖3所示。
圖3 管理員用例圖
4 具體實現
單獨招生準考證自動打印程序使用PHP,數據庫采用MySQL數據庫,結合Smarty框架,再結合PHPWord庫文件完成整個制作。在設計權限時,采用基于角色控制策略的細粒度的功能權限管理。
4.1 準考證相關信息的生成
考務工作人員在點擊學生報到后,系統(tǒng)根據學生的類型和考室現場安排情況生成準考證號,準考證號的生成規(guī)則是年份+學生類型(普高為1,中職為0)+考室+座位號(座位號不足兩位的在前面補0)。
學生基本信息的獲取直接從報名表信息中查詢,并賦值給相關變量,以便PHPWord生成Word調用程序,部分代碼如下:
//將學生信息從數據庫查出,并賦值給相關變量
$sql=\"select * from tb_baoming where id=\".$sid;
$arrxsxx=$db->getrow($sql);
$bylb=$arrxsxx['bylb'];
$sfzjh=$arrxsxx['sfzjh'];
$xm=$arrxsxx['xm'];
$xb=$arrxsxx['xb'];
$zy1=$arrxsxx['zy1'];
而考室安排的原理是在可供安排的考室標注一個標志位,0為未排考室,1為已排滿考室,2為正在安排考室。
4.2 準考證的生成與打印
準考證的生成原理是首先制作利用Word制作準考證模板,然后將可變的地方分別命名定義,準考證部分截圖如圖4所示
圖4 Word模板部分
然后利用PHPWord庫文件來完成替換命名的方法完成學生準考證的制作,部分核心代碼如下:
$PHPWord = new PHPWord();
$document = $PHPWord->loadTemplate($zkzfile);
$document->setValue('sfzjh',$sfzjh);
$document->setValue('xm',$xm);
$document->setValue('xb',$xb);
$document->setValue('zkzh',$zkzh);
$document->setValue('zy1',$zy1);
$document->setValue('km1ks', $km1ks);
$document->setValue('km1zwh', $km1zwh);
$document->setValue('km2ks', $km2ks);
$document->setValue('km2zwh', $km2zwh);
$document->setValue('km2zwh2', $km2zwh2);
最后利用將生成的準考證保存在zkz文件夾中,文件命名方法為報到學生的身份證號,以留作備份。其核心代碼如下:
$zkzfilename='zkz/'.$sfzjh.'.docx';
$document->save($zkzfilename);
5 結束語
準考證自動打印程序的設計大大加快了學生報到管理工作的速度,并實時掌握學生報到情況,使考務工作能更好的完成,大大提高工作的效率。
參考文獻:
[1]PHPWord.PHPWord的使用[EB/OL].http://phpword.codeplex.com /documentation.
[2]梁文新,宋強,劉凌霞.Ajax+PHP程序設計實戰(zhàn)詳解[M].北京:清華大學出版社,2010:208-222.
[3]Luke Welling,Laura Thomsona.PHP and MySQL Web Development[M].北京:機械工業(yè)出版社,2009:200-215.
作者簡介:向蘭宣,男,四川瀘州人,軟件工程碩士,研究方向:Web網站的設計。
作者單位:瀘州職業(yè)技術學院,四川瀘州 646005