การเขียนโปรแกรมภาษา ASP

            
               

sample3.asp Element จาก QueryString

<%
=Request.QueryString("data-name")
'หรือ
var-name=Request.QueryString("data-name")
%>
Object นี้จะควบคุม และจัดการเกี่ยวกับการส่งข้อมูลจาก Server ไปยัง Browser หรือ เครื่อง Client ไม่ว่าจะเป็น ข้อความ, ภาพ, เสียง, HTML , HTTP Header และ Cookie
Properties ของ Reponse Object

Buffer
เป็นการเลือกว่า จะกักข้อมูลไว้ก่อนที่ส่งไปให้กับ Browser โดยจะส่งข้อมูล ที่สมบูรณ์ไปให้ทีเดียว หรือไม่ (True หรือ False) ซึ่งในการใช้ Buffer จะมีผลตั้งแต่บรรทัดแรกที่เรากำหนดว่า จะมีการใช้ Buffer หรือไม่ เพราะฉนัน้นเราจึง กำหนดให้อยู่ในบรรทัดแรกของ Web page และไม่ยอมให้มีการเปลี่ยนค่า หลังจากที่ส่งข้อมูลใด ๆ ให้ Browser ไปแล้ว
รูปแบบ Response.Buffer [=flag] เช่น Response.Buffer=True

CacheControl
เป็นการกำหนดว่าจะยอมให้ Proxy Server จะ Cache Output หรือไม่
รูปแบบ Response.CaseControl
CharSet
เป็นการกำหนดรูปแบบการแสดงผลประเภทข้อความ ที่จะแสดงที่ Browser
รูปแบบ Response.CharSet

Expires
เป็นการกำหนดเวลา(หน่วยเป็น นาที) ที่Web page จะหมดอายุจาก Cache ของ Browser
รูปแบบ Response.Expires

ExpiresAbolute
การระบุวัน/วันลา ที่ชัดเจนที่ Web page จะหมดอายุ ใน Ccache ของ Browser
รูปแบบ Response.ExpireAbsolute

IsClientContented
การเพิ่มความสามารถของ Session Object โดยจะถามว่า Browser ยังเชื่อมต่อกับ Web Server อยู่หรือไม่
รูปแบบ Response.IsclientContented()

Status
การแสดงสถานะที่เป็นผลลัพธ์ ของการตอบสนองของ Web Server ต่อ การร้องขอข้อมูลจาก Browser ซึ่งมักจะถูกนำไปใช้ย่อย ๆ ในการบังคับให้ผู้ใช้งานป้อนรหัสผ่านก่อนใช้ Web page
รูปแบบ Response.Status
Method ของ Reponse Object

ใช้เมธอดของ Response Object ในการส่งข้อมุลต่าง ๆ จาก Web Server ไปยัง Browser Write
เขียนสตริงไปยัง HTTP output ปัจจุบัน

write
เป็นการแสดงข้อความหรือเอกสาร สามารถแสดงได้ทั้งข้อความ และ ค่าตัวแปร รวมทั้งจาก Element หรือ Collection อื่น ๆ
รูปแบบ
Response.write("ข้อความ") หรือ Response.write "ข้อความ"
Response.write (var-name)
Response.write Collection เช่น Response.write Request.Form("data-name) หรือ Response.write Request.Cookies("Cookie-name")

BinaryWrite
เขียนสตริงไปยัง HTTP output ปัจจุบัน โดยไม่ต้องการปแลงชนิดของตัวอักษร
รูปแบบ Response.BinaryWrite "String"

Clear
ลบเอกสาร HTML ที่อยู่ใน Buffer ของ Web Server
รูปแบบ Response.Clear

End
การนำข้อมูลที่อยู่ใน Buffer ของ Web Server ทั้งหมดส่งให้ Browser
รูปแบบ Response.End

Flush
การนำข้อมูลที่อยู่ใน Buffer ที่มีอยู่ ณ ขณะนั้นของ Web Server ส่งให้ Browser
รูปแบบ Response.Flash

Redirect
การย้าย Browser ไปอ่านข้อมูลใน Web page อื่น โดยใส่ Web Site ที่ต้องการเปลี่ยนที่ไป
รูปแบบ Response.Redirect "file-name"
AddHeader
เขียนสตริงไปยัง HTTP Header
รูปแบบ Response.AddHeader "String"

AppendToLog
เขียนสตริงลงที่ Log File ของ Web Server
รูปแบบ Response.AppendTolog "String"
ตัวอย่างการใช้ Response Object
Sapmle1.asp ใช้กับข้อความ
<%
Response.write("สวัสดีครับ ผมชื่อนายวีระชัย นุกิจรัมย์")
%>
Out Put
สวัสดีครับ ผมชื่อนายวีระชัย นุกิจรัมย์
sample2.asp การใช้กับ Collection อื่น ๆ
<%
Response.write Session("session-name")
%>
หรือ
<%
Response.write Request.Form("data-name")
%>

หรือ

<%
Response.write Request.cookies ("cookies-name")
%>
หรือ
<% 'กรณีใช้กับค่าของตัวแปร
Dim name
name="นายวีระชัย นุกิจรัมย์"
Response.write(name)
%>

Sample3.asp การย้ายการทำงานจาก Page หนึงไปยังอีก Page หนึงอย่างรวดเร็ว

<%
Response.Redirect "sample2.asp"
%>
Sample4.asp การเขียน String ลงที่ Log ไฟล์ลอง Server
<%
Response.AppendToLog "The Test Sample"
%>
sample5.asp การหยุดการทำงานหรือ เป็นการสั่งให้ Web Server หยุดการประมวลผล Script และส่งผลลัพธ์ที่ได้ก่อนหน้าการหยุดการประมวลผลมาที่ Browser

<%
Response.write "ข้อความตรงนี้จะแสดง"
Response.End
Response.write "ข้อความตรงนี้จะไม่แสดง"
%>
Out Put
ข้อความตรงนี้จะแสดง
สารถนำไปประยุกต์ให้เหมาะสมกับ Script ของเราได้อย่างดีครับ
การอ่านตัวแปรจากภายนอกที่ได้จากการ Web browser โดยวิธี GET หรือ POST
สมมุติว่า เรามีฟอร์มสำหรับให้ผู้ใช้ป้อนชื่อ (login) และรหัสผ่าน (password) จากนั้นก็ส่งมายัง Webserver และใช้สคริปต์ ASP เป็นตัวจัดการกับข้อมูลที่ส่งมาโดยวิธีการแบบ POST ตามตัวอย่าง

Sample1.asp
- แบบ Post

<form action="Sample2.asp" method="post">
<table>
<tr><td>login:</td>
<td><input type="text" name="login"></td>
</tr><br>
<tr><td>password:</td>
<td><input type="text" name="password"></td>
</tr><br>
</table>
<p><input type="submit">
</form>


Sample1.asp
- แบบ Get

<form action="Sample2.asp" method="get">
<table>
<tr><td>login:</td>
<td><input type="text" name="login"></td>
</tr><br>
<tr><td>password:</td>
<td><input type="text" name="password"></td>
</tr><br>
</table>
<p><input type="submit">
</form>
ภายในสคริปต์ Sample2.asp เราสามารถอ่านข้อมูลที่ส่งมาได้ ในกรณีนี้ ที่เราสนใจคือ ค่าจาก login และ password ที่อยูในฟอร์ม และสามารถจะอ่านข้อมูลเหล่านั้นได้ เพราะ ASP จะเก็บข้อมูลไว้ในตัวแปรชื่อ login และ password ตามลำดับ
โดยถ้าส่งแบบ Post จะอ่านโดยใช้ Request.Form("date-name") แบบ Get อ่านโดยใช้ Request.QueryString("date-name")

ตัวอย่างเช่น Sample2.asp อาจจะเป็นสคริปต์ง่ายๆดังนี้
ตัวอย่างไฟล์ Sample2.asp รับค่าแบบPost

<HTML>
<HEAD><TITLE> Result </TITLE></HEAD>
<BODY>
<P> Your login = <% Response.write Request.Form("login") %>
<BR> Your password = <% Response.write Request.Form("password") %>
</BODY>
</HTML>
ตัวอย่างไฟล์ Sample2.asp รับค่าแบบ Get

<HTML>
<HEAD><TITLE> Result </TITLE></HEAD>
<BODY>
<P> Your login = <% Response.write Request.QueryString("login") %>
<BR> Your password = <% Response.write Request.QueryString("password") %>
</BODY>
</HTML>
Element หลักที่ใช้ในการส่งข้อมูลจาก Browser ไปยัง Web Server
คำสั่งที่ใช้อ่านค่าจาก Element ของ Form
รูปแบบ
Request.form("data-name")
<%
=request.form("data-name")
%>
ถ้าต้องการอ่านค่าเก็บใว้ในตัวแปร
<%
var-name=request.form("data-name")
%>
คำสั่งที่ใช้ในการแสดงค่าของ Element หรือ ค่าของตัวแปร
รูปแบบ
Response.write ผลลัพธ์ที่ต้องการแสดง
ตัวอย่าง
<%
response.write("ข้อความ")
response.write(ชื่อตัวแปร)
%>
ดูเพิ่มเติมได้ครับ
- HTML Form
เป็นการกำหนดกรอบ ที่ข้อมูลที่จะมีการส่ง

รูปแบบ

<form=" [action=url]" name="ชื่อฟอร์ม" method="[post/get]">
.
code
.
</form>



- Submit
ช่วยส่งค่าจากส่วนประกอบต่างๆ ใน Form (Element) ไปยัง Web Server เพื่อทำการประมวลผล
รูปแบบ
<input type="submit" value="[comment]">

- Reset
จะทำหน้าที่ Clear ส่วนข้อมูลที่ได้ทำการใส่เข้าไปใน Textbox โดยจะทำการ Clear ข้อความใดๆ ที่ได้ทำการใส่เข้าไปใน Tab <Form> </form>
รูปแบบ
<input type="reset" value="Reset">

หากยังไม่เข้าใจลองมา ดูตัวอย่างซักตัวอย่างครับ


sample1.asp

<html>
<head>
<form name="form1" method="post" action="sample2.asp">
ชื่อ
<input type="text" name="name">
<br>
นามสกุล
<input type="text" name="surname">
<br>
<br>
<input type="submit" value="Submit">
<input type="reset"value="Reset">
</form>
</body>
</html>

Out Put

sample2.asp
<html>
<body>
ชื่อ <% =request.form("name") %>
<br>
นามสกุล <%=request.form("surname")%>
</body>
</html>


Querystring คืออะไร ?
Querystring คือข้อมูลที่ Browser ส่งต่อท้าย URL ของ Page ที่ต้องการใช้ไปยัง
Web Server โดยข้อมูลจะประกอบไปด้วยชื่อของข้อมูลและค่าของข้อมูล
รูปแบบ http://127.0.0.1/file-name.asp?name=value
หากต้องการส่งค่ามากกว่าหนึ่งค่า ให้ใช้เครื่องหมาย & ขั้นระหว่างตัวแปร
รูปแบบ http://127.0.0.1/file-name.asp?name1=value&name2=value
การอ่านข้อมูลจาก Querystring
=request.querystring("data-name")
กรณีต้องการอ่านค่าเก็บใว้ในตัวแปร
var-name=request.querystring("data-name")
การสร้างข้อมูลให้อยู่ในรูป Querystring

สามารถ สร้างได้ 2 รูปแบบคือ

1. สร้างจาก Tag <a>... </a>
กำหนดในส่วนคุณสมบัติของ HREF ของ TAG <a> </a> ตัวอย่าง
sample1.asp

<html>
<body>
<a href="sample2.asp?name=werachai&old=21">Test Querystring </a>
</body>
</html>

TOP