130 likes | 269 Views
ASP [#15]. การใช้งาน ASP กับ Mysql ผ่าน ODBC การทำสมุดเยี่ยม Guestbook การทำโหวต Vote. การใช้งาน ASP กับ Mysql ผ่าน ODBC. มีสมาชิกหลายท่านแนะนำมาเกี่ยวกับการเขียน ASP ร่มกับ Mysql ซึ่งปกติแล้วมันก็ไม่ต่างอะไรกับ ASP กับ Access หรือว่า ASP กับ SQL Server
E N D
ASP [#15] การใช้งาน ASP กับ Mysql ผ่าน ODBC การทำสมุดเยี่ยม Guestbook การทำโหวต Vote
การใช้งาน ASP กับ Mysql ผ่าน ODBC • มีสมาชิกหลายท่านแนะนำมาเกี่ยวกับการเขียน ASP ร่มกับ Mysql ซึ่งปกติแล้วมันก็ไม่ต่างอะไรกับ ASP กับ Accessหรือว่า ASP กับ SQL Server • เพียงแต่สามารถติดต่อผ่าน Driver ของ ODBC ซึ่งการกำหนด DSN Name ให้กับ Mysql ต้องทำการติดตั้งโปรแกรม My ODBC ซึ่งเป็นโปรแกรมที่ทำมาในกรณีต้องการติดต่อกับ Mysql ผ่าน ODBC • Downloads หรือที่เว็บไซต์ http://www.mysql.com
ขั้นที่ 1 การสร้างฐานข้อมูลและตาราง • ชื่อฐานข้อมูล : mydatabaseDump ตารางและข้อมูลดังนี้CREATE TABLE `member` (`id` int(5) NOT NULL auto_increment,`user` varchar(20) NOT NULL default '',`pass` varchar(20) NOT NULL default '',PRIMARY KEY (`id`)) TYPE=MyISAM AUTO_INCREMENT=5 ; • INSERT INTO `member` VALUES (1, 'win', '001');INSERT INTO `member` VALUES (2, 'onizuka', '002');INSERT INTO `member` VALUES (3, 'Sun', '003');INSERT INTO `member` VALUES (4, 'Max', '004');
ขั้นที่ 2 การสร้าง ODBC เพื่อ Set DNS Name • ให้เปิด Data Sources (ODBC) ถ้าเป็น Window XP,NT,200x จะอยู่ใน Control Panel \Administrative Toolsถ้า Win95,98,Me จะอยู่ใน Control Panel
เลือกขั้นตอนดังรูป และเลือก Driver ของ Mysql ODBC ซึ่งเป็น Driver ที่เราได้ทำการติดตั้งเพิ่มขึ้นมา
คลิกที่ Test Data Source เพื่อทดสอบ ถ้าแสดงดังรูปแสดงว่าการสร้างสำเร็จครับ เลือก OK เพื่อยืนยันการสร้าง
ขั้นที่ 3 ขั้นตอนการเขียน Code เพื่อเรียกข้อมูลในตารางมาใช้งาน • สำหรับการติดต่อกับ Mysql ผ่าน ODBC รูปแยยคำสั่งจะเหมือนกับ ASP+Access หรือ ASP+Sql Server เพียงแต่เป็นการเรียกจาก Data Source Name ซึ่งสามารถดูและศึกษาส่วนอื่น ๆ ได้จากหัวข้อ บทเรียน ASP • รูปแบบการติดต่อกับ Mysql Set Conn=Server.Createobject("ADODB.Connection")Conn.Open "DSN-Name","Mysql-User","Mysql-Password"เช่นSet Conn=Server.Createobject("ADODB.Connection")Conn.Open "mysample","root",""
<%Set Conn=Server.Createobject("ADODB.Connection")Conn.Open "mysample","root",""sql ="Select * From member"Set Rs = Conn.Execute(sql)If Rs.EOF Then%>ไม่มีข้อมูลในตาราง !<%Else%><table width="139" border="1"><tr bgcolor="Silver"> <td>id</td><td>barcode</td></tr><% While Not Rs.EOF%><tr> <td><%= Rs("user")%></td><td><%= Rs("pass")%></td></tr><% Rs.MoveNextWendRs.CloseConn.CloseEnd If%></table> Sam14-1.asp
การทำสมุดเยี่ยม Guestbook โดย DB • การทำสมุดเยี่ยมแบบติดต่อกับฐานข้อมูล Microsoft Access • ฐานข้อมูลชื่อ Guestbook.MDB ประกอบด้วยตารางชื่อ Guestbook และมีฟิลด์ดังต่อไปนี้
การทำสมุดเยี่ยม Guestbook (ต่อ) Guestbook.asp <html> <head> <title>guest book</title> </head> <body> <p align="center"><font color= "Navy" MS Sans Serif">สมุดเยี่ยมชมเว็บไซต์เรา</font></p> <form action="guestbook.asp" method="post"> <div align="center"> <% Dim SpamProtect If Session("SpamProtect")=Null Then Session("SpamProtect")=False End If Name= request.form("name") Email=request.form("email") Message=request.form("message") R_IP = Request.ServerVariables("Remote_Addr") HostName = Request.ServerVariables("remote_Host") set conn=Server.CreateObject("ADODB.Connection") strConn="DRIVER={Microsoft Access Driver (*.mdb)}; DBQ="&Server.Mappath("Guestbook.mdb") set rs=server.createobject("adodb.recordset") rs.open "select * from guestbook ", strConn, 1, 3 ติดต่อ DB
เพิ่มข้อมูล if (name <> "" AND Session("SpamProtect")=False) then rs.AddNew rs("Name")=Name rs("Email")=Email rs("IP_ADDR")=R_IP rs("HostName")=HostName rs("VisitedDate")=date() rs("Message")=Message rs.Update Session("SpamProtect")=True end if If not(rs.eof) Then rs.MoveFirst End If %> <table width=90% border="0" cellpadding="2"> <% while not rs.eof %> <tr><td bgcolor="#d1d1d1">จาก : <%=rs("Name")%> เมื่อ : <%=rs("VisitedDate") %> E-mail : <a href=mailto:<%=rs("Email")%>><%=rs("Email")%></a></td></tr> <tr><td bgcolor="#e3e3e3"> <%=rs("Message")%></td></tr> <tr><td> </td></tr> <% rs.movenext wend rs.Close set rs=Nothing %> </table> แสดงข้อมูลเป็นตาราง
<hr> <p align="center"><font color="Navy" face="MS Sans Serif">กรุณาลงนามและข้อเสนอแนะ</font></p> <table border="0" bgcolor=""> <tr> <td align="right">ชื่อ</td> <td><input type="text" name="name" size="25"></td> </tr> <tr><td align="right">อีเมล์</td> <td><input type="text" name="email" size="25"></td> </tr> <tr><td align="right">ข้อเสนอแนะ</td> <td><textarea name="message" rows="3" cols="25" style="font-size: 20px;"></textarea></td> </tr> </table> <input type="submit" value="ส่งข้อความ"> <hr> </div> </form><br> </body> </html> ฟอร์มป้อนข้อมูล
แบบฝึกหัด • ทำแบบสำรวจ Vote โดยเรียกจากฐานข้อมูล • จากนั้นให้แสดงภาพกราฟฟิคบนหน้า Browser • ให้เพิ่มโหวตทีละ 1 เมื่อมีกด submit คิดเป็นเปอร์เซ็นต์แล้วแสดงไฟล์ที่2 ผลการโหวต JSP ASP PHP ASP.Net คุณชอบเรียนโปรแกรมอะไร JSP ASP PHP ASP.Net submit