ASP - Tạo một trang ASP. Tổng quan về Công nghệ Trang Máy chủ Hoạt động (ASP)

1) Thông tin chung về ASP
ASP (Active Server Pages) là một công nghệ lập trình cho phép bạn tạo các trang Web tương tác động trên một máy chủ Web (kể từ IIS, 1997). Tệp ASP là tệp có phần mở rộng * .Asp chứa hỗn hợp mã HTML, mã kịch bản trong VBScript hoặc JavaScript, trình truy cập cơ sở dữ liệu (ADO), quản lý đối tượng COM bên ngoài và đối tượng bên trong ASP. Công nghệ này lần đầu tiên được triển khai trong máy chủ Web IIS của Microsoft và trên thực tế là phiên bản thông dịch của phần mở rộng máy chủ ISAPI.

2) Các đối tượng cài sẵn
ASP bao gồm bảy đối tượng tích hợp (không tạo hoặc khởi tạo) được sử dụng để gửi các trang và dữ liệu HTML tới trình duyệt, truy xuất dữ liệu, giao tiếp với máy chủ, v.v. trong số họ:
. Phản ứng- gửi dữ liệu cho khách hàng
. Yêu cầu- xử lý dữ liệu nhận được với yêu cầu từ khách hàng.
. Máy chủ- cung cấp sự tương tác với máy chủ.
. Đơn xin- lưu trữ dữ liệu về ứng dụng.
. Phiên họp- lưu trữ dữ liệu về trình duyệt.
. ObjectContext- bắt đầu giao dịch và kiểm soát việc thực hiện của chúng.
. ASPError- Hỗ trợ xử lý lỗi.

3) Các tính năng ASP
Ngoài những đối tượng cài sẵn, ASP đi kèm với một số đối tượng có thể cài đặt, một số đối tượng hữu ích và một số đối tượng không thể thay thế. Vì vậy đối tượng COM Dictionary là không thể thay thế được.

Không giống như CGI, tập lệnh ASP chạy như một quy trình máy chủ nội bộ, đa luồng và được tối ưu hóa cho số lượng lớn người dùng. Tập lệnh ASP bắt đầu thực thi sau khi trình duyệt yêu cầu tệp * .Asp từ máy chủ Web. Máy chủ Web gửi lệnh gọi đến công cụ ASP tích hợp sẵn của IIS (.. \ System \ InetSrv \ Asp.Dll), công cụ này đọc tập lệnh và thực hiện bất kỳ lệnh nào mà nó gặp phải. Kết quả là một trang HTML được tạo và gửi đến trình duyệt.

Để thực hiện bất kỳ điều gì nghiêm trọng trên máy chủ Web với ASP, bạn cần tạo các đối tượng COM và sử dụng các dịch vụ (phương thức) của chúng. Các thành phần ASP Phải sử dụng mô hình phân luồng STA - mỗi đối tượng chạy trong ngữ cảnh của luồng riêng của nó và được bảo vệ khỏi các luồng đồng thời.

4) Quyền truy cập vào các đối tượng nhúng
Để truy cập từ các đối tượng COM đã tạo đến các đối tượng tích hợp sẵn, bạn phải sử dụng các giao diện:
a) Sử dụng chức năng GetObjectContext, lấy một con trỏ đến giao diện IObjectContext;
b) Một con trỏ đến giao diện IGetContextProperties phải được lấy bằng con trỏ;
c) Bằng cách gọi phương thức GetProperties () và chuyển cho nó tên của đối tượng tích hợp sẵn, ví dụ: Yêu cầu hoặc Phản hồi và một biến biến thể, bạn có thể thông qua nó một con trỏ đến giao diện IDispatch của đối tượng được yêu cầu;
d) Sau đó, bạn có thể gọi các phương thức của đối tượng dựng sẵn.

5) Nhược điểm của ASP
... Các chương trình ASP không được biên dịch, nhưng được thông dịch. Do đó, chúng chạy chậm hơn so với những cái đã được biên dịch.
... ASP không có các phương tiện đánh máy phong phú. Tất cả các biến đều thuộc kiểu Variant (16 byte). Điều này thuận tiện, nhưng không cải thiện tốc độ làm việc.
... Các tệp bên ngoài phải được bao gồm trong mọi cuộc gọi.
... ASP coi tất cả các biến đối tượng là các đối tượng bị ràng buộc muộn. Mỗi khi một thuộc tính hoặc phương thức được gọi, tất cả dữ liệu về đối tượng sẽ được yêu cầu, điều này làm tăng thời gian phản hồi.

6) Triển khai ASP mẫu
- Cài đặt và cài đặt bắt buộc
IIS (thư mục WEB5), ADO, ODBC (Hệ thống DSN - SLS), InterBase (FireBird) phải được cài đặt trên máy chủ. Hãy sử dụng cơ sở dữ liệu Sales.Gdb làm nguồn dữ liệu.

- Cấu trúc của chương trình truy cập cơ sở dữ liệu

Tiêu đề HTML:

ASP demo

Kết nối DB


Kết nối DB:
<%
Sec Conn = Server.CreateObject (“ADODB.Connection”)
Conn.Open “SLS”
Đặt RS = Conn.Execute (“CHỌN * TỪ Khách hàng”)
%>
Chân trang HTML:


Chu kỳ đọc dữ liệu:


<% FOR i=0 TO RS>Fields.Count-1%>

<% NEXT %>
<% Do While Not RS.EOF %>

<% FOR i=0 TO RS>Fields.Count-1%>

<% NEXT %>
<% RS.MoveNext
Vòng
RS.C Close
Conn.Close
%>

- Làm việc với chương trình
Để chạy chương trình, gõ vào trình duyệt: http: // localhost / web5 / sales / php

7) Bản sao ASP và các chất tương tự
. Ớt! Mềm
Chili! Soft, một sản phẩm của công ty cùng tên, là một bản sao ASP khá linh hoạt, có thể chạy trên nhiều phần cứng, hệ điều hành và máy chủ Web. Chili! Soft và ASP được cho là tương thích 90%.

. Các trang máy chủ Java
Java Server Pages (JSP) tương tự như ASP nhưng chỉ sử dụng Java kết hợp với HTML để hỗ trợ kết xuất trang động trên bất kỳ nền tảng hỗ trợ Java nào. JavaBeans tương tự như đối tượng COM.

. Apache :: ASP
Apache :: ASP, dựa trên PerlScript từ Dự án Apache Perl International, chạy trên nhiều hệ điều hành, nhưng chỉ với máy chủ Web Apache.

. PHP
Ngôn ngữ có giấy phép mã nguồn mở PHP có khả năng tương tự. Đúng, công nghệ PHP dựa trên các thư viện mô-đun đối tượng cổ điển chứ không phải dựa trên việc sử dụng mô hình đối tượng thành phần COM và các điều khiển ActiveX.

8) ASP.NET
Sau khi nhận được yêu cầu, máy chủ (trong trường hợp này là IIS) sử dụng phần mở rộng * .Aspx để tìm ra rằng máy khách đã yêu cầu một trang ASP.NET. Sau đó IIS chuyển trang Web đến máy chủ ISAPI chuyên dụng, aspnet_isapi.dll. Máy chủ này gửi trang tới quy trình Asp.Net: .. \ Framework \ v4 .. \ aspnet_wp.exe. Dòng công việc gọi Thời gian chạy ngôn ngữ chung (CLR), chịu trách nhiệm biên dịch và thực thi mã của trang. Trong thực tế, bạn phải kết nối các máy chủ Dll thông qua cơ chế COM-Interop, cơ chế này có thể được khởi chạy trong tiến trình máy chủ chính.

Active Server Pages là một môi trường lập trình cho phép bạn kết hợp HTML, script và các thành phần để tạo các ứng dụng Web động. Khả năng nhúng các tập lệnh (mã được viết bằng ngôn ngữ lập trình, ví dụ như VBScript hoặc JScript) vào các trang Web cho phép bạn kết hợp một cách hợp lý thiết kế với dữ liệu thu được từ nhiều nguồn khác nhau, chẳng hạn như từ cơ sở dữ liệu.

Tư tưởng của việc tạo ra các ứng dụng Web hiện đại là đóng gói logic nghiệp vụ thành các thành phần riêng biệt được viết bằng công nghệ COM. Công nghệ ASP trong trường hợp này là liên kết giữa các thành phần này và giao diện của ứng dụng Web.

Nguyên tắc hoạt động

Sử dụng Trang Máy chủ Hoạt động không yêu cầu trình duyệt cụ thể. Tất cả các tập lệnh ASP được chạy và thực thi trên máy chủ Web, với trình duyệt chỉ nhận các tệp HTML kết quả. Máy chủ thông tin Internet của Microsoft, bắt đầu với phiên bản 3.0, hỗ trợ các Trang Máy chủ Hoạt động.

Hãy xem xét trình tự hoạt động của ASP. Máy khách yêu cầu một trang ASP từ máy chủ web. Máy chủ chấp nhận yêu cầu và bắt đầu xử lý nó. Phần mở rộng tệp (.asp) xác định rằng tệp chứa tập lệnh ASP và bắt đầu phân tích nội dung của nó, giải thích và chèn mã ASP tuần tự. Đến lượt mình, mã ASP có thể chứa các lệnh gọi đến các nguồn dữ liệu khác nhau, xử lý dữ liệu nhận được và thêm nội dung của trang đã tạo. Kết quả là, một trang HTML "bình thường" được tạo ra (không còn chứa mã ASP), được gửi trở lại máy khách.

Bên ngoài, ASP hoạt động giống như CGI. Các tham số (định dạng chuỗi truy vấn) được truyền theo cùng một cách và kết quả được xuất ra. Tuy nhiên, hiệu suất ASP tốt hơn nhiều vì trình thông dịch ASP không được tải riêng cho từng yêu cầu. Việc sử dụng các thành phần ActiveX cũng cải thiện đáng kể hiệu suất của máy chủ Web.

Mô tả cú pháp

Mã ASP cần được thực thi trên máy chủ được đặt bên trong các thẻ đặc biệt<% %>... Vì mã này được xử lý trên máy chủ, nó không có sẵn cho người dùng. Bản thân mã có thể được viết bằng Visual Basic Scripting Edition (VBScript) hoặc JScript (JavaScript). Công nghệ ASP cho phép sử dụng các ngôn ngữ lập trình khác. Về cơ bản, bạn không cần nói về cú pháp ASP, mà là về ngôn ngữ được sử dụng để viết mã ASP. Cú pháp của VBScript đơn giản hơn nhiều so với các ngôn ngữ khác, vì vậy người mới bắt đầu sẽ dễ dàng hiểu được nó.

Đối tượng và thành phần

VBScript không phải là một ngôn ngữ lập trình đầy đủ chức năng và rõ ràng là không đủ để sử dụng các công cụ tích hợp sẵn. Do đó, các trang ASP sử dụng các đối tượng đặc biệt và các thành phần ActiveX.

Có một tập hợp các đối tượng "tích hợp sẵn" được khởi tạo và cung cấp tự động cho tập lệnh ASP khi bắt đầu xử lý. Các đối tượng này cung cấp quyền truy cập vào các chức năng "quan trọng" cơ bản:

  • Đối tượng Ứng dụng cho phép bạn tạo các biến sẵn dùng cho tất cả người dùng ứng dụng Web.
  • Đối tượng Session cho phép bạn lưu trữ dữ liệu được liên kết với một người dùng cá nhân.
  • Đối tượng Request cung cấp các tham số của yêu cầu CGI được gửi bởi phương thức POST 99 hoặc GET.
  • Đối tượng Phản hồi cung cấp các phương pháp để thêm thông tin cũng như tạo tiêu đề của trang phản hồi của máy chủ Web.
  • Đối tượng Server chứa nhiều phương thức khác nhau, một trong số đó là phương thức CreateObject, cho phép bạn khởi tạo các thành phần ActiveX.

Không giống như các đối tượng ASP dựng sẵn, các thành phần ASP rõ ràng cần phải được tạo trong mã script. Có rất nhiều thành phần ActiveX mà bạn có thể sử dụng trong các trang ASP và hầu hết chúng đều miễn phí. Hơn nữa, nhà phát triển có thể tự tạo các thành phần ActiveX trong bất kỳ môi trường lập trình nào hỗ trợ công nghệ COM, ví dụ: Visual C ++ hoặc Visual Basic.

Cần đặc biệt chú ý đến Đối tượng Dữ liệu ActiveX (ADO), là những công cụ tích hợp, mạnh mẽ để xây dựng các ứng dụng cơ sở dữ liệu. Các thành phần ADO cung cấp giao diện nhanh chóng và thuận tiện cho cơ sở dữ liệu ở mức cao nhất, đồng thời duy trì tính di động của các ứng dụng đã phát triển để làm việc với các cơ sở dữ liệu khác. Việc sử dụng các thành phần ADO giúp đơn giản hóa đáng kể công việc của lập trình viên; anh ta chỉ phải soạn chính xác các truy vấn SQL vào cơ sở dữ liệu và quan tâm đến đầu ra của kết quả.

Là một phần của hoạt động của ứng dụng Web, có thể tạo trình xử lý cho các sự kiện cơ bản, chẳng hạn như khởi động và dừng ứng dụng Web, cũng như mở và đóng phiên người dùng. Các sự kiện này được mô tả trong một tệp ASP đặc biệt có tên global.asa. Trình xử lý dữ liệu sự kiện có thể được sử dụng để khởi tạo các đối tượng hoặc đặt giá trị của các biến toàn cục.

Công cụ phát triển

Bạn có thể tạo các trang ASP trong bất kỳ trình soạn thảo văn bản nào, nhưng điều này không phải lúc nào cũng thuận tiện. Ngoài việc viết mã VBScript, bạn cần gỡ lỗi nó, điều này chỉ có thể thực hiện được trên máy chủ Web đang hoạt động (IIS) và với các công cụ đặc biệt.

Microsoft Visual InterDev 6.0 (đi kèm với Microsoft Visual Studio) là một trong những công cụ tốt nhất cho phép bạn không chỉ tạo mã ASP nhanh chóng và hiệu quả mà còn thực hiện gỡ lỗi mã nâng cao. Các tính năng chính của sản phẩm này:

  • Xem danh sách các đối tượng đã sử dụng và khả năng viết mã nhanh chóng.
  • Đánh dấu cú pháp mã (VBScript và JScript).
  • Tự động tạo nội dung global.asa.
  • Khi khởi chạy ở chế độ gỡ lỗi, InterDev sẽ tự động định cấu hình máy chủ Web (IIS) ở chế độ mong muốn và khôi phục cài đặt khi quá trình gỡ lỗi hoàn tất.
  • Khả năng thiết lập các điểm ngắt.
  • Xem giá trị của các biến (đồng hồ) và danh sách các thủ tục được gọi (ngăn xếp cuộc gọi).

Ngoài ra còn có các trình soạn thảo chuyên biệt khác cho phép bạn phát triển các ứng dụng ASP, chẳng hạn như Home Site 4.5, Macromedia UltraDev 4.0 hoặc ASP Express. Tuy nhiên, các công cụ này không bao hàm đầy đủ các khả năng của Visual InterDev.

Có gì mới trong IIS 5.0

Phiên bản mới nhất của Máy chủ thông tin Internet (IIS) Web server 5.0 có những cải tiến đáng kể để cải thiện độ tin cậy và hiệu suất của các ứng dụng ASP. Các đối tượng ASP tích hợp trong Windows 2000 có các phương pháp mới giúp nâng cao trải nghiệm của nhà phát triển.

Có các công cụ xử lý lỗi mới. Với đối tượng AppError mới, giờ đây bạn có thể nhận được thông tin về các lỗi xảy ra ở cả thời gian chạy và thời gian phân tích cú pháp.

Phiên bản mới của Script Engine từ Windows 2000 giới thiệu hỗ trợ mới mạnh mẽ cho các ngôn ngữ VBScript và JScript. Trong tập lệnh VBScript, giờ đây bạn có thể sử dụng các công cụ để kiểm tra và phân tích cú pháp các biểu thức phức tạp, đồng thời cũng có thể tạo các lớp.

Các công cụ truy cập dữ liệu cũng đã trải qua những thay đổi đáng kể - giờ đây HĐH đi kèm với lõi MDAC 2.5, đặc biệt, cung cấp khả năng tích hợp với các công cụ XML.

Hỗ trợ các ngôn ngữ lập trình khác

Ngoài Visual Basic Scripting Edition (VBScript), IIS hỗ trợ xử lý JScript (JavaScript). Bạn có thể sử dụng tất cả các đối tượng giống nhau và chỉ thay đổi cú pháp của các cấu trúc ràng buộc.

Ưu điểm của công nghệ ASP là nó cho phép sử dụng các ngôn ngữ lập trình khác. Để hỗ trợ chúng, bạn cần cài đặt các mô-đun Script Engine thích hợp. Ví dụ: hỗ trợ cho ngôn ngữ Perl (hoặc đúng hơn là ActivePerl) có thể được triển khai bằng cách sử dụng một mô-đun từ công ty ActiveState (http://www.activestate.com/). Ngoài ra còn có các mô-đun hỗ trợ REXX và Python.

Có các sản phẩm của bên thứ ba hỗ trợ ASP trên các nền tảng khác. Ví dụ: Chili! Soft ASP, của Chili! Soft, Inc., (http://www.chilisoft.com/) cung cấp hỗ trợ ASP trên nhiều loại máy chủ Web như: Apache, Lotus, Netscape, O'Reilly, có thể hoạt động dưới nhiều hệ điều hành khác nhau.

Tôi sẽ không nói. Nếu bạn đã vào phần này, thì bạn đã hiểu đại khái mình cần gì. Nếu bạn không hiểu, tôi sẽ nói với bạn rằng tôi không lập trình trong ASP .NET và sẽ không bao giờ làm điều đó. Tôi cũng sẽ không nói với bạn về một lập trình viên ASP .NET. Tôi chuyên về phát triển web, quản trị hệ thống. ASP .NET hoàn toàn không được tạo ra cho những mục đích này. Có, bạn có thể “viết” một trang web bằng ngôn ngữ này. Nhưng điều này tương tự như việc mua cho mình một chiếc xe buýt chở khách, và bạn sẽ chỉ tự mình đi xe đến nơi làm việc.

Tại sao ASP .NET được sử dụng trên web?

Phần lớn là do các sản phẩm được tạo ra bằng ngôn ngữ lập trình này tích hợp hoàn hảo vào Windows (điều này không có gì đáng ngạc nhiên, bởi vì họ có một nhà phát triển, nhưng đây là trên lý thuyết). Trong thực tế, điều này rất thường xuyên không xảy ra. Hệ thống Windows dạy chúng ta điều gì? Chúng tôi không phải làm bất cứ điều gì ngoại trừ nhấp vào các phím chuột. Chúng tôi không cho hệ điều hành biết chúng tôi muốn làm gì và chúng tôi muốn làm như thế nào. Chúng tôi chỉ nó cho cô ấy bằng con chuột. Và lập trình viên cũng là "con người". Họ cũng muốn giảm thiểu nỗ lực của họ để có được kết quả.

Để viết mã cho ASP .NET, có rất nhiều ứng dụng giúp cuộc sống của một lập trình viên trở nên dễ dàng hơn. Những người cố gắng tạo trang web vào đầu thế kỷ này có lẽ đã sử dụng chương trình Dreamviewer (khi nó vẫn còn là sản phẩm của tập đoàn Macromedia). Nó rất thuận tiện, một mặt, để mở chương trình, chọn loại tệp HTML sẽ được tạo và nhấp vào Ok. Chương trình, tạo một tài liệu mới, tự nó hình thành trong đó các yếu tố quan trọng như loại tài liệu và khối tiêu đề của nó. Và nhà phát triển thậm chí không cần hiểu những gì được viết ở đó. Sử dụng các chương trình như vậy, nhà phát triển mất khả năng suy nghĩ, tư duy. Hãy yên tâm, 95% nhà phát triển ASP .NET sẽ không thể viết mã của họ trong một ứng dụng Windows Notepad thông thường. Và hầu hết các lập trình viên PHP viết chương trình của họ bằng Notepad và các ứng dụng tương tự. Nhiều lập trình viên ASP .NET tạo trang web thậm chí không biết cấu trúc tài liệu HTML nên có. Các yêu cầu bắt buộc đối với các tài liệu như HTML5 và XHTML là gì. Nhiều người trong số những nhà phát triển này thậm chí sẽ không hiểu ý tôi nói về điều này.

Rất tốt khi viết các ứng dụng trong ASP .NET hoạt động trong môi trường Windows với dữ liệu người dùng (ví dụ: tên người dùng mà người dùng đăng nhập vào miền hoặc trên máy tính của họ). Nó cũng tốt để viết các ứng dụng trong ASP .NET làm việc với dữ liệu được lưu trữ trong MS SQL DBMS. Nhưng ngay cả ở đây, hầu hết các lập trình viên ASP .NET đều quản lý để "đơn giản hóa" nhiệm vụ của họ. Để xây dựng các truy vấn đến cơ sở dữ liệu MS SQL, họ sử dụng các chương trình đặc biệt - trình quản lý truy vấn. Và thật an toàn khi nói rằng những lập trình viên như vậy không biết các truy vấn cơ sở dữ liệu sẽ như thế nào.

Như bạn đã biết, diễn đàn là một phương tiện giao tiếp của người dùng Internet, đồng thời, nó là một cuốn sách tham khảo lớn về các câu hỏi và câu trả lời về một chủ đề cụ thể, và có lẽ không trang web hiện đại nào có thể làm được nếu không có diễn đàn. Trong bài viết này, tôi sẽ cho bạn biết cách bạn có thể nhanh chóng tạo diễn đàn ASP của riêng mình, và để làm điều này, bạn không cần phải đi bất cứ đâu, tìm kiếm và tải xuống bất kỳ chương trình bổ sung nào và thậm chí bạn không cần phải là một lập trình viên. Để làm được điều này, chỉ cần có Windows 2000 / XP và một bộ chương trình MS Office, cụ thể là MS Access. Là một lò phản ứng cho các trang ASP, bạn có thể sử dụng Notepad thông thường.

Các trang máy chủ đang hoạt động

ASP (Active Server Pages) là một công nghệ tạo trang web động do Microsoft phát triển cho các máy chủ Windows NT / 2000 / XP / 2003. Cú pháp ASP dựa trên ngôn ngữ lập trình cấp cao Visual Basic. Nếu trước đây bạn đã từng làm việc với Visual Basic, thì bạn sẽ không quá khó hiểu về ASP. Nhưng ngay cả khi bạn chưa bao giờ học lập trình, bạn vẫn sẽ không khó hiểu ASP, vì như bạn đã biết, Visual Basic là một ngôn ngữ khá dễ học.

Máy chủ web của riêng bạn? Dễ dàng!

Trước khi bắt đầu tạo diễn đàn, bạn cần cài đặt IIS (Internet Information Services), một máy chủ Web chuyên nghiệp do Microsoft phát triển. Windows 2000 và Windows XP bao gồm IIS phiên bản 5.0. Theo mặc định, IIS không được cài đặt, vì vậy nó phải được cài đặt riêng. Để thực hiện việc này, hãy nhấp vào "Start" => "Control Panel" => "Add / Remove Programs", trong cửa sổ hiện ra, nhấp vào "Install Windows". Cửa sổ Cấu phần Windows sẽ xuất hiện. Chọn "Dịch vụ Thông tin Internet" và nhấp vào "Tiếp theo".

Sau khi hoàn tất cài đặt, trong "Control Panel" => "Administration Tools", một phím tắt sẽ xuất hiện - "Internet Information Services", hơn nữa, bây giờ máy tính của bạn có thể đóng vai trò của một máy chủ Web! Để kiểm tra điều này, hãy khởi chạy trình duyệt (chẳng hạn như Internet Explorer) và nhập http: // localhost / vào thanh địa chỉ, thao tác này sẽ mở trang Web IIS mặc định. Ngoài ra, bạn có thể truy cập máy chủ bằng cách nhập http: // your_computer_name vào dòng địa chỉ hoặc bằng cách chỉ định địa chỉ IP cục bộ - http://127.0.0.1.

Bây giờ chúng ta đã có máy chủ Web của riêng mình, chúng ta cần phải cấu hình nó. Khởi động IIS: "Start" => "Control Panel" => "Administration Tools" => "Internet Information Services".

Cửa sổ xuất hiện hiển thị cấu trúc thư mục của trang Web của bạn, cũng như các máy chủ SMTP và FTP, nếu các thành phần này đã được cài đặt. Mở rộng danh sách "Trang web" và nhấp chuột phải vào "Trang web mặc định", chọn menu "Mới" => "Thư mục ảo". Cửa sổ "New Virtual Directory Wizard" xuất hiện. Nhấp vào "Tiếp theo", Trình hướng dẫn sẽ yêu cầu bạn chỉ định Bí danh của thư mục ảo. Bí danh phải bao gồm các ký tự Latinh, ví dụ: viết "myforum.ru" và nhấp vào "Tiếp theo". Trình hướng dẫn sẽ nhắc bạn chọn một thư mục vật lý trên đĩa. Nhấp vào nút "Browse", trong cửa sổ hiện ra, chọn "Drive C:" và nhấp vào nút "New folder", tên thư mục cũng có thể là bất cứ thứ gì, nhưng để tránh hiểu nhầm thì không nên sử dụng các ký tự tiếng Nga. Để tránh nhầm lẫn, hãy đặt tên cho nó, chẳng hạn như "first_web_page". Chọn thư mục đã tạo và nhấp vào Tiếp theo. Trong cửa sổ xuất hiện, đặt các tùy chọn "Đọc" và "Chạy tập lệnh (ví dụ: ASP)", và nhấp vào "Tiếp theo" rồi "Hoàn tất".

Bây giờ, trong danh sách "Trang web mặc định", bạn sẽ thấy thư mục ảo mà bạn vừa tạo - myforum.ru. Đó là tất cả, bạn không cần phải cấu hình bất cứ điều gì khác.

Cơ sở dữ liệu

Thông báo diễn đàn cần được lưu trữ ở đâu đó. Thông thường cơ sở dữ liệu được sử dụng cho việc này. Cơ sở dữ liệu khác nhau, nhưng dễ tiếp cận nhất là MS Access. MS Access là một phần của MS Office. Nếu vì lý do nào đó MS Access không được cài đặt cho bạn, bạn cần phải cài đặt nó. Để thực hiện việc này, hãy nhấp vào "Start" => "Control Panel" => "Add / Remove Programs", trong cửa sổ xuất hiện, tìm "Microsoft Office" và nhấp vào nút "Change" (hoặc, "Change / Remove" ). Trong cửa sổ xuất hiện, đặt tùy chọn "Truy cập" và nhấp vào nút "Cập nhật". Quá trình cài đặt sẽ mất một vài phút. Sau đó, biểu tượng Microsoft Office Access sẽ xuất hiện trên Màn hình nền.

Khởi động MS Access và tạo một cơ sở dữ liệu mới. Chương trình sẽ ngay lập tức nhắc bạn lưu buza dữ liệu, hãy lưu nó với tên "db.mdb" trong thư mục đã tạo trước đó - "C: \ first_web_page". Tiếp theo, cửa sổ quản lý cơ sở dữ liệu sẽ xuất hiện.

Trong Đối tượng, chọn Bảng và bấm Tạo Bảng trong Chế độ Thiết kế. Thêm các trường bảng sau:

Đóng cửa sổ Designer, trả lời “Có” cho các đề xuất để lưu các thay đổi và chỉ định tên bảng “tblMessages”, trả lời “Không” đối với gợi ý để tạo các trường chính.

Mọi thứ! Cơ sở dữ liệu đã sẵn sàng! Tất nhiên, các diễn đàn chuyên nghiệp có rất nhiều lĩnh vực hơn, nhưng lần đầu tiên như vậy là đủ.

Lập trình

Vì vậy, vấn đề nhỏ, vẫn là tạo các trang asp, sẽ có ba trong số chúng: default.asp, show.asp và add.asp. Để thực hiện việc này, trong thư mục C: \ first_web_page, hãy tạo ba tài liệu văn bản thông thường (chuột phải => Mới => Tài liệu Văn bản) và đổi tên chúng thành default.asp, show.asp và add.asp. Xin lưu ý rằng để thay đổi phần mở rộng tệp (từ txt, thành asp), tùy chọn "Ẩn phần mở rộng cho các loại tệp đã đăng ký" phải được tắt trong thông số thư mục (menu của thư mục "Công cụ" => "Tùy chọn thư mục", tab "Xem") ...

Tệp default.asp là tệp chính mà máy chủ Web sẽ tìm kiếm khi truy cập vào thư mục ảo bạn đã tạo (http: //localhost/myforum.ru). Tệp này sẽ hiển thị một danh sách các chủ đề diễn đàn. Mở default.asp bằng notepad và nhập mã sau:

<%
"tùy chọn bộ nhớ đệm trang


Response.Expires = -1
adOpenStatic = 3
"tạo đối tượng truy cập cơ sở dữ liệu


"lấy đường dẫn đến cơ sở dữ liệu

"kết nối với cơ sở dữ liệu
Conn.Open & _
strDBPath
"tạo một yêu cầu tìm nạp dữ liệu

"WHERE (parent_id = 0)" & _

"thực hiện một truy vấn trong cơ sở dữ liệu được kết nối

"nếu có dữ liệu, thì chúng tôi hiển thị nó
Nếu RS.RecordCount> 0 Thì
"hiển thị danh sách các chủ đề diễn đàn
"cho đến khi hết dữ liệu
Làm cho đến khi RS.EOF
Nếu RS.EOF hoặc RS.BOF thì Thoát Do

"

RS ("id") & ""> "& RS (" chủ đề ") & _
"

"& vbCrLf
strSubjectList = strSubjectList & _
" & _
RS ("author_mail") & ""> "& _
RS ("author_name") & " "

RS ("date_add") & "

"& vbCrLf
"đi đến bản ghi tiếp theo
RS.MoveNext
Vòng
Khác
"nên không, chúng tôi hiển thị một thông báo về nó
strSubjectList = "

" & _
"Danh sách chủ đề trống ...

"

Kết thúc nếu

"đóng cơ sở dữ liệu
Conn.Close
"xóa các đối tượng khỏi bộ nhớ
Đặt RS = Không có gì
Đặt Conn = Không có gì
%>



Diễn đàn đầu tiên của tôi!
nội dung>




Thêm chủ đề mới





<% =strSubjectList%>




Thêm chủ đề mới



Ở đây, trên thực tế, trang đầu tiên đã sẵn sàng! Để kiểm tra, hãy khởi chạy trình duyệt của bạn và nhập: http: //localhost/myforum.ru vào thanh địa chỉ. Một thông báo sẽ xuất hiện trong trình duyệt: "Danh sách các chủ đề trống ..." bởi vì cơ sở dữ liệu chưa có bất kỳ dữ liệu nào. Lưu ý hai liên kết Thêm Chủ đề Mới, những liên kết này đưa người dùng đến trang để thêm một chủ đề mới, tức là. add.asp, đó chính xác là những gì bạn phải làm bây giờ. Mở tệp add.asp bằng notepad và nhập mã sau:

<%
Response.CacheControl = "no-cache"
Response.AddHeader "Pragma", "no-cache"
Response.Expires = -1
adOpenStatic = 3
adOpenDynamic = 2
adUseClient = 3
adOpenKeyset = 1
adLockOptimistic = 3
"thêm thông báo vào cơ sở dữ liệu
Nếu không phải CStr (Yêu cầu ("tbAuthorName")) = vbNullString thì
Đặt Conn = Server.CreateObject ("ADODB.Connection")
Đặt RS = Server.CreateObject ("ADODB.Recordset")
strDBPath = Server.MapPath ("db.mdb")
Conn.Open "Nhà cung cấp = Microsoft.Jet.OLEDB.4.0; Nguồn dữ liệu =" & _
strDBPath
RS.ActiveConnection = Conn
RS.CursorLocation = adUseClient
RS.CursorType = adOpenKeyset
RS.LockType = adLockOptimistic
RS.Source = "tblMessages"
RS.Open
RS.AddNew

RS ("author_name") = Yêu cầu ("tbAuthorName")
RS ("author_mail") = Yêu cầu ("tbAuthorMail")
RS ("chủ đề") = Yêu cầu ("tbSubject")
RS ("main_text") = Yêu cầu ("tbMainText")
RS ("date_add") = Bây giờ
RS ("parent_id") = CLng (Yêu cầu ("tbParentID"))
RS.Update
RS.C Close
Conn.Close
Đặt RS = Không có gì
Đặt Conn = Không có gì
Kết thúc nếu
%>



</span> Diễn đàn đầu tiên của tôi!
Nội dung = "text / html; charset = windows-1251">


<% If CStr (Request("tbAuthorName" )) = vbNullString Then %>
method = "post"
action = "add.asp"
onSubmit = "btnAdd.disabled = true;" >
id = "tbParentID"
name = "tbParentID"
value = "(! LANG:<% =CInt (Request(!}"id" ))%> "
/>

Tên của bạn:
type = "text"
id = "tbAuthorName"
style = "width: 50%"
maxlength = "50" />


Email của bạn:
type = "text"
id = "tbAuthorMail"
style = "width: 50%"
maxlength = "25" />


<% If CInt (Request("id" )) <= 0 Then %>

Chủ đề tin nhắn:
type = "text"
id = "tbSubject"
style = "width: 50%"
maxlength = "255" />


<% End If %>





type = "submit"
id = "cmdAdd"
value = "(! LANG: Thêm" /> !}



<% Else %>


Đã thêm tin nhắn thành công!


Đi tới danh sách chủ đề


<% End If %>

Bây giờ, khi bạn nhấp vào liên kết "Thêm chủ đề mới", một trang có biểu mẫu thêm thông báo mới vào diễn đàn sẽ tải. Hãy thử thêm một tin nhắn mới. Xin lưu ý rằng nếu tên tác giả không được chỉ định, thông báo sẽ không được thêm vào cơ sở dữ liệu. Sau khi điền vào biểu mẫu và nhấp vào nút "Thêm", một dòng chữ sẽ xuất hiện: "Thông báo đã được thêm thành công!", Và một liên kết để đi đến danh sách các chủ đề. Khi bạn nhấp vào liên kết, chủ đề bạn đã tạo sẽ xuất hiện trong danh sách các chủ đề. Bây giờ nó vẫn còn để tạo thêm một trang - show.asp. Trên ông già này, người dùng diễn đàn của bạn sẽ có thể xem các bài đăng trên diễn đàn. Mã hơi giống như default.asp:

<%
Response.CacheControl = "no-cache"
Response.AddHeader "Pragma", "no-cache"
Response.Expires = -1
adOpenStatic = 3
Đặt Conn = Server.CreateObject ("ADODB.Connection")
Đặt RS = Server.CreateObject ("ADODB.Recordset")
strDBPath = Server.MapPath ("db.mdb")
Conn.Open "Nhà cung cấp = Microsoft.Jet.OLEDB.4.0; Nguồn dữ liệu =" & _
strDBPath
"hiển thị chủ đề
strSQL = "CHỌN * TỪ tblMessages" & _
"WHERE (id =" & Yêu cầu ("id") & ")"
RS.Mở strSQL, Conn, adOpenStatic
Nếu RS.RecordCount> 0 Thì

strSubjectList = _
"

Chủ đề tin nhắn: " & _
RS ("chủ đề") & _
"

"& vbCrLf
strSubjectList = strSubjectList & _
" & _
RS ("author_mail") & ""> "& _
RS ("author_name") & " "
strSubjectList = strSubjectList & "Đã thêm:" & _
RS ("date_add") & "

"& vbCrLf
strSubjectList = strSubjectList & _
"

" & _
RS ("main_text") & _
"

"& vbCrLf
RS.C Close
"chúng tôi hiển thị các câu trả lời
strSQL = "CHỌN * TỪ tblMessages" & _
"WHERE (parent_id =" & Request ("id") & ")" & _
"ĐẶT HÀNG THEO date_add DESC, id ASC"
RS.Mở strSQL, Conn, adOpenStatic
Nếu RS.RecordCount> 0 Thì
Làm cho đến khi RS.EOF
Nếu RS.EOF hoặc RS.BOF thì Thoát Do

" & _
RS ("author_mail") & ""> "& _
RS ("author_name") & " "
strSubjectList = strSubjectList & "Đã thêm:" & _
RS ("date_add") & "

"& vbCrLf
strSubjectList = strSubjectList & _
"

" & _
RS ("main_text") & _
"

"& vbCrLf
RS.MoveNext
Vòng
Khác
strSubjectList = strSubjectList & _
"

" & _
"Không có câu trả lời ...

"
Kết thúc nếu
Khác
strSubjectList = "

" & _
"Đối tượng không được tìm thấy ...

"
Kết thúc nếu
Conn.Close
Đặt RS = Không có gì
Đặt Conn = Không có gì
%>



Diễn đàn đầu tiên của tôi!
Nội dung = "text / html; charset = windows-1251">




2022, leally.ru - Hướng dẫn của bạn trong thế giới máy tính và Internet
<%=RS(i).Name %>
<%=RS(i) %>