การทำระบบสมาชิก แบบ confirm | ||
ข้อควรทราบ |
|
การเพิ่มสมาชิกใหม่ |
เพิ่มการถามย้ำ การเพิ่มข้อมูล จากบทเรียน การทำระบบสมาชิกใน access เมื่อสั่งเพิ่ม โปรแกรมจะนำข้อมูลมาแสดงอีกครั้ง แล้วถามให้แน่ใจ ก่อนเพิ่มในฐานจริง ๆ Download แฟ้ม member01.mdb เพื่อนำไปทดสอบโปรแกรม ASP ที่เขียนในบทนี้ได้ และแฟ้มทั้งหมดที่ทดสอบ ผมเก็บที่ thaiall.webhostme.com แต่คำอธิบายบทเรียนเก็บที่ www.thaiall.com/asp/ |
ตัวอย่างฟอร์ม /aspmcfad.htm | Source code ของ /aspmcfad.htm |
เพิ่มข้อมูลสมาชิกใหม่ (มีการถามย้ำ ก่อนจัดเก็บจริง) Click เรียกเฉพาะ form นี้ในหน้าต่างใหม่ |
<html><title>Add new member(With confirm)</title> <body bgcolor=#ffffdd><font face="microsoft sans serif"> เพิ่มข้อมูลสมาชิกใหม่ (มีการถามย้ำ ก่อนจัดเก็บจริง)<br> <form action=http://thaiall.webhostme.com/aspmcfad.asp method=post> ชื่อสมาชิก : <input type="text" name=name size=40><br> E-Mail : <input type="text" name=email size=40><br> ชื่อเว็บ : <input type="text" name=webname size=40><br> ที่อยู่เว็บ : <input type="text" name=address size=40 value="http://"><br> คำอธิบายเว็บ : <br><textarea rows=3 cols=40 name=describ></textarea><br> <input type=submit value="Add member"><input type=reset value=Reset> </form> </body></html> |
Source code ของโปรแกรมเพิ่มระเบียน /aspmcfad.asp |
<% if request.form("confirm") = "OK" then set connNews = server.createobject("ADODB.Connection") connNews.open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & server.mappath("/cgi-bin/member01.mdb") sql = "INSERT into member ( name, email, webname, address, describ ) SELECT " sql = sql & " '" & request.form("name") & "' as name, " sql = sql & " '" & request.form("email") & "' as email, " sql = sql & " '" & request.form("webname") & "' as webname, " sql = sql & " '" & request.form("address") & "' as address, " sql = sql & " '" & request.form("describ") & "' as describ; " set rsArticles = connNews.Execute(sql) connNews.close set connNews = nothing response.write("<body>") response.write("<b>Add new member (Complete)</b><hr>") else response.write("<body bgcolor=#ddffdd><font face='microsoft sans serif' size="0">") response.write("เพิ่มข้อมูลสมาชิกใหม่ (ถามย้ำ)<br>") response.write("<form action=http://thaiall.webhostme.com/aspmcfad.asp method=post>") response.write("ชื่อสมาชิก : " & request.form("name") ) response.write("<input type=hidden name=name value='" & request.form("name") & "'><br>") response.write("E-Mail : " & request.form("email") ) response.write("<input type=hidden name=email value='" & request.form("email") & "'><br>") response.write("ชื่อเว็บ : " & request.form("webname") ) response.write("<input type=hidden name=webname value='" & request.form("webname") & "'><br>") response.write("ที่อยู่เว็บ : " & request.form("address") ) response.write("<input type=hidden name=address value='" & request.form("address") & "'><br>") response.write("คำอธิบายเว็บ : <br>" & request.form("describ") ) response.write("<input type=hidden name=describ value='" & request.form("describ") & "'><br>") response.write("<input type=hidden name=confirm value='OK'>") response.write("<input type=submit value='Add member (Confirm)'>") response.write("</form>") end if %> <a href=/aspmcfls.asp>Display last 10 members</a> <br>Back to [ <a href=/aspmcfad.htm>Add</a>, <a href=/aspmcfdl.htm>Delete</a>, <a href=/aspmcfed.htm>Edit</a> ] </body> ดูเฉพาะ Source code เท่านั้น |
การลบสมาชิก |
เพิ่มการถามย้ำ การลบข้อมูล จากบทเรียน การทำระบบสมาชิกใน access โดยครั้งแรก ถามเฉพาะรหัส แล้วไปเลือกข้อมูลมาแสดง แล้วถามว่าจะลบ หรือไม่ Download แฟ้ม member01.mdb เพื่อนำไปทดสอบโปรแกรม ASP ที่เขียนในบทนี้ได้ และแฟ้มทั้งหมดที่ทดสอบ ผมเก็บที่ thaiall.webhostme.com แต่คำอธิบายบทเรียนเก็บที่ www.thaiall.com/asp/ |
ตัวอย่างฟอร์ม /aspmcfdl.htm | Source code ของ /aspmcfdl.htm |
ลบข้อมูลสมาชิก (มีการถามย้ำ ก่อนลบจริง) Click เรียกเฉพาะ form นี้ในหน้าต่างใหม่ |
<html><title>Delete member (With confirm on data)</title> <body bgcolor=#ffffdd><font face="microsoft sans serif"> ลบข้อมูลสมาชิก (มีการถามย้ำ ก่อนลบจริง)<br> <form action=http://thaiall.webhostme.com/aspmcfdl.asp method=post> รหัสสมาชิกที่ต้องการลบ : <input type="text" name=delid size="2"0><br> <input type=submit value="Delete member"><input type=reset value=Reset> </form> </body></html> |
Source code ของโปรแกรมลบระเบียน /aspmcfdl.asp |
<% if request.form("confirm") = "OK" then set connNews = server.createobject("ADODB.Connection") connNews.open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & server.mappath("/cgi-bin/member01.mdb") sql = "DELETE * FROM member WHERE (member.id= " & request.form("delid") & ");" set rsArticles = connNews.Execute(sql) connNews.close set connNews = nothing response.write("<body>") response.write("<b>Delete new member (Complete)</b><hr>") else thaialldbaccess97="DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & server.mappath("/cgi-bin/member01.mdb") Set rec = Server.CreateObject("ADODB.Recordset") sql = "select * from member WHERE (member.id= " & request.form("delid") & ");" rec.Open sql, thaialldbaccess97 i = 1 if Not rec.eof then rec.MoveFirst response.write("<body bgcolor=#ddffdd><font face='microsoft sans serif' size="0">") response.write("ลบข้อมูลสมาชิกใหม่ (ถามย้ำ)<br>") response.write("<form action=http://thaiall.webhostme.com/aspmcfdl.asp method=post>") response.write("รหัสสมาชิก : " & rec("id") ) response.write("<input type=hidden name=delid value=" & rec("id") & "><br>") response.write("ชื่อสมาชิก : " & rec("name") ) response.write("<input type=hidden name=name value='" & rec("name") & "'><br>") response.write("E-Mail : " & rec("email") ) response.write("<input type=hidden name=email value='" & rec("email") & "'><br>") response.write("ชื่อเว็บ : " & rec("webname") ) response.write("<input type=hidden name=webname value='" & rec("webname") & "'><br>") response.write("ที่อยู่เว็บ : " & rec("address") ) response.write("<input type=hidden name=address value='" & rec("address") & "'><br>") response.write("คำอธิบายเว็บ : " & rec("describ") ) response.write("<input type=hidden name=describ value='" & rec("describ") & "'><br>") response.write("<input type=hidden name=confirm value='OK'>") response.write("<input type=submit value='Delete member (Confirm)'>") response.write("</form>") else response.write("Not found") end if end if %> <a href=/aspmcfls.asp>Display last 10 members</a> <br>Back to [ <a href=/aspmcfad.htm>Add</a>, <a href=/aspmcfdl.htm>Delete</a>, <a href=/aspmcfed.htm>Edit</a> ] </body> ดูเฉพาะ Source code เท่านั้น |
การแก้ไขสมาชิก |
เพิ่มการถามย้ำ การลบข้อมูล จากบทเรียน การทำระบบสมาชิกใน access จะถามเฉพาะรหัสก่อน แล้วนำไปเลือกข้อมูลในแฟ้มมาให้แก้ไข ต่างจากเดิม ที่นำข้อมูลใหม่ไปทับทันที Download แฟ้ม member01.mdb เพื่อนำไปทดสอบโปรแกรม ASP ที่เขียนในบทนี้ได้ และแฟ้มทั้งหมดที่ทดสอบ ผมเก็บที่ thaiall.webhostme.com แต่คำอธิบายบทเรียนเก็บที่ www.thaiall.com/asp/ |
ตัวอย่างฟอร์ม /aspmcfed.htm | Source code ของ /aspmcfed.htm |
แก้ไขข้อมูลสมาชิก (แสดงข้อมูลเดิมมาให้แก้ไข) Click เรียกเฉพาะ form นี้ในหน้าต่างใหม่ |
<html><title>Edit member (With old record)</title> <body bgcolor=#ffffdd><font face="microsoft sans serif"> แก้ไขข้อมูลสมาชิก (แสดงข้อมูลเดิมมาให้แก้ไข)<br> <form action=http://thaiall.webhostme.com/aspmcfed.asp method=post> รหัสสมาชิก : <input type="text" name=id size="2"0> (ต้องมีอยู่ในฐานข้อมูลแล้ว)<br> <input type=submit value="Edit member"><input type=reset value=Reset> </form> </body></html> |
Source code ของโปรแกรมแก้ไขข้อมูล /aspmcfed.asp |
<% if request.form("confirm") = "OK" then set connNews = server.createobject("ADODB.Connection") connNews.open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & server.mappath("/cgi-bin/member01.mdb") sql = "UPDATE member set " sql = sql & " member.name = '" & request.form("name") & "', " sql = sql & " member.email = '" & request.form("email") & "', " sql = sql & " member.webname = '" & request.form("webname") & "', " sql = sql & " member.address = '" & request.form("address") & "', " sql = sql & " member.describ = '" & request.form("describ") & "' " sql = sql & " Where member.id = " & request.form("id") & " ;" set rsArticles = connNews.Execute(sql) connNews.close set connNews = nothing response.write("<body>") response.write("<b>Edit member (Complete)</b><hr>") else thaialldbaccess97="DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & server.mappath("/cgi-bin/member01.mdb") Set rec = Server.CreateObject("ADODB.Recordset") sql = "select * from member WHERE (member.id= " & request.form("id") & ");" rec.Open sql, thaialldbaccess97 i = 1 if Not rec.eof then rec.MoveFirst response.write("<body bgcolor=#ddffdd><font face='microsoft sans serif' size="0">") response.write("ปรับปรุงข้อมูลสมาชิกใหม่ (ถามย้ำ)<br>") response.write("<form action=http://thaiall.webhostme.com/aspmcfed.asp method=post>") response.write("รหัสสมาชิก : " & rec("id") ) response.write("<input type=hidden name=id value=" & rec("id") & "><br>") response.write("ชื่อสมาชิก : ") response.write("<input type="text" name=name value='" & rec("name") & "'><br>") response.write("E-Mail : ") response.write("<input type="text" name=email value='" & rec("email") & "'><br>") response.write("ชื่อเว็บ : ") response.write("<input type="text" name=webname value='" & rec("webname") & "'><br>") response.write("ที่อยู่เว็บ : ") response.write("<input type="text" name=address value='" & rec("address") & "'><br>") response.write("คำอธิบายเว็บ : ") response.write("<textarea rows=3 cols=40 name=describ>" & rec("describ") & "</textarea>") response.write("<input type=hidden name=confirm value='OK'>") response.write("<input type=submit value='Edit member (Confirm)'>") response.write("</form>") else response.write("Not found") end if end if %> <a href=/aspmcfls.asp>Display last 10 members</a> <br>Back to [ <a href=/aspmcfad.htm>Add</a>, <a href=/aspmcfdl.htm>Delete</a>, <a href=/aspmcfed.htm>Edit</a> ] </body> ดูเฉพาะ Source code เท่านั้น |
การพิมพ์ข้อมูลสมาชิกล่าสุด 10 คน |
หัวข้อนี้จะใช้แฟ้มที่เกี่ยวข้อง 2 แฟ้มคือ /cgi-bin/member01.mdb และ /aspmbrls.asp 1. /aspmbrls.asp ทำหน้าที่อ่านข้อมูลสมาชิก 10 คนสุดท้ายมาแสดง เท่านั้น 2. /cgi-bin/member01.mdb แฟ้มที่ให้ข้อมูล เพื่อนำไปทำรายงาน ของสมาชิก Download แฟ้ม member01.mdb เพื่อนำไปทดสอบโปรแกรม ASP ที่เขียนในบทนี้ได้ และแฟ้มทั้งหมดที่ทดสอบ ผมเก็บที่ thaiall.webhostme.com แต่คำอธิบายบทเรียนเก็บที่ www.thaiall.com/asp/ |
Source code ของโปรแกรมแสดงข้อมูลสมาชิก /aspmbrls.asp |
<% thaialldbaccess97="DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & server.mappath("/cgi-bin/member01.mdb") Set rec = Server.CreateObject("ADODB.Recordset") sql = "select * from member order by member.id DESC;" rec.Open sql, thaialldbaccess97 %> <html><head><title>รายชื่อสมาชิกใหม่ 10 คน</title></head> <body bgcolor="#ffffdd"><font face="microsoft sans serif"> รายชื่อสมาชิกใหม่ 10 คน (Display last 10 members)<hr> <ul> <% i = 1 if Not rec.eof then rec.MoveFirst do while Not rec.eof and i <= 10 response.write( "<b>รหัสสมาชิก</b> : " & rec("id") &"<br>") response.write( "<b>ชื่อสมาชิก</b> : " & rec("name") &"<br>") response.write( "<b>E-mail</b> : " & rec("email") &"<br>") response.write( "<b>ชื่อเว็บ</b> : " & rec("webname") &"<br>") response.write( "<b>ที่อยู่เว็บ</b> : " & rec("address") &"<br>") response.write( "<b>คำอธิบายเว็บ</b> : " & rec("describ") &"<hr>") rec.MoveNext i = i + 1 loop %> </ul> </body></html>Click ที่นี่ เพื่อแสดงข้อมูลสมาชิกล่าสุด 10 คน ดูเฉพาะ Source code เท่านั้น |
การนับระเบียนในแฟ้ม |
หัวข้อนี้ง่ายไม่ serious ใช้เพื่อนับระเบียนในแฟ้ม Download แฟ้ม member01.mdb เพื่อนำไปทดสอบโปรแกรม ASP ที่เขียนในบทนี้ได้ และแฟ้มทั้งหมดที่ทดสอบ ผมเก็บที่ thaiall.webhostme.com แต่คำอธิบายบทเรียนเก็บที่ www.thaiall.com/asp/ |
Source code ของโปรแกรมแสดงข้อมูลสมาชิก /aspmbrct.asp |
<html><title>Total record</title> <body bgcolor="#ffffdd"> <% thaialldbaccess97="DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & server.mappath("/cgi-bin/member01.mdb") set rec = Server.CreateObject("ADODB.Recordset") sql = "select * from member order by member.id" rec.Open sql, thaialldbaccess97 totrec=rec.recordcount response.write "<br>แปลกครับ http://www.learnasp.com/learn/dbcount.asp ก็ใช้แบบ reccount ได้ แต่ลองแล้ว ไม่ได้<br>" response.write "Total record : " & rec.recordcount & "<hr>" response.write "จึงต้องใช้วิธีนับแบบข้างล่างนี้แทน ทดสอบที่ webhostme.com<br>" cntrec = 0 if Not rec.eof then rec.MoveFirst do while Not rec.eof cntrec = cntrec + 1 rec.movenext loop response.write "Total record : " & cntrec rec.close set rec=nothing %> </body></html>Click ที่นี่ เพื่อแสดงจำนวนระเบียนในแฟ้ม ดูเฉพาะ Source code เท่านั้น |
แบบฝึกหัด |
|