ASP.NET Uthai ShiangJan Information and Communication Technology.

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
Chapter IV : สร้างการติดต่อ
Advertisements

เอกสารประกอบการบรรยาย เรื่อง ASP and Database
สถาปัตยกรรม ActiveX Data Object (ADO)
การเขียนคำสั่งเชื่อมต่อฐานข้อมูล
ASP [ # 11 ] เตรียมความพร้อมก่อนติดต่อกับ Ms Access
ASP:ACCESS Database.
Seree Chinodom Recordset Object Seree Chinodom Computer Science, BUU.
ASP:ACCESS Database.
Php with Database Professional Home Page :PHP
แก้ไขข้อมูลที่ไม่สามารถกรอกเป็นภาษาไทยได้
การเข้าถึงฐานข้อมูล ด้วยกลุ่ม object ADO.NET
ASP เตรียมความพร้อมก่อนติดต่อกับ Ms Access การนำข้อมูลจากตารางมาแสดง
การแก้ปัญหาการใช้งาน ADO กับ Database อุทัย เซี่ยงเจ็น สำนักวิชาเทคโนโลยีสารสนเทศ และการสื่อสาร มหาวิทยาลัยนเรศวร วิทยาเขต สารสนเทศพะเยา.
CHAPTER 14 Database Management
บทที่ 6 บทที่ 6 คำสั่งแก้ไขปัญหาแบบ เลือก (CONDITION)
JSP ติดต่อฐานข้อมูล.
แนะนำการใช้งานระบบโทรศัพท์ ผ่านอินเทอร์เน็ต (VoIP) กลุ่มสารสนเทศ สนผ. สพฐ.
1.NET Framework Class อุทัย เซี่ยงเจ็น สำนักวิชาเทคโนโลยีสารสนเทศ และการสื่อสาร มหาวิทยาลัยนเรศวร วิทยาเขต สารสนเทศพะเยา.
ระบบฐานข้อมูลตรวจวัดคุณภาพน้ำ
Server Object. 2 z ใช้ในการควบคุม และบริหารเว็บเซิร์ฟเวอร์ ซึ่งทำด้วยการเขียนสคริปต์ใน แอปพลิเคชั่น ASP ( โดยเรียกใช้เมธอด หรือกำหนดค่าพรอพเพอร์ตี้ของ.
การใช้งานโปรแกรม SPSS
คู่มือการใช้งานระบบบริหารจัดการเอกสารภายในองค์กร เชื่อมต่อระบบสารบรรณ
สำนักวิชาเทคโนโลยีสารสนเทศและการสื่อสาร มหาวิทยาลัยนเรศวร พะเยา
Computer in Business เรื่อง การใช้งาน Access เบื้องต้น.
1. Select query ใช้สำหรับดึงข้อมูลที่ต้องการ
ระบบบริหารงานบุคคล.
การวิเคราะห์ขั้นตอนวิธีการแก้ปัญหา
และสร้างเว็บไซต์ประเภทCMS
เทคโนโลยีอินเตอร์เน็ต
1 การใช้งานระบบจัดการ ฐานข้อมูล Mysql ผ่าน phpmyadmin.
หน่วยการเรียนรู้ การเขียน โปรแกรมภาษาขั้นพื้นฐาน เรื่อง คำสั่ง HTML 5 การแทรก รูปภาพและการเชื่อมโยง รหัส รายวิชา ง การงาน อาชีพและเทคโนโลยี 6 กลุ่มสาระ.
ยินดีต้อนรับผู้เข้าอบรมการพัฒนาเว็บไซต์ สำนักงานการปฏิรูปที่ดินเพื่อเกษตรกรรม.
คู่มือสำหรับผู้สมัครงาน ระบบนัดพบตลาดงานเชิง คุณภาพ ( นัดพบ IT )
การสร้างฐานข้อมูลใหม่ หมายถึง การสร้างแฟ้มข้อมูลใหม่บน Access สามารถกำหนด ได้ดังต่อไปนี้ ภาพแสดงการสร้างฐานข้อมูลใหม่
LOGO ภาษาซี 1.1 อ. กฤติเดช จินดาภัทร์. LOGO ตัวอย่างโค้ดภาษาซี
การออกแบบโครงสร้างข้อมูล การออกแบบโครงสร้างข้อมูล หมายถึง กรณีสร้างตารางใหม่ด้วย ออกแบบตาราง (Table Design) เพื่อต้องการกำหนด โครงสร้างด้วยตนเอง โดยมีขั้นตอนการ.
โดย ภก.อรรถกร บุญแจ้ง เภสัชกรชำนาญการ โรงพยาบาลมหาชนะชัย.
คำสั่งควบคุมการทำงาน
stack #2 ผู้สอน อาจารย์ ยืนยง กันทะเนตร
การติดต่อฐานข้อมูลและการแสดงผล
การติดต่อกับฐานข้อมูล(MySQL)
บทที่ 10 การเชื่อมต่อฐานข้อมูล
Introduction to VB2010 EXPRESS
หน่วยการเรียนที่ 6 เรื่อง การจัดการฐานข้อมูลด้วย PHP Function
Introduction SQLite Prawit Pimpisan Computer Science RERU.
เอกสารประกอบการบรรยายรายวิชา Web Technology
Training Admin Docushare
บทที่ 1 สถาปัตยกรรมของระบบฐานข้อมูล (Database Architecture)
การติดต่อฐานข้อมูลและการแสดงผล
การพัฒนาการใช้งานในระบบเว็บ
โครงสร้างภาษา C Arduino
Work Shop 1.
บทที่ 7 การเขียนโปรแกรม แบบวนรอบทำซ้ำ (Loop)
การติดต่อฐานข้อมูลและการแสดงผล
บทที่ 8 เงื่อนไขตัดสินใจ
การอบรมการใช้งานโปรแกรม RTCM
การประยุกต์ใช้ Dreamweaver MX ด้วย ภาษา PHP & Database Mysql
การใช้งานฐานข้อมูล H.W. Wilson
ความหมายของการประกันคุณภาพการพยาบาล
หน่วยที่ 3 การประมวลผลข้อมูลให้เป็นสารสนเทศ
รายงานการระบาดศัตรูพืช
โครงการจัดทำระบบจัดเก็บข้อมูลการใช้งาน และประเมินคุณภาพอุปกรณ์ไฟฟ้า
อาจารย์อภิพงศ์ ปิงยศ ปฏิบัติการที่ 1 : การสร้างการเชื่อมต่อบนอุปกรณ์แอคเซสพอยต์ไร้สาย สธ313 การสื่อสารข้อมูลและเครือข่ายคอมพิวเตอร์ทางธุรกิจ.
คณิตศาสตร์ 1 รหัสวิชา
การสร้างแบบสอบถาม และ การกำหนดเงื่อนไข.
หน่วยการเรียนรู้ การเขียนโปรแกรมภาษาขั้นพื้นฐาน เรื่อง โครงสร้างพื้นฐาน HTML 5 รหัส รายวิชา ง23102 การงานอาชีพและเทคโนโลยี 6 กลุ่มสาระ การงานอาชีพและเทคโนโลยี
การสมัครเข้าใช้งานโปรแกรม (การขอ Username/ Password)
อินเทอร์เน็ตเบื้องต้น และการออกแบบเว็บไซต์
นวัตกรรม ขวดเก็บ Sputum culture
การเขียนโปรแกรมด้วยภาษาไพทอน การเขียนโปรแกรมแบบทางเลือก
ใบสำเนางานนำเสนอ:

ASP.NET Uthai ShiangJan Information and Communication Technology. Naresuan University

เนื้อหา ทบทวน HTML, ASP เบื้องต้น การสร้างฟอร์มสำหรับล็อกอินเพื่อเข้าใช้งานระบบ (Login.asp) ASP.NET

การล็อกอินเข้าใช้งานระบบ การเข้าใช้งานอินเทอร์เน็ต จำเป็นต้องมีการล็อกอิน เข้าใช้งานระบบเพื่อยืนยันตัวตนของผู้ใช้ การล็อกอินเข้าใช้งานระบบ ประกอบด้วย ชื่อผู้ใช้งานระบบ (User Name) รหัสผ่าน (Password) ระดับการใช้งาน (Priority) อื่นๆ

Login.asp กรอกข้อมูล User Name & Password (Login.asp) (checkLogin.asp) Database Login = OK No Yes แสดงเมนูหลักสำหรับใช้งานระบบ (mainmenu.asp)

ขั้นตอนการทำงาน ออกแบบ หน้า Login.asp เพื่อรับข้อมูล ส่งค่าที่ได้ไปให้กับหน้า checkLogin.asp หน้า checkLogin.asp รับค่า Username และ Password ที่ Login.asp ส่งมาให้ เขียนภาษา SQL เพื่อเรียกดู Username และ Password ข้างต้นจากตาราง Login ในฐานข้อมูล สร้างตัวแปร Recordset เพื่อทำการประมวลผล คำสั่ง SQL ข้างต้น ตรวจสอบว่า การ Login = OK? ทำการ Redirect ไปยังหน้าเว็บเพจที่เราต้องการ

การออกแบบ Login.asp สร้างเว็บเพจ เพื่อรับค่า User Name และ Password <html><body> <form action="checkLogin.asp" method="post"> ชื่อผู้ใช้:<input type="text" name="username"> <br> รหัสผ่าน:<input type="password" name="passwd"><br> <input type="submit" value="OK"> <input type="reset"> </form></body></html>

checkLogin.asp รับค่า User Name และ Password ที่ส่งมาจาก Login.asp เชื่อมต่อกับข้อมูลในฐานข้อมูล เรียกค้นข้อมูล User Name และ Password จากฐานข้อมูล เปรียบเทียบ และตรวจสอบความสามารถในการใช้งาน มีสิทธิเข้าใช้งาน => mainmenu.asp ไม่มีสิทธิเข้าใช้งาน => Login.asp

รับค่า Username และ Password ที่ส่งมาจาก Login.asp <% Dim Username, Password Username = Request.Form("username") Password = Request.Form("passwd") %>

สร้างฐานข้อมูลที่จัดเก็บข้อมูลล็อกอิน ตาราง Login ชื่อ Field (เขตข้อมูล) ชนิดข้อมูล UserName (PK) TEXT(10) Password

เชื่อมต่อกับข้อมูลในฐานข้อมูล <% Dim sProvider sProvider="DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & server.mappath("/Path of Database/myDB.mdb") %> บันทึก Code ข้างต้นไว้ในแฟ้มชื่อ Connect.asp เวลาใช้งานจริงให้อ้าง <!-- #include virtual="/Path of File/Connect.asp" --> หมายเหตุ: Path ของ Database และ include file ต้องอยู่ภายใต้ c:\Inetpub\wwwroot\folder ที่เราสร้างขึ้นเพื่อจัดเก็บ ดังนั้น Path of Database และ Path of File จะมีค่าเท่ากับ folder ที่เราสร้างขึ้นเพื่อจัดเก็บแฟ้มทั้ง 2 ข้างต้น

Path of File C:\ Inetpub wwwroot myFolder Connect.asp แทน Folder db Server.mappath("/myFolder/db/myDB.mdb") C:\ <!-- #include virtual="/myFolder/Connect.asp") --> Inetpub wwwroot myFolder Connect.asp แทน Folder db แทน File myDB.mdb

การเรียกค้นข้อมูล Username และ Password จากฐานข้อมูล การเรียกค้นหาข้อมูลจากฐานข้อมูล ต้องใช้ ภาษา SQL สมมติให้ Username='admin' และ Password='123' สามารถเขียน SQL ได้ดังนี้ SELECT Username, Password FROM Login WHERE Username='admin' AND Password='123'

การเรียกค้นข้อมูล Username และ Password จากฐานข้อมูล เราต้องแปลงภาษา SQL ให้อยู่ในรูปคำสั่งที่ ASP เข้าใจ โดยที่จะมีการต่อ String ของ Username และ Password ที่รับเข้ามา สามารถเขียน SQL ได้ดังนี้ Dim strSQL, Username, Password Username = Request.Form("username") ' รับค่า Username Password = Request.Form("passwd") ' รับค่า Password strSQL = SELECT Username, Password FROM Login WHERE Username='" & Username & "' AND Password='" & Password & "'"

การตรวจสอบว่า Username และ Password ถูกต้องหรือไม่? (Login = OK?) เราต้องเอา SQL ที่ได้ไปตรวจสอบกับตารางว่ามี Username และ Password นี้ในฐานข้อมูลหรือไม่? เปิดการเชื่อมต่อกับ Recordset โดยการใช้เมธอด Open ตรวจสอบดูว่ามีการ ส่ง Record กลับมาจากการ Open หรือไม่ โดยใช้คุณสมบัติ EOF (End Of File) ถ้า EOF = True แสดงว่า ไม่พบข้อมูล Username และ Password ที่ต้องการ เราก็ให้ระบบ Redirect ไปหน้า Login.asp ใหม่ ถ้า EOF = False แสดงว่า พบข้อมูล Username และ Password ที่ต้องการ เราก็ให้ระบบ Redirect ไปหน้า mainmenu.asp

เปิดการเชื่อมต่อกับตาราง Dim rs Set rs = Server.CreateObject("ADODB.RecordSet") rs.Open strSQL, sProvider, 1, 1 'เปิดการเชื่อมต่อ If rs.EOF Then ' กรณีไม่พบข้อมูล Response.Redirect("Login.asp") Else ' กรณีพบข้อมูล Response.Redirect("mainmenu.asp") End If rs.Close ' ปิดการเชื่อมต่อ Set rs = Nothing ' คืนพื้นที่ให้กับหน่วยความจำ

ขั้นตอนการทำงาน รับข้อมูลในหน้า Login.asp ส่งค่าที่ได้ไปให้กับหน้า checkLogin.asp หน้า checkLogin.asp รับค่า Username และ Password ที่ Login.asp ส่งมาให้ เขียนภาษา SQL เพื่อเรียกดู Username และ Password ข้างต้นจากตาราง Login ในฐานข้อมูล สร้างตัวแปร Recordset เพื่อทำการประมวลผล คำสั่ง SQL ข้างต้น ตรวจสอบว่า การ Login = OK? ทำการ Redirect ไปยังหน้าเว็บเพจที่เราต้องการ

<!--#include virtual="/4533xxxx/Connect.asp" --> <% Dim Username, Password Dim strSQL Dim rs Username = Request.Form("username") Password = Request.Form("passwd") strSQL = "SELECT * FROM LOGIN WHERE Username='" & Username & "' AND Password='" & Password & "'" Set rs = Server.CreateObject("ADODB.RecordSet") rs.Open strSQL, sProvider, 1, 1 ' เปิดการเชื่อมต่อ If rs.EOF Then ' ไม่พบข้อมูลผู้ใช้และรหัสผ่านที่ต้องการ Response.Redirect("Login.asp") Else ' พบข้อมูลผู้ใช้และรหัสผ่านถูกต้อง Response.Redirect("mainmenu.asp") End If rs.Close ' ปิดการเชื่อมต่อ Set rs = Nothing ' คืนหน่วยความจำ %>

การป้องกันไม่ให้ถูก Hack การใช้ตัวแปร Session การป้องกัน SQL Injection

การใช้ตัวแปร Session If rs.EOF Then ' กรณีไม่พบข้อมูล Response.Redirect("Login.asp") Else ‘ กรณีพบข้อมูล Session("CanProcess") = "True" Response.Redirect("mainmenu.asp") End If

Mainmenu.asp ทำการแก้ไข Mainmenu.asp โดยเพิ่ม CODE ในส่วนบนสุด <% If Session("CanProcess") <> "True" Then Response.Redirect("Login.asp") End If %>

การป้องกัน SQL Injection ทำการแก้ไข checkLogin.asp <% Dim Username, Password Username = Replace(Request.Form("username"), "'", "''") Password = Replace(Request.Form("passwd"), "'", "''") %>