다양한 브라우저 간의 수년간의 경쟁으로 인해 개발자가 이전에는 수행하기 어려웠던 작업을 완료하는 데 도움이 되는 다양한 도구가 탄생했습니다. 이제 약간의 스크립트만으로 데이터를 사용자 컨트롤에 바인딩하여 내장된 프록시 유형 컨트롤을 통해 서버와 통신하는 애플리케이션을 만들 수 있습니다.
Internet Explorer(IE)에는 xml 데이터 아일랜드와 xmlhttp 객체가 포함됩니다. XML 데이터 아일랜드는 데이터를 양식 요소에 바인딩하는 데 사용되며 XMLHTTP 객체는 현재 페이지 내의 다른 페이지로 이동하는 데 사용됩니다. 서버에 대한 동기 및 비동기 호출을 만듭니다. 이 두 가지 사용하기 쉬운 기능을 사용하여 UI 역할을 하는 ASP 페이지, 클라이언트 기능을 구현하는 JavaScript, SQL Server 2000의 비즈니스 논리를 완성하는 T-SQL로 구성된 간단한 채팅 응용 프로그램을 만들 것입니다.
클라이언트와 서버는 XML을 사용하여 통신합니다. 웹 서버가 메시지 청크를 받은 후 메시지 청크는 SQL Server의 타임스탬프가 있는 MESSAGES 테이블에 추가됩니다. 미리 정의된 시간 간격에 따라 클라이언트는 서버에 마지막으로 정보를 요청한 이후 데이터베이스에 추가된 메시지 목록과 온라인 사용자 목록을 포함하여 서버에 업데이트된 정보를 요청합니다.
클라이언트는 XMLHTTP 개체를 통해 서버에
서버가 메시지 요청에 응답하면 마지막 요청 이후의 모든 새 메시지 목록을 반환합니다. 고객 활동을 추적하기 위해 고객 활동 날짜/시간이 포함된 ACTIVITY 테이블을 사용합니다. 고객의 신원은 직관적인 이름을 가진 HANDLES 테이블에 저장됩니다.
다음은 테이블을 생성하는 스크립트입니다.
CREATE TABLE [dbo].[ACTIONS] ( [action_id] [int] IDENTITY (1, 1) NOT NULL , [action_name] [varchar] (50) NULL , [action_descr] [varchar] (255) NULL ) ON [PRIMARY] GO CREATE TABLE [dbo].[ACTIVITY] ( [handle_id] [int] NULL , [action_time] [datetime] NULL ) ON [PRIMARY] GO CREATE TABLE [dbo].[HANDLES] ( [handle_id] [int] IDENTITY (1, 1) NOT NULL , [handle] [nvarchar] (63) NULL ) ON [PRIMARY] GO CREATE TABLE [dbo].[MESSAGES] ( [msg_id] [int] IDENTITY (1, 1) NOT NULL , [message] [nvarchar] (255) NULL , [action_id] [int] NULL , [action_time] [datetime] NOT NULL ) ON [PRIMARY]
모든 데이터 작업은 저장 프로시저를 통해 완료됩니다. 모든 데이터 인터페이스는 웹 서버와 SQL Server 2000 간의 연락 역할을 하는 일반 COM을 통해 수행됩니다. COM 개체는 내가 사용하려는 RunSPReturnStream 메서드를 노출합니다. 이 메서드의 첫 번째 매개 변수는 저장 프로시저의 이름이고 두 번째 매개 변수는 매개 변수 배열의 배열입니다. 매개변수 배열은 (paraName, paramType, paramLength, paramValue) 형식의 단순 배열입니다. paramType은 ADO 매개변수 유형 열거형 중 하나입니다. ASP 페이지는 작업을 수락하고 응답을 생성하는 역할을 담당합니다. 이를 HandleAction.asp라고 하겠습니다.
채팅 페이지에는 채팅 메시지를 표시하는 영역이 포함됩니다. 이 영역은 DIV에 포함된 테이블입니다. 이 TABLE은 xmlMessages XML 데이터 아일랜드에 바인딩됩니다. 또 다른 영역에는 현재 사용자가 표시됩니다. 이 영역은 xmlUsers XML 데이터 아일랜드에 바인딩된 DIV에 포함된 테이블이기도 합니다. 사용자가 메시지를 입력할 수 있는 TEXTAREA도 있습니다.
위 내용은 IE와 SQL2k를 이용한 XML 채팅 프로그램 개발 개요입니다. 더 많은 관련 내용은 PHP 중국어 홈페이지(www.php.cn)를 참고해주세요!