PDA

View Full Version : [TUTOR] ColdFusion Part IV



wheremylove?
06-10-2002, 23:06
Bai 4. Tạo và thao tác với biến.

I. Tổng quan về biến.

1. Các loại biến.

Local: Khởi tạo và xử lý trong một trang ứng dụng.
Query: Dữ liệu nhận được từ các chuỗi truy vấn trong một trang.
Form: Lưu trữ tự động và đưa từ một form tới một form action..
URL: Thiết lập tự động và đưa các giá trị từ một trang tới một trang khác.
HTTP Cookies: Thiết lập "thủ công"(manual) và tự động đưa giá trị nhận dạng giữa client và server.
CGI: Tự động đưa chi tiết môi trường có trên Web server trong khi trình duyệt yêu cầu.
Application: Khởi tạo "thủ công" với các giá trị trong một trang ứng dụng. Các giá trị tham chiếu "thủ công" trong các trang ứng dụng xác định khác.

2. Phạm vi biến.

Variable Type Scope
Local Trong trang mà nó được tạo.
Query Trong trang nó được tạo.
Form Trong trang action liên hệ với form.
URL Trang đích (target) cho siêu liên kết (hyperlink).
Cookie Tất cả các phiên của trình duyệt.
CGI Tất cả các phiên (session)
Application Ứng dụng cụ thể mà nó được tạo cho.

3. Tạo biến.

Variable Type Creation

Local Dùng thẻ CFSET hoặc CFPARAM.
Query Thẻ CFQUERY.
Form Đưa từ form HTML sang trang action.
URL Đưa từ chuỗi truy vấn (?) ở cuối URL tới trang đích (target).
Cookie Dùng thẻ CFSET hoặc CFCOOKIE.
CGI Đưa từ trình duyệt và server thông qua yêu cầu của trình duyệt.
Application Dùng thẻ CFSET hoặc CFPARAM.

II. Sử dụng biến.

1. Biến Local.
Tạo biến Local dùng thẻ CFSET hoặc CFPARAM. Ví dụ:
<CFSET Name="Nam">
Hiển thị giá trị biến, dùng thẻ CFOUTPUT. Ví dụ:
<CFOUTPUT>
#Name#
</CFOUTPUT>
Chú ý: Khi sử dụng biến dùng tên biến giữa hai dấu #.
Ví dụ: Mở notepad, wordpad hoặc Homesite mà bạn download về, soạn thảo chương trình sau với tên myfirst.cfm (save: text only).
<html>
<title>My first application</title>
<body>
<CFSET Name="Nam">
<CFOUTPUT>
Hello #Name#
</CFOUTPUT>
</body>
</html>
2. Tiền tố biến (Variable Prefixing)
Vì các kiểu biến khác nhau có thể cùng tên, ví dụ biến Local và biến Form cùng có tên là Name. Nên chúng ta phải có tiền tố trước tên biến để phân biệt chúng.

Kiểu biến Tiền tố Cú pháp tham chiếu

Local Variables. Variables.VariableName
Query QueryName. QueryName.VariableName
Form Form. Form.VariableName
URL URL. URL.VariableName
Cookie Cookie. Cookie.VariableName
CGI. CGI. CGI.VariableName
Application Application. Application.VariableName
Ví dụ:
<CFSET Name="Hoa">//Name là biến Local
<CFOUTPUT>
Your name is #Variables.Name#
</CFOUTPUT>

3. Biến CGI.


CGI Server Variables Description Server or Client
CGI.SERVER_SOFTWARE Thông tin về tên và phiên bản server (PWS, IIS,...). Server
SERVER_NAME Tên host của server. Là DNS hay địa chỉ IP. Xuất hiện ở URL. Ví dụ bạn truy cập: http://localhost/myfirst.cfm thì biến này sẽ có giá trị là localhost. Server
GATEWAY_INTERFACE Xem lại đặc tả CGI mà server complie. Server
SERVER_PROTOCOL Thông tin tên giao thức (HTTP). Server
SERVER_PORT Số cổng (80,...). Server
REQUEST_METHOD Phương thức yêu cầu HTTP. Get hoặc Post. Server
PATH_INFO Thông tin đường dẫn mở rộng cung cấp bởi client. Server
PATH_TRANSLATED Thông tin đường dẫn cung cấp bởi server. Ví dụ c:\ webshare\wwwroot\myfirst.cfm Server
SCRIPT_NAME Đường dẫn ảo của script đang được thực hiện. Ví dụ /myfirst.cfm Server
QUERY_STRING Thông tin truy vấn theo sau dấu ? ở URL. Server
REMOTE_HOST Tên địa chỉ IP. Server
REMOTE_ADDR Điạ chỉ IP. Server
AUTH_TYPE Phương thức xác nhận giao thức, sử dụng để xác nhận user khi cung cấp trên server hay khi script được bảo vệ. Server
REMOTE_USER AUTH_USER username mà server xác minh khi cung cấp trên server va khi script được bảo vệ. Server
REMOTE_IDENT username từ xa nhận được khi server cung cấp sự nhận dạng RFC 931. Biến này có thể chỉ được sử dụng để login. Server
CONTENT_TYPE Kiểu nội dung của dữ liệu truy vấn. Server
CONTENT_LENGTH Độ dài của nội dung được mô tả bởi client và gửi cho ser. Server
HTTP_REFERER Dữ liệu tham chiếu để liên kết hoặc submit dữ liệu form tới trang này. Client
HTTP_USER_AGENT Tên trình duyệt và thông tin yêu cầu gửi. Client

Sử dụng biến CGI:
<CFOUTPUT>
#CGI.SERVER_NAME#
</CFOUTPUT>

4. Biến COOKIE.
Cookie là các biến sử dụng bởi các server ứng dụng (như ColdFusion Server) để lưu trữ và nhận dữ liệu từ một trình duyệt.
Các biến cookie có hiệu lực từ một trình duyệt tới server qua tất cả các phiên. Có nghĩa là các biến cookie mà bạn đặt trong một trình duyệt có thể tham chiếu tới các trang khác của ứng dụng.
Để tạo biến cookie:
<CFCOOKIE Name="User_Name" Value="wheremylove?" Expires="100">
Trong đó Expires là khoảng thời gian tồn tại của Cookie.
Tham chiếu (sử dụng) biến Cookie. Ví dụ hiển thị thông tin về biến Cookie:
<CFOUTPUT>
#Cookie.User#
</CFOUTPUT>