學生選課系統(tǒng)
《學生選課系統(tǒng)》由會員分享,可在線閱讀,更多相關(guān)《學生選課系統(tǒng)(51頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、摘要 摘要 對于目前高校來說,網(wǎng)上學生選課系統(tǒng)是高校學生管理工作中必不可少的一部分,對于高校來說學生選課系統(tǒng)非常重要,有著很深的意義。本系統(tǒng)基于目前高校的實際情況開發(fā),主要基于BS架構(gòu),不需要安裝軟件,只需要打開瀏覽器,輸入指定的網(wǎng)址便可訪問。本系統(tǒng)使用PHP+MySQL技術(shù)進行開發(fā)。為學生選課提供一個便捷的平臺,方便學生選課,學校學生選課的管理,教師只需在后臺設(shè)置課程信息,學生便可選課,免去了許多繁雜的步驟。 關(guān)鍵詞 成績管理系統(tǒng);高校;PHP; I I II
2、 Abstract For the current colleges and universities, the online student selection system is an indispensable part of the management of college students. For colleges and universities, the student selection system is very important and has deep meaning. The system is developed based on the
3、current situation of colleges and universities. It is mainly based on the BS architecture. It does not need to install software. It only needs to open the browser and enter the specified URL to access. This system is developed using PHP+MySQL technology. It provides a convenient platform for student
4、s to choose courses, which is convenient for students to choose courses. The management of school students' choice of courses, teachers only need to set course information in the background, students can choose courses, eliminating many complicated steps. Keywords: Grade management system; college
5、; PHP; III 目錄 目錄 摘要 I Abstract II 第一章 緒論 3 1.1 項目背景 3 1.2 項目的意義 3 1.3 國內(nèi)外研究現(xiàn)狀 3 1.4 研究內(nèi)容及本人工作 4 1.4.1研究內(nèi)容 4 第二章 系統(tǒng)開發(fā)方法 5 2.1 軟件開發(fā)方法 5 2.2 開發(fā)核心語言介紹 5 2.3 其他開發(fā)語言介紹 5 2.3.1 MySQL數(shù)據(jù)庫 5 2.3.1 Thinkphp框架 5 第三章 系統(tǒng)需求與分析 6 3.1可行性分析 6 3.1.1經(jīng)濟可行性 6 3.1.2技術(shù)可行性 6 3.2 業(yè)務(wù)需求與分析 7 3.3
6、 非功能需求分析 8 3.4 功能需求與分析 8 3.4.1用戶登錄 8 3.4.2 教師模塊 9 3.4.3 學生模塊 10 3.5 性能需求與分析 10 第四章 系統(tǒng)設(shè)計 11 4.1 系統(tǒng)設(shè)計原則 11 4.2 系統(tǒng)總體設(shè)計 11 4.2.1系統(tǒng)總體結(jié)構(gòu) 11 4.3 核心功能模塊詳細設(shè)計 12 III 鎮(zhèn)江高等專科學校畢業(yè)設(shè)計(論文) 4.3.1登錄模塊詳細設(shè)計 12 4.4數(shù)據(jù)庫設(shè)計 13 4.5數(shù)據(jù)庫連接與實施 14 第五章 系統(tǒng)實現(xiàn) 15 5.1 運行配置環(huán)境 15 5.1.1軟件運行環(huán)境要求 15 5.2 系統(tǒng)主要功能截圖及
7、主要實現(xiàn)代碼 16 5.2.1用戶登錄 16 5.2.2學生功能模塊 18 5.2.3教師功能代碼實現(xiàn) 22 第六章 系統(tǒng)測試 23 6.1 軟件測試方法 23 6.2 系統(tǒng)主要功能的測試用例 23 6.2.1系統(tǒng)安裝測試 23 6.2.2登陸功能測試 24 6.2.3發(fā)布課程測試 24 6.2.4查詢課程測試 25 6.2.5學生選課測試 25 總結(jié)與展望 26 致 謝 27 參考文獻 28 第一章 緒論 第一章 緒論 1.1 項目背景 目前高校學生人數(shù)多,基數(shù)大,一個學生要選許多的選修課程,往往一個學生要學許多門課程,如果學校使用紙質(zhì)化報名選
8、課的話,教師將會面對復(fù)雜的工作量,需要大量的工作人員去登記,統(tǒng)計學生選課信息,逐層上報,這無疑是一個非常龐大復(fù)雜的工作量。需要耗費許多的時間,教師許多的精力。那么我們有什么辦法去改善目前這一情況呢?因此,學生網(wǎng)上選課系統(tǒng)就因此誕生了。 1.2 項目的意義 計算機方面的網(wǎng)絡(luò)技術(shù)的大力發(fā)展,人們越來越懂得利用網(wǎng)絡(luò)。我們可以基于BS架構(gòu)開發(fā)web程序,用戶無需安裝軟件,只需用瀏覽器打開指定的網(wǎng)址進行登錄注冊即可訪問該程序。學生網(wǎng)上選課系統(tǒng),學生只需通過瀏覽器訪問該系統(tǒng),進行選課操作,教師在后臺可以添加選課內(nèi)容,管理學生,查看統(tǒng)計的學生的選課情況。減少了教師的很多工作量,節(jié)約了許多時間。大大的便于
9、高校管理工作的進行。 1.3 國內(nèi)外研究現(xiàn)狀 依照學生選課系統(tǒng)國內(nèi)外情況,外國相關(guān)人員對該系統(tǒng)的完善與升級,相比我國內(nèi)系統(tǒng),已經(jīng)相對的的完整。但是國外的系統(tǒng)邏輯思維與國內(nèi)不一樣,不太符合我國國情,因此我們需要開發(fā)出一套與我們高校相適應(yīng)的選課系統(tǒng),基于高校出發(fā),功能操作方式應(yīng)符合國人思維,使用的習慣。 1.4 研究內(nèi)容及本人工作 1.4.1研究內(nèi)容 1. 對高校學生選課現(xiàn)象進行調(diào)研 調(diào)查分析目前高校學生選課情況,做出一個大概的了解。 2. 對系統(tǒng)的需求進行分析 分析該系統(tǒng)所需要的功能 3. 設(shè)計功能模塊 詳細確定系統(tǒng)所需的功能模塊,
10、比如用戶登錄注冊模塊、學生選課模塊等。 4. 數(shù)據(jù)庫設(shè)計 建立數(shù)據(jù)庫,設(shè)計選課系統(tǒng)所需要的表,以及E-R圖。 45 鎮(zhèn)江高等專科學校畢業(yè)設(shè)計(論文) 5.實現(xiàn)系統(tǒng) 開始編寫該系統(tǒng)代碼,實現(xiàn)學生網(wǎng)上選課系統(tǒng)功能。 6.系統(tǒng)測試 對系統(tǒng)功能進行測試。 本網(wǎng)上學生選課系統(tǒng)的設(shè)計與制作全部由本人獨自設(shè)計與制作,從系統(tǒng)的需求分析,系統(tǒng)的功能模塊設(shè)計與確定,系統(tǒng)代嗎編寫,設(shè)計系統(tǒng)的數(shù)據(jù)庫,系統(tǒng)測試。在本系統(tǒng)的后、前期需求分析階段,本人對在校學生和任課教師的需求進行調(diào)研和統(tǒng)計,并撰寫該系統(tǒng)的需求文檔,并根據(jù)該
11、系統(tǒng)的需求文檔進行該系統(tǒng)功能的測試和評估,這也包括學生選課系統(tǒng)的測試等相關(guān)內(nèi)容。2 基礎(chǔ)理論和相關(guān)技術(shù)介紹 第二章 軟件開發(fā) 第二章 軟件開發(fā) 2.1 軟件開發(fā)方法 本選課系統(tǒng)采用玩的文檔閱讀與研究、實際進入高校調(diào)查研究、進行過系統(tǒng)實際測試等相關(guān)的研究方法。通過實際高校情況調(diào)查結(jié)果結(jié)合相關(guān)文檔內(nèi)容研究課題。在選課系統(tǒng)的完成與實現(xiàn)中將使用自己所學的編程專業(yè)知識和相關(guān)技術(shù)進行研究。同時閱讀與參考其他作者所編寫的學生網(wǎng)上選課管理系統(tǒng),結(jié)合當前高校學生網(wǎng)上選課系統(tǒng)實際需求出發(fā)進行功能性的研究與實
12、現(xiàn)。進行實際學生網(wǎng)上選課系統(tǒng)開發(fā)。 該方法就是把這個高校學生網(wǎng)上選課系統(tǒng)、分為幾大功能模塊,分模塊進行開發(fā)與制作。完成最終系統(tǒng)的實現(xiàn)。 2.2 開發(fā)核心語言介紹 本系統(tǒng)開發(fā)主要采用PHP語言進行開發(fā)制作。PHP起源源于1995年,由Rasmus Lerdorf 開發(fā)完成。PHP是一種語法結(jié)構(gòu)簡單,易于入門的,很多功能只需要一個函數(shù)就可以實現(xiàn)的腳本語言。它的安全性高,跨平臺,幾乎支持所有的操作系統(tǒng)平臺,支持多種服務(wù)器,支持廣泛的數(shù)據(jù)庫,其中PHP+MySQL是最佳的組合,本系統(tǒng)就采用了MySQL數(shù)據(jù)庫,它還有易學性,語法簡單便于掌握。它執(zhí)行速度塊,占用系統(tǒng)資源少,代碼執(zhí)行的速度就快。PHP
13、還是一個免費的開源腳本。PHP目前已成為全球最受歡迎的腳本語言之一。 2.3 其他開發(fā)語言介紹 2.3.1 MySQL數(shù)據(jù)庫 只有與數(shù)據(jù)庫結(jié)合,才能充分發(fā)揮動態(tài)網(wǎng)頁編程語言的的魅力,PHP支持多種數(shù)據(jù)庫,尤其與MySQL被稱為“黃金搭檔”!MySQL也是目前最為流行的開源數(shù)據(jù)庫,是完全網(wǎng)絡(luò)化跨平臺關(guān)系型數(shù)據(jù)庫系統(tǒng)。MySQL具有功能強大,提供了多種數(shù)據(jù)庫存儲引擎,支持跨平臺,運行速度快,MySQL使用了B樹磁盤表,成本低,免費,支持各種開發(fā)語言,存儲容量大等優(yōu)點。 2.3.1 Thinkphp框架 ThinkPHP是一種性能卓越并且功能豐富的輕量級PHP開發(fā)框架,其宗旨是讓web應(yīng)用
14、開發(fā)更簡單、更快速。Thinkphp在易用性、擴展性和性能方面不斷優(yōu)化和改進,已經(jīng)成為國內(nèi)最領(lǐng)先和最具影響力的web開發(fā)框架。它開源、快速、簡單。 鎮(zhèn)江高等??茖W校畢業(yè)設(shè)計(論文) 第三章 系統(tǒng)需求與分析 本系統(tǒng)為學生網(wǎng)上選課系統(tǒng),主要功能有用戶登錄、學生瀏覽課程信息并可以進行選課操作,查詢課程信息,瀏覽已經(jīng)選擇的課程并且可以進行取消操作。教師可以管理學生信息,管理課程,管理學生選課。 3.1可行性分析 3.1.1經(jīng)濟可行性 PHP+MySQL,thinkPHP是開源免費的軟件,不需要收費,同時采用PHPstorm編輯器,學生可以免費申請,本項目完全不需要其他資金,經(jīng)濟上完全可
15、行。 3.1.2技術(shù)可行性 本系統(tǒng)開發(fā)主要采用PHP語言進行開發(fā)制作。PHP是一種語法結(jié)構(gòu)簡單,易于入門的,很多功能只需要一個函數(shù)就可以實現(xiàn)的腳本語言。它還有易學性,語法簡單便于掌握。它執(zhí)行速度塊,占用系統(tǒng)資源少,代碼執(zhí)行的速度就快。PHP還是一個免費的開源腳本。PHP目前已成為全球最受歡迎的腳本語言之一。 MySQL具有功能強大,提供了多種數(shù)據(jù)庫存儲引擎,支持跨平臺,運行速度快,MySQL使用了B樹磁盤表,成本低,免費,支持各種開發(fā)語言,存儲容量大等優(yōu)點。 ThinkPHP是一種性能卓越并且功能豐富的輕量級PHP開發(fā)框架,其宗旨是讓web應(yīng)用開發(fā)更簡單、更快速。Thinkphp在易
16、用性、擴展性和性能方面不斷優(yōu)化和改進,已經(jīng)成為國內(nèi)最領(lǐng)先和最具影響力的web開發(fā)框架。它開源、快速、簡單。 3.2 業(yè)務(wù)需求與分析 具體功能實際可根據(jù)業(yè)務(wù)不同需求進行個別設(shè)置,以下為基本需求設(shè)定。 1.用戶登錄的需求分析 該功能主要分為 學生 教師 管理員三個身份進行登錄。 運行登陸程序 學生登陸 教師登陸 圖3-1登錄流程圖 第三章 系統(tǒng)需求與分析 2.教師功能模塊的需求分析 教師在系統(tǒng)登錄成功之后,可以管理學生信息,對學生信息進行查看等操作。教師可以發(fā)布要選課的課程信息,管理發(fā)布的課程,查看學生的
17、選課情況,修改自己的登錄密碼。等相關(guān)操作。 教師登陸成功 修改密碼 查看選課情況 管理發(fā)布課程 發(fā)布課程 圖3-2教師功能流程圖 3.學生功能模塊的需求分析 學生在登陸之后可以修改登錄密碼,查看自己可以選擇的課程,管理自己已 經(jīng)選擇的課程,進行選課操作。 學生功能模塊 修改密碼 選擇課程 管理已選課程 查看可選課程 圖3-3學生功能流程圖 3.3 非功能需求分析 3.3.1系統(tǒng)運行環(huán)境 1、軟件運行環(huán)境要求 開發(fā)工具:PHPstorm 、hbuilder、phpstudy,
18、運行環(huán)境:Windows操作系統(tǒng),lamp集成開發(fā)環(huán)境 2、硬件運行環(huán)境要求 CPU:3.66G Hz以上; 鎮(zhèn)江高等??茖W校畢業(yè)設(shè)計(論文) 內(nèi)存:4GB; 硬盤空間:100GB以上 3.4 功能需求與分析 本系統(tǒng)是一個以PHP+MySQL技術(shù),結(jié)合thinkPHP框架開發(fā)的網(wǎng)上學生選課系統(tǒng),供高校師生使用。從用戶的角度上,該系統(tǒng)分為兩個層面:(1)使用該系統(tǒng)的學生,他們登錄系統(tǒng)后通過客戶端瀏覽器瀏覽可選的課程信息,并根據(jù)自己的實際情況按照一定次序選課。(2)另一個是教師,他們可以通過瀏覽器輸入該網(wǎng)上選課系統(tǒng)的訪問地址,進行網(wǎng)上選課系統(tǒng)的維護和管理工作。比如說,對課程信息進
19、行刪除操作,添加操作,修改操作。 該網(wǎng)上選課系統(tǒng)是建立在B/S的架構(gòu)上的動態(tài)web程序應(yīng)用,隸屬于web開發(fā)。不僅僅如此,還需要按照學校的規(guī)模條件以及學生集中選課的時間。根據(jù)預(yù)期系統(tǒng)性能選定服務(wù)器,相應(yīng)的軟硬件和網(wǎng)絡(luò)設(shè)施。 3.4.1用戶登錄 本系統(tǒng)主要有三位用戶進行登錄操作,學生登錄,教師登錄。管理員登錄 運行登陸程序 學生登陸 教師登陸 圖3-4登錄模塊 3.4.2 教師模塊 教師在網(wǎng)上選課系統(tǒng)登陸成功之后,可以發(fā)布課程,填寫需要發(fā)布的 課程信息,比如課程名稱,任課教師,課程時長等等信息,在教師發(fā)布課程之后,教師還可以管理課程,對發(fā)布
20、的課程進行管理操作,對不需要的課程進行刪除,填錯的課程信息,進行修改正確的課程信息。教師還可以查看學生的選課情況,對學生選擇了哪些課程進行查看操作。除此之外,教師還以可以管理學生,新增學生,修改學生信息,刪除學生信息。為了提高系統(tǒng)的安全性,教師可以在登錄系統(tǒng)之后,進行密碼修改操作,修改的自己的登錄密碼。 第三章 系統(tǒng)需求與分析 教師登陸成功 查看選課情況 修改密碼 管理發(fā)布課程 發(fā)布課程 圖3-5教師功能模塊 3.4.3 學生模塊 學生在登錄該網(wǎng)上選課系統(tǒng)之后,自己可以選擇的課程信息,課程名稱,上課時間,任課教師,上課地點等信息。學生可
21、以對自己合適的課程進行選擇操作,學生還可以查看自己所選擇的課程信息,學生可以管理自己的已經(jīng)選擇課程,對自己所選擇的課程進行退課操作,允許反悔。為了提高系統(tǒng)的安全性,學生可以在登錄系統(tǒng)之后,進行密碼修改操作,修改的自己的登錄密碼。 學生功能模塊 修改密碼 管理已選課程 選擇課程 查看可選課程 圖3-6學生功能流程圖 3.5 性能需求與分析 1.適應(yīng)性 學生網(wǎng)上選課系統(tǒng)由于使用PHP+MySQL,結(jié)合thinkPHP框架開發(fā),所以本系統(tǒng)用于Linux、windows平臺、mac等操作系統(tǒng)上運行。 2.故障處理 正常使用系統(tǒng)過程中不會出現(xiàn)錯誤日志
22、,出現(xiàn)系統(tǒng)錯誤,必須保證數(shù)據(jù)一致性。 鎮(zhèn)江高等??茖W校畢業(yè)設(shè)計(論文) 第四章 系統(tǒng)設(shè)計 4.1 系統(tǒng)設(shè)計原則 1.系統(tǒng)性 學生網(wǎng)上選課系統(tǒng)由于使用PHP+MySQL,結(jié)合thinkPHP框架開發(fā) 2.經(jīng)濟性 本次系統(tǒng)開發(fā)過程中,經(jīng)濟性即指滿足基本需求的條件下,減少開發(fā)成本。在滿足基本功能的條件下,合理降低項目費用。 3.靈活性 此項目模塊化開發(fā),使得各模塊獨立開發(fā),降低耦合度,實現(xiàn)高內(nèi)聚低耦合。 4.2 總體設(shè)計 4.2.1總體結(jié)構(gòu) 首頁 學生網(wǎng)上選課系統(tǒng)總體結(jié)構(gòu)設(shè)計圖,系統(tǒng)主要由幾大功能模塊組成:安裝模塊、用戶登錄模塊、學生功能模塊,教授功能模塊組成。如圖4-
23、2系統(tǒng)層次圖所示: 學生 教師 查詢課程 刪除課程 修改課程 添加課程 瀏覽已選課程 查詢課程 瀏覽可選課程 課程詳細信息 選擇課程 刪除已選課程 圖4-1總體結(jié)構(gòu)層次圖 4.3 核心功能模塊詳細設(shè)計 4.3.1登錄功能設(shè)計 第4章 系統(tǒng)設(shè)計 本系統(tǒng)主要分為三個角色登錄,學生登錄,教師登錄,管理員登錄。 4.3.2 教師模塊詳細設(shè)計 教師在網(wǎng)上選課系統(tǒng)登陸成功之后,可以發(fā)布課程,填寫需要發(fā)布的課程信息,比如課程名稱,任課教師,課程時長等等信息,在教師發(fā)布課程之后,教師還可以管理課程,對發(fā)布的課程進
24、行管理操作,對不需要的課程進行刪除,填錯的課程信息,進行修改正確的課程信息。教師還可以查看學生的選課情況,對學生選擇了哪些課程進行查看操作。除此之外,教師還以可以管理學生,新增學生,修改學生信息,刪除學生信息。為了提高系統(tǒng)的安全性,教師可以在登錄系統(tǒng)之后,進行密碼修改操作,修改的自己的登錄密碼。 4.3.3 學生功能模塊詳細設(shè)計 學生在登錄該網(wǎng)上選課系統(tǒng)之后,可以去查看教師所發(fā)布的課程,自己可以選擇的課程信息,課程名稱,上課時間,任課教師,上課地點等信息。學生可以對自己合適的課程進行選擇操作,學生還可以查看自己所選擇的課程信息,學生可以管理自己的已經(jīng)選擇課程,對自己所選擇的課程進行退課操作
25、,允許反悔。學生可以在登錄系統(tǒng)之后,進行密碼修改操作,修改的自己的登錄密碼。 4.4數(shù)據(jù)庫設(shè)計 本系統(tǒng)完全遵循模塊開發(fā)準測,報錯數(shù)據(jù)庫模塊管理,同時各模塊數(shù)據(jù)管理必須遵循數(shù)據(jù)一致性原則。共分為5個關(guān)系,詳細信息如下所示: 學生(學號、姓名、學院、專業(yè)、班級、性別、班級、密碼) 教師(教師工號、姓名、學院、性別、職稱、密碼) 課程(課程編號、課程名、教師姓名、已選人數(shù)、容量、上課時間、上課地點、學分、學時) 選課信息(學號、課程編號) 1.選課信息表 選課信息表包括 學生學號、課程表號2個字段。 表4-1課程信息表 字段名稱 數(shù)據(jù)類型 大小 約束 非空 默認值 含
26、義 StuNo varchar 8 主鍵 是 無 學號無 CouNo int 3 主鍵 是 無 課程編號 State char 2 是 無 課程狀態(tài) Credit Smallint 2 是 無 課程學分 Alter char 2 是 無 成績 2.學生信息表 學生信息表包括 學號、姓名、學院、專業(yè)、性別、班級、密碼7個字段 鎮(zhèn)江高等??茖W校畢業(yè)設(shè)計(論文) 表4-2學生信息表 字段名稱 數(shù)據(jù)類型 大小 約束 非空 默認值 含義 StuNo char 8 主鍵 是 無 學號
27、StuName char 10 是 無 姓名 Classno char 8 是 無 班級 Pwd char 8 是 無 密碼 Credit Smallint 2 是 無 學分 3.教師信息表 標識:info_teacher 教師信息表包括 工號、姓名、學院、性別、職稱、密碼6個字段 表4-3教師信息表 字段名稱 數(shù)據(jù)類型 大小 約束 非空 默認值 含義 TeatNo char 8 主鍵 是 無 工號 Teaname char 10 是 無 姓名 DepartNo char
28、 2 是 無 學院 Pwd char 8 是 無 密碼 4.課程信息表 課程信息表包括 課程編號、課程名稱、上課老師、學分、上課時間 表 4-4課程信息表 字段名稱 數(shù)據(jù)類型 大小 約束 非空 默認值 含義 CouNnme char 8 主鍵 是 無 課程名稱 Kind char 8 是 無 類 Teacher char 10 是 無 上課老師 SchoolTime char 8 是 無 上課時間 Credit Smallint 2 是 無 課程學分 primary
29、 key char 2 是 無 課程編號 4.5數(shù)據(jù)庫連接與實施 4.5.1 數(shù)據(jù)庫實施 本階段主要進行創(chuàng)建表、添加數(shù)據(jù)和創(chuàng)建必要的視圖、觸發(fā)器和存儲過程等內(nèi)容。 這個過程在系統(tǒng)安裝階段完成。 第四章 系統(tǒng)設(shè)計 Navicat是一款數(shù)據(jù)庫管理工具,本系統(tǒng)采用Navicat軟件作為數(shù)據(jù)庫管理和開發(fā)工具。數(shù)據(jù)庫的操作都是在Navicat中完成。 4.5.2 鏈接數(shù)據(jù)庫 本系統(tǒng)采用thinkPHP框架開發(fā),無需編寫繁雜的數(shù)據(jù)庫連接代碼,只需要在系統(tǒng)框架目錄app/conf/config.php.中設(shè)置好數(shù)據(jù)庫的地址,用戶名,密碼,數(shù)據(jù)庫名稱即可,如圖所示:
30、 表4-1數(shù)據(jù)庫連接代碼 鎮(zhèn)江高等??茖W校畢業(yè)設(shè)計(論文) 第五章 系統(tǒng)實現(xiàn) 5.1 運行配置環(huán)境 5.1.1軟件運行環(huán)境要求 本系統(tǒng)軟件運行環(huán)境主要使用lamp開發(fā)環(huán)境,就是Linux,Apache,MySQL數(shù)據(jù)庫,PHP5.6進行開發(fā)。我們主要使用簡單的PHPstudy集成開發(fā)環(huán)境,無需繁雜的配置就可以把項目簡單的跑起來。 5.2 主要系統(tǒng)功能截圖及相關(guān)實現(xiàn)代碼 5.2.1登錄 登錄主要分為2個身份進行登錄,學生和教師身份,在系統(tǒng)主頁登錄模塊處,輸入自己的登錄賬號和登錄密碼,選擇自己符合的身份進行登錄,在用戶點擊登陸后,進行
31、表單post方式傳值到驗證控制器中進項驗證。若用戶名和密碼輸入正確就會跳轉(zhuǎn)到和自己相對應(yīng)的頁面。若用戶名和密碼輸入錯誤,系統(tǒng)則會提示,用戶登錄失敗,請返回重新登錄。 圖5-1登錄界面
圖5-2登錄前端代碼 public function checkLogin( ) t $username = sthis->_ .post ("username") ;$pw33、d =$this->_ post (" password");$usertype =$this->_ post( 'role') ;if( !$use rname)t sthis->error( 'iA5aAAP8! '); if(!$pwd)t $this->error( 'iXE5'); 1/9Re?#4 if($usertype a'student' )t $student =M( 'student' );//3J88t -↑Xf e 11i014 $condit ion['StuName' ]=$username;$condition['Pwd ']=$pw
34、d : $userinfo =$student- >where($ condition)-find(); if(!$userinfo) sthis->errorl '?P&TT?');if(!$userinfo['Pwd']=$pwd) $this- >error( 'AIP E54iR') ;elsef session( 'StuNo' . $userinfo['StuNo']) : sess ion( 'StuName' , $userinfo[ 'StuName']);session( ' role' ,$userinfol'student']) : sthis->su
35、ccess( 'ükAEIJ',U( " /Student/index')); 鎮(zhèn)江高等??茖W校畢業(yè)設(shè)計(論文) 在通過post提交登陸數(shù)據(jù)后,$username = $this->_post("username");$pwd =$this->_post("password");$usertype =$this->_post('role');會在checkLogin()方法中處理,獲取用戶名,登錄密碼,身份選擇信息,判斷!$username用戶名是否為空,密碼是否為空,然后根據(jù)角色信息去查詢數(shù)據(jù)庫,如果是學生就去查詢學生信息表,如果是教師就去查詢教師信息表, 看是否存在用戶民,密碼是否
36、匹配。如果匹配的話就將信息存儲到數(shù)據(jù)庫中。跳轉(zhuǎn)到對應(yīng)的頁面去。代碼如圖所示: 圖5-2登錄代碼邏輯處理 5.2.2學生功能模塊 學生在登錄系統(tǒng)之后會進入對應(yīng)的功能模塊,進行相應(yīng)的選課,退課,查詢已 選課程操作。如圖所示: 圖5-3學生功能模塊界面 學生可以查看選課信息,在學生點擊進入選課系統(tǒng)后,系統(tǒng)會查詢學生可以選課的信息,把將其顯示在頁面上。具體代碼實現(xiàn)如下: public function chCourse(){ $st = M('stu); $db_prfi = C('DB_PREFIX'); $stno = session('StNo');
37、 $stinform=$st->alias('st')->join('__CLASS__ as clon cl.Classno=st.Classno')->find($stuno); 第五章 系統(tǒng)實現(xiàn) $co=M('course'); $where['DNo'] =$stinform['DNo']; $cou =$cou->field('c.*,sc.StuNo')->alias('c')->join("__STUCOU__ as sc on sc.Cou = c.Cou and sc.St= '".$st."'")->where($while)->select();
38、 $this->display(); $this->assign('list',$coulist); } 學生可以查看已選課程,界面如圖: 圖5-4學生已選課程信息界面 public function choseCourse (){ $co=$this->_get('Co'); $stno=session('StNo'); $data['Order']=2; $data['State']='已選'; $data['CoNo']=$cono; $data['StNo']=$stno; $st=M('st); $ad
39、=$st->add($data); if($ad){ $this->success('成功選課!'); } } 學生刪除已選課程邏輯代碼如下: public function delete(){ $stcou=D('Stcou'); 鎮(zhèn)江高等專科學校畢業(yè)設(shè)計(論文) $CoNo=$this->_get('CoNo'); //var_dump($CoNo);die; $stcou=D('Stcou'); $md=$stcou->where("CoNo = '$CoNo' ")->delete(); if (!$md){
40、 $this->error('刪除失敗!'); }else{ $this->success('刪除成功!',U('/Stu/stucoulist')); } } 5.2.3教師功能代碼實現(xiàn) 教師角色登錄成功之后,可以進行維護學生的信息。教師角色可以發(fā)布要選課的課程,維護發(fā)布的課程,查看學生的選課情況,維護自己的賬號信息。等相關(guān)操作界面如圖所示: 圖5-5教師角色功能界面 教師點擊添加課程界面如圖所示 第五章 系統(tǒng)實現(xiàn) 圖5-6添加課程功能界面 教師通過表單post方式在輸入課程相關(guān)信息后,提交相關(guān)信息到控制器add_do方法中操作:
41、 public function add_do(){ $co=D('Course'); $re=$co->create($_POST,1); if(!$re){ $this->error($cou->getError()); } $Co->DepartNo=$_SESSION['departno']; $r=$co->add($re); if(!$r){ $this->error('課程創(chuàng)建失??!'); }else{ $this->success('課程創(chuàng)建成功!',U('
42、/Teacher/index')); } } 教師修改課程信息代碼如下: public function edit(){ $CoNo=$this->get('CoNo'); $co=M('corse'); $couinfo=$cou->find($CouNo); $this->assign('info',$couinfo); $this->display(); } public function edit_do(){ 鎮(zhèn)江高等??茖W校畢業(yè)設(shè)計(論文) $CoNo=$this->get('CoNo'); $co=
43、D('Corse'); if($co->create()){ $this->error($cou->getError()); } if($co->save($CoNo)){ $this->error('此數(shù)據(jù)寫入失敗'); }else{ $this->success('本課程創(chuàng)建成功!',U('/Corse/colist')); } } 教師角色刪除課程時候可以通過a標簽獲取對應(yīng)課程的id信息并傳值,傳到對應(yīng)的控制器: public function delete(){ $CoNo=$this->_get('Co
44、No'); $co=M('couse'); $md=$cou->where("CoNo = '$CoNo'")->delete(); if($md){ $this->success('本課程刪除成功',U('/Corse/colist')); }else{ $this->success('本課程刪除失??!'); } } } 教師可以查看學生的信息,并且可以進行刪除,修改操作:、 第五章 系統(tǒng)實現(xiàn) 圖5-7教師維護學生信息的界面 教師修改學生信息代碼如下所示: public function edit
45、(){ $stform=$st->findno($StNo); $this->assign('information',$ stform); $StNo=$this->get('StNo'); $st=M('stu'); $this->display(); } 鎮(zhèn)江高等專科學校畢業(yè)設(shè)計(論文) 第六章 系統(tǒng)測試 6.1 軟件測試方法 首先對于不同類型系統(tǒng)應(yīng)該采取不同的測試方法,下面就簡單列舉幾種常用的測試方法,具體見表6-1軟件測試信息表。 表6-1軟件測試方法總結(jié)表 單元測試 在最低的功能和參數(shù)上去
46、證明所寫程序的準確性,舉個例子測試一個方法的正確性 黑盒測試 在不了解系統(tǒng)結(jié)構(gòu)前提條件下,對系統(tǒng)的各個模塊進行測試。 灰盒測試 在白盒測試與黑盒測試之間的測試是灰盒測試 白盒測試 系統(tǒng)的開發(fā)人員已經(jīng)了解系統(tǒng)內(nèi)部開發(fā)結(jié)構(gòu),并且可預(yù)見性進行系統(tǒng)內(nèi)部業(yè)務(wù)邏輯測試 6.2 系統(tǒng)主要功能的測試用例 6.2.1系統(tǒng)安裝測試 運行安裝程序安裝選課系統(tǒng),填寫相關(guān)信息,如果提示安裝成功,數(shù)據(jù)庫建立成功,基本表建立成功,測試數(shù)據(jù)插入成功,測試成功。 表6-1系統(tǒng)運行成功頁面 表6-2開始界面用例表 第六章 系統(tǒng)測試 6.2.2登陸模塊功能測試 本系統(tǒng)的登陸模塊分兩種
47、角色也對應(yīng)兩種不同的角色權(quán)限權(quán)限。在后期的登陸模塊功能測試時,需要分別用兩種不同的角色賬號密碼進行登陸。結(jié)果是成功登陸到與某一種角色對應(yīng)的頁面,則說明登陸模塊能運行無異常,測試結(jié)果符合預(yù)期。 6.2.3發(fā)布課程模塊測試 該系統(tǒng)的課程由教師角色發(fā)布,教師用戶先登錄該系統(tǒng),進入課程模塊進行發(fā)布。發(fā)布的課程保存到數(shù)據(jù)庫之后,在表明該模塊測試成功。 圖6-3發(fā)布成功頁面圖 6.2.4查詢課程模塊測試 學生角色、管理員角色和教師角色都有權(quán)限查詢課程,測試時,登陸每一種一種角色,進行對課程的查詢。若查詢到的數(shù)據(jù)且數(shù)據(jù)與數(shù)據(jù)庫的數(shù)據(jù)一致,則表明該功能模塊能測試成功。
48、 圖6-4課程查詢的設(shè)置 6.2.5學生的選課模塊測試 鎮(zhèn)江高等??茖W校畢業(yè)設(shè)計(論文) 首先對學生角色進行登陸,先要查詢課程,然后進行選課,如果選課結(jié)果成功,并且將數(shù)據(jù)傳到到數(shù)據(jù)庫中,則該模塊功能測試成功。 圖6-5學生選課模塊測試 結(jié)論 結(jié)論 本網(wǎng)上學生選課系統(tǒng)是由我獨自完成的學生網(wǎng)上選課系統(tǒng),在完成系統(tǒng)的過程中,我通過實際的調(diào)查研究,利用學校的圖書館資源,利用網(wǎng)上的資源,去查閱相關(guān)的資料,詢問老師,和同學等各項資源完成了我的畢業(yè)設(shè)計。 由于時間的倉促,我的畢業(yè)設(shè)計還有許多的不足之處,在后期的時間,我會依
49、舊去完善這個學生網(wǎng)上選課系統(tǒng)。通過這次的設(shè)計么我也學到了許多,PHP框架的使用,PHP基礎(chǔ)知識的學習,以后我仍然會努力的去學習相關(guān)編程知識和技術(shù)并總結(jié)經(jīng)驗。不斷地去提高自己的編程能力。 鎮(zhèn)江高等專科學校畢業(yè)設(shè)計(論文) 致謝 首先在這里感謝我的指導(dǎo)老師,在指導(dǎo)老師的細心指導(dǎo)與耐心的幫助下,幫助我去研究我的畢業(yè)設(shè)計選題,分析選課的內(nèi)容到最后幫我確定畢業(yè)設(shè)計選題內(nèi)容。在我完成畢業(yè)設(shè)計過程中,我的直倒老師給我提供了很大的幫助,在我有疑問的情況下,老師很樂意的去給我解答問題,給我拓展思路,幫助我尋找方向去解決問題。 最后感謝所有幫助過我的教師和同學,感謝學校給我一個完成畢業(yè)設(shè)計的機會。 參考文獻 參考文獻 [1]明日科技.零基礎(chǔ)學PHP.吉林大學出版社,2016. [2]樊愛宛.PHP MySQL網(wǎng)站開發(fā)從零開始學.清華大學出版社,2017. [3]唐俊.PHP MySQL網(wǎng)站開發(fā)技術(shù)項目式教程.人民郵電出版社,2015. [4]梅隆尼.PHP MySQL和apache編程導(dǎo)學.機械工業(yè)出版社,2009 [5]列旭松,陳文.PHP核心技術(shù)與最佳實踐.機械工業(yè)出版社,2018.
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。