ASP.NET實(shí)現(xiàn)圖書管理系統(tǒng)的步驟詳解
一、數(shù)據(jù)庫添加
1.用戶信息
2.圖書信息表
3.圖書借閱信息表
二、版本頁面
vs2010+sqlserver2008
三、實(shí)現(xiàn)功能
1. 用戶注冊(cè)登錄2. 兩種身份:管理員和讀者3. 讀者能夠注冊(cè)自己的賬號(hào)和密碼還有填寫自己的個(gè)人信息4. 讀者根據(jù)自己需求的借閱和歸還圖書5. 管理員可以增、減、查、改等圖書信息,修改用戶信息待完善
四、主要頁面展示
1.登錄頁面 2.用戶注冊(cè) 3.個(gè)人信息表 4.用戶歸還圖書
5.用戶借閱書籍 6.用戶檢索書籍 7.管理員頁面
五、簡(jiǎn)單代碼
1.注冊(cè)頁面(內(nèi)容判斷不在內(nèi))
try { //賦予sql字符串?dāng)?shù)據(jù) string strsql1 = "insert into yhxx (zh,mima) values ('" + Tet_zh.Text + "','" + Tet_mima.Text + "')"; //創(chuàng)建字符串對(duì)象 mycom = new SqlCommand(strsql1, myconn); mycom.ExecuteNonQuery(); //關(guān)閉數(shù)據(jù)庫 myconn.Close(); Response.Write("<script>alert('添加成功?。?)</script>"); //保存賬號(hào) //str = Tet_zh.Text; //保存用戶名 Application["name"] = Tet_zh.Text; //如果成功了成功轉(zhuǎn)入 Response.Redirect("Useradd.aspx"); } catch (Exception ex) { Response.Write("<script>alert('用戶已存在?。?)</script>"); }
2.個(gè)人信息頁面(內(nèi)容判斷不在內(nèi))
protected void tianjia() { //添加用戶信息 try { //賦予sql字符串?dāng)?shù)據(jù) string strsql1 = "update yhxx set xm='"+Tet_xm.Text+"',xb='"+tet_xb.Text+"',qq='"+Tet_qq.Text+"',Email='"+Tet_email.Text+"',dizhi='"+tet_home.Text+"',enjioy='"+Tet_enjoy.Text+"' where zh='"+Application["name"]+"'"; // 創(chuàng)建字符串對(duì)象 mycom = new SqlCommand(strsql1, myconn); mycom.ExecuteNonQuery(); //關(guān)閉數(shù)據(jù)庫 myconn.Close(); Response.Write("<script>alert('添加成功??!')</script>"); Response.Redirect("denglu.aspx"); } catch (Exception ex) { Response.Write("<script>alert('添加失?。。?)</script>"+ex.Message.ToString()); } }
3.登錄頁面(內(nèi)容判斷不在內(nèi))
//普通用戶登錄,管理員登錄雷同 try { string sql = "select * from yhxx where zh='"+Tet_zh.Text+"' and mima='"+Tet_mm.Text+"' and yhlb='"+tet_dz.Text+"'"; //創(chuàng)建命令對(duì)象 SqlCommand com = new SqlCommand(sql,myconn); //創(chuàng)建讀取對(duì)象 SqlDataReader dr = com.ExecuteReader(); //成功彈出提示框 //MessageBox.Show("讀取成功?。?); if (dr.Read()) { dr.Close(); myconn.Close(); Application["name1"] = Tet_zh.Text; Response.Redirect("index.aspx"); } else { Response.Write("<script>alert('用戶名或密碼有誤??!')</script>"); } } catch (Exception ex) { Response.Write("<script>alert('登錄失敗??!')</script>"); }
4.圖書檢索
try { //打開數(shù)據(jù)庫 myconn.Open(); } catch (Exception ex) { Response.Write("<script>alert('數(shù)據(jù)庫打開失敗')</script>"); } try { //創(chuàng)建數(shù)據(jù)字符串 if (tet_name.Text == "") { Response.Write("<script>alert('名稱不能為空!')</script>"); } else { string strsql3 = "select BookID as 圖書編號(hào),BookName as 圖書名稱," + "Booklb as 圖書類別,Bookzz as 圖書作者,Booklr as 圖書內(nèi)容," + "Bookfm as 圖書封面,Bookjg as 圖書價(jià)格,Bookzt as 圖書借閱狀態(tài) " + " from Bookxx where BookName='" + tet_name.Text + "'"; mycom = new SqlCommand(strsql3, myconn); //打開數(shù)據(jù)庫 //myconn.Open(); // myread = mycom.ExecuteReader(); GridView1.DataSource = myread; GridView1.DataBind(); GridView1.Visible = true; //關(guān)閉數(shù)據(jù) myread.Close(); myconn.Close(); } } catch (Exception ex) { Response.Write("<script>alert('查詢失??!')</script>" + ex.Message.ToString()); }
5.圖書借閱
1.先添加圖書 if (myread.Read()) { if (tet_zt.Text == "0") { //添加借閱信息表 myread.Close(); string strsql5 = "insert into Bookjyxx (ISBookID,ISBookname,ISBookzt,ISname,ISid) " + " values (" + Tet_Bookid.Text + ",'" + tet_Name.Text + "'," + tet_zt.Text + ",'" + Tet_xm.Text + "'," + Tet_ID.Text + ")"; mycom = new SqlCommand(strsql5, myconn); mycom.ExecuteNonQuery(); //關(guān)閉 myconn.Close(); myread.Close(); ////////////////////////////////////// xiugai(); chaxun(); } if (tet_zt.Text == "1") { Response.Write("<script>alert('該書正在借閱中')</script>"); chaxun(); } 2.再分別修改借閱狀態(tài) //創(chuàng)建 //先修改圖書表狀態(tài)信息 string strsql7 = "update Bookxx set Bookzt='1' where BookID='" + Tet_Bookid.Text + "'"; mycom = new SqlCommand(strsql7, myconn); myconn.Close(); myconn.Open(); mycom.ExecuteNonQuery(); //再修改借閱狀態(tài)表信息 string strsql8 = "update Bookjyxx set ISBookzt='1' where ISBookID='" + Tet_Bookid.Text + "'"; mycom = new SqlCommand(strsql8, myconn); mycom.ExecuteNonQuery(); Response.Write("<script>alert('借閱成功!')</script>"); //關(guān)閉 myconn.Close();
6.圖書歸還
//刪除他的借閱圖書信息 string strsql3="delete from bookjyxx where ISid='"+Tet_id.Text+"'"; mycom = new SqlCommand(strsql3, myconn); myconn.Open(); mycom.ExecuteNonQuery(); ////////////////////////////// //刷新信息 //查詢信息 string strsql4= "select ISname as 借閱者,ISid as 借閱證號(hào)碼,ISBookID as 借閱書籍編號(hào)," + "ISBookname as 借閱數(shù)據(jù)名稱,ISBookzt as 借閱狀態(tài),ISdate as借閱日期 from Bookjyxx where ISid='" + Tet_id.Text + "'"; mydata = new SqlDataAdapter(strsql4, myconn); DataSet set = new DataSet(); mydata.Fill(set); GridView1.DataSource = set.Tables[0]; GridView1.DataBind(); GridView1.Visible = true; //修改狀態(tài) //先修改圖書表狀態(tài)信息 string strsql7 = "update Bookxx set Bookzt='0' where BookID='" +tet_Bookid.Text+ "'"; mycom = new SqlCommand(strsql7, myconn); mycom.ExecuteNonQuery(); Response.Write("<script>alert('歸還成功!')</script>"); //關(guān)閉 myconn.Close(); set.Clear();
總結(jié)
以上所述是小編給大家介紹的ASP.NET實(shí)現(xiàn)圖書管理系統(tǒng)的步驟,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)我們網(wǎng)站的支持!
如果你覺得本文對(duì)你有幫助,歡迎轉(zhuǎn)載,煩請(qǐng)注明出處,謝謝!
上一篇:ASP.NET Core 3框架揭秘之 異步線程無法使用IServiceProvider問題
欄 目:ASP.NET
下一篇:.NET連接池的問題詳解
本文標(biāo)題:ASP.NET實(shí)現(xiàn)圖書管理系統(tǒng)的步驟詳解
本文地址:http://mengdiqiu.com.cn/a1/ASP_NET/10828.html
您可能感興趣的文章
- 01-11如何給asp.net core寫個(gè)簡(jiǎn)單的健康檢查
- 01-11docker部署Asp.net core應(yīng)用的完整步驟
- 01-11ASP.NET Core靜態(tài)文件的使用方法
- 01-11asp.net Core3.0區(qū)域與路由配置的方法
- 01-11ASP.Net Core中使用枚舉類而不是枚舉的方法
- 01-11.NET Core 3.0 可回收程序集加載上下文的實(shí)現(xiàn)
- 01-11Asp.net core利用MediatR進(jìn)程內(nèi)發(fā)布/訂閱詳解
- 01-11ASP.NET Core中間件計(jì)算Http請(qǐng)求時(shí)間示例詳解
- 01-11asp.net core集成JWT的步驟記錄
- 01-11ASP.NET Core MVC學(xué)習(xí)教程之路由(Routing)


閱讀排行
- 1C語言 while語句的用法詳解
- 2java 實(shí)現(xiàn)簡(jiǎn)單圣誕樹的示例代碼(圣誕
- 3利用C語言實(shí)現(xiàn)“百馬百擔(dān)”問題方法
- 4C語言中計(jì)算正弦的相關(guān)函數(shù)總結(jié)
- 5c語言計(jì)算三角形面積代碼
- 6什么是 WSH(腳本宿主)的詳細(xì)解釋
- 7C++ 中隨機(jī)函數(shù)random函數(shù)的使用方法
- 8正則表達(dá)式匹配各種特殊字符
- 9C語言十進(jìn)制轉(zhuǎn)二進(jìn)制代碼實(shí)例
- 10C語言查找數(shù)組里數(shù)字重復(fù)次數(shù)的方法
本欄相關(guān)
- 01-11vscode extension插件開發(fā)詳解
- 01-11VsCode插件開發(fā)之插件初步通信的方法
- 01-11如何給asp.net core寫個(gè)簡(jiǎn)單的健康檢查
- 01-11.net core高吞吐遠(yuǎn)程方法如何調(diào)用組件
- 01-11淺析.Net Core中Json配置的自動(dòng)更新
- 01-11.NET開發(fā)人員關(guān)于ML.NET的入門學(xué)習(xí)
- 01-11.NET Core 遷移躺坑記續(xù)集之Win下莫名其
- 01-11.net core webapi jwt 更為清爽的認(rèn)證詳解
- 01-11docker部署Asp.net core應(yīng)用的完整步驟
- 01-11ASP.NET Core靜態(tài)文件的使用方法
隨機(jī)閱讀
- 01-11Mac OSX 打開原生自帶讀寫NTFS功能(圖文
- 08-05dedecms(織夢(mèng))副欄目數(shù)量限制代碼修改
- 01-10SublimeText編譯C開發(fā)環(huán)境設(shè)置
- 08-05織夢(mèng)dedecms什么時(shí)候用欄目交叉功能?
- 01-10使用C語言求解撲克牌的順子及n個(gè)骰子
- 01-10delphi制作wav文件的方法
- 01-10C#中split用法實(shí)例總結(jié)
- 01-11ajax實(shí)現(xiàn)頁面的局部加載
- 08-05DEDE織夢(mèng)data目錄下的sessions文件夾有什
- 04-02jquery與jsp,用jquery