【正文】
Then the Ainur were afraid, and they did not yet prehend the words that were said to them。 but it was loud, and vain, and endlessly repeated。 but some began to attune their music to his rather than to the thought w hich they had at first. Then the discord of Melkor spread ever wider, and the melodies which had been heard before foundered in a sea of turbulent sound. But Il 鷙 atar sat and hearkened until it seemed that about his throne there was a raging storm, as of dark waters that made war one upon another in an endless wrath that would not be assuaged. Then Il 鷙 atar arose, and the Ainur perceived that he smiled。Of the theme that I have declared to you, I will now that ye make in harmony together a Great Music. And since I have kindled you with the Flame Imperishable, ye shall show forth your powers in adorning this theme, each with his own thoughts and devices, if he will. But I win sit and hearken, and be glad that through you great beauty has been wakened into song.39。 and he made first the Ainur, the Holy Ones, that were the offspring of his thought, and they were with him before aught else was made. And he spoke to them, propounding to them themes of music。 ( 4)學(xué)??稍试S學(xué)位論文被查閱或借閱。除非另有說明,本文的工作是原始性工作。 [6] 楊世錫,趙輝 .ASP+SQL Server 動態(tài)網(wǎng)站開發(fā)從 基礎(chǔ)到實(shí)踐 [M].北京: 電子工業(yè)出版社 , 2020. [7] 孔鵬 .ASP+SQL動態(tài)網(wǎng)站完全開發(fā)手冊 [M].北京: 機(jī)械工業(yè)出版社 ,2020。 [2] 明日科技 .ASP程序開發(fā)范例寶典 [M].北京:人民郵電出版社 ,2020。 通過本次畢業(yè)設(shè)計,我充分體會到理論與實(shí)踐之間的重要聯(lián)系。 圖 49 病歷恢復(fù)頁面 恢復(fù)病歷的主要代碼如下所示。 id (sql) msg=記錄已被刪除,該行為已被系統(tǒng) 記錄。 PageSize 屬性指示 Recordet 中一頁包含的記錄數(shù)目,默認(rèn)值為 10,可以一次查看一定數(shù)量的記錄。 圖 46 病歷的刪除、修改界面 分頁的代碼如下: %const MaxPerPage=20 dim strFileName,rs,sqltext,i,sql dim totalPut,CurrentPage,TotalPages strFileName= if request(page) then currentPage=cint(request(page)) else currentPage=1 end if% %if and then 目前共有 0 個注冊用戶 else totalPut= if currentpage1 then currentpage=1 end if if (currentpage1)*MaxPerPagetotalput then if (totalPut mod MaxPerPage)=0 then currentpage= totalPut \ MaxPerPage else currentpage= totalPut \ MaxPerPage + 1 end if end if if currentPage=1 then showpage strFileName,totalput,MaxPerPage,true,true,個用戶 showContent showpage strFileName,totalput,MaxPerPage,true,true,個用戶 else if (currentPage1)*MaxPerPagetotalPut then (currentPage1)*MaxPerPage dim bookmark bookmark= showpage strFileName,totalput,MaxPerPage,true,true,個用戶 showContent showpage strFileName,totalput,MaxPerPage,true,true,個用戶 else currentPage=1 showpage strFileName,totalput,MaxPerPage,true,true,個用戶 showContent showpage strFileName,totalput,MaxPerPage,true,true,個用戶 end if end if end if% 為了提高頁面讀取速度,不能將所有的病歷羅列在一頁上顯示,而是將其分成多頁顯示,每頁顯示一定數(shù)目的病歷樹,分頁主要有兩種方法: 1)將數(shù)據(jù)庫中所有符合查詢條件的記錄一次性讀入 Recordest 中,并存放在內(nèi)存中,然后同過 ADO Recordest 對象所提供的專門分頁處理的屬性 ——PageSize(頁大?。?、 PageCount(頁數(shù)目)、 AbsolutePage(絕對頁)來管 理分頁處理。 order by id desc sqluser,conn,1,3% select name=ame % do while not % option%=rsUser(ame)%/option % loop set rsuser=nothing % /select 病歷添加的代碼如下所示: %Call DB_Connect(strconn) Set rs = () sql=select * from disease sql,conn,1,3 ’這一行為加入一個記錄,如果漏掉,就會改以前的記錄了。 圖 45 病歷添加頁面 圖 45中下拉菜單列表代碼如下: % set rsuser=() sqluser=select ame from [user] where author= 39。 病歷的管理是整個系統(tǒng)的核心組成部分,病歷管理部分是系統(tǒng)中權(quán)限限制較多的部分。 order by ID desc end if Set rs=() sql,conn,1,1 …………………( 省略代碼 ) if not then do while not loop end if set rs=Nothing Call DB_Disconnect % 當(dāng)患者沒有病歷的時候可以刪除患者的個人信息,但是要經(jīng)過判斷,有病歷的情況下是不允許刪除的。 圖 44 患者管理界面 代碼如下: % dim rs,sql Call DB_Connect(strconn) if session(vip)=3 then sql=select * from [User] order by ID desc else sql=select * from [User] where author=39。) (sql) founderr=false end if set rsReg=nothing end if % %call DB_DisConnect% 患者管理的刪除和修改 醫(yī)生在患者管理頁面可以看到經(jīng)過自己診斷過的患者個人信息或是已經(jīng)在醫(yī)生那里登記過的患者信息,醫(yī)生可以查看患者的詳細(xì)信息。,39。,39。,39。,39。,39。,39。,39。,39。,39。,39。,39。,39。,39。,39。,39。,39。 values(39。 username amp。 shenfenzheng amp。 圖 43 患 者基本信息錄入界面 為了保證數(shù)據(jù)的準(zhǔn)確性,在添加患者信息時候先用 javascript 進(jìn)行初步判斷信息是否填寫完和填寫是否標(biāo)準(zhǔn),比如電話、姓名、住址等。因?yàn)獒t(yī)院中的電腦屬于統(tǒng)一配置,統(tǒng)一管理,不能用自己的電腦登錄醫(yī)院病歷系統(tǒng)并且不能自行修改時間,所以所有的時間均是以本機(jī)時間作為為患者診斷時間進(jìn)行登錄的直接保 存在 user 表中 updatetime 中。 患者管理模塊基本功能時錄入患者個人基本信息及有無患病史,為醫(yī)生的進(jìn)一步判斷達(dá) 4 下基礎(chǔ)。所以要避免一些特殊字符的輸入。) (sql) end if 在添加用戶的時候?qū)τ脩裘M(jìn)行了一長竄的判斷,用了 Vbscript 中的Instr()函數(shù),它的作用是返回某字符串在另一字符串中第一次出現(xiàn)的位子。,39。,39。,39。,39。,39。,39。,39。,39。 values(39。 amp。 amp。 本設(shè)計中添加用戶的核心程序如下所示: If msg=”” then If Instr(username,=)0 or Instr(username,%)0 or Instr(username,chr(32))0 or Instr(username,?)0 or Instr(username,amp。其優(yōu)點(diǎn)是代碼容易閱讀,容易排錯;缺點(diǎn)是消耗系統(tǒng)資源。添加用戶程序中,最主要的是向據(jù)庫中寫入信息的,在這里將用到與數(shù)據(jù)庫有關(guān)的對象 Recordset 。 如圖 42 圖 42 管理員添加用戶界面 在本設(shè)計中所用的 Respone、 Request、 Session 以及 Server 都是 ASP 內(nèi)建對象,不必經(jīng)過任何的設(shè)置就可以直接使用,但除了這些對象以外,例如使用()對象,則必須通過 Server 對象的CreateObject 對象來建立和使用。 Set rs = (sql) ’執(zhí)行這個 SQL 語句,同時返回一個包含了查詢信息的記錄集 I f Not = True Then Session(Name) = rs(m_realName) Session(vip) = rs(m_purview)’讀取權(quán)限判斷值,并保存在 session 中 Set rs = Nothing Call DB_Disconnect /bingli/ Else msg=您輸入了錯誤的用戶名或口令! Set rs = Nothing Call DB_Disconnect End If I f Not = True Then 這一句判斷用戶信息是否存在, EOF 和 BOF是數(shù)據(jù)查詢記錄集的屬性,他們分別表示最后一條記錄和第一條記錄的前面,在最后個紀(jì)錄前是真的則該用戶存在。amp。 amp。 用戶登陸 前面在數(shù)據(jù)庫表創(chuàng)建時已經(jīng)創(chuàng)建好了用戶信息表,數(shù)據(jù)庫中的 m_username和 m_password 字段用來驗(yàn)證用戶身份的,有了這兩項(xiàng)就可以較容易的寫出驗(yàn)證用戶登陸的程序了,首先看