¿Cómo crear una sala de chat usando ASP? puntuación alta
Debe haber estado en una sala de chat, pero ¿no quiere crear su propia sala de chat? De hecho, esto no es nada difícil. Active Server Script proporciona objetos de aplicación y objetos de sesión. El objeto de aplicación representa una aplicación de Active Server, es decir, una página web. El objeto de sesión representa un usuario, que representa la visita de un usuario a esta página. El objeto Aplicación permite que todos los usuarios que acceden a él compartan información y pueden conservar datos mientras el servidor web se está ejecutando. El objeto Sesión también puede conservar datos durante la visita de un usuario. Con estos dos objetos, puede crear el suyo propio. Aplicación de chat.
---- 1. Objeto Aplicación:
---- 1. Propiedades: El objeto Aplicación no tiene propiedades integradas, pero los usuarios pueden definir sus propias propiedades:
---- Aplicación("nombre de propiedad") = valor, una vez que se asigna una propiedad, existirá hasta que el servidor web cierre el servicio y todos los usuarios podrán leerla, por lo que puede Ser utilizado para enviar conversaciones entre usuarios.
---- 2. Método: cuando dos usuarios escriben operaciones en el valor del atributo Aplicación al mismo tiempo, habrá una situación en la que la modificación de una de las partes se sobrescribirá directamente con la operación de la otra parte. Para evitar este fenómeno, el usuario puede llamar al método Lock para bloquearlo, de modo que solo el usuario actual pueda operar las propiedades de la Aplicación. Una vez que el usuario complete la operación, llamará al método Unlock para desbloquear la aplicación. que otros usuarios también pueden modificar las propiedades de la aplicación.
---- 3. Evento: Para crear una aplicación Active Server, necesita crear un archivo Global.asa en el directorio de inicio virtual del servidor web donde está almacenada la aplicación, que contiene el objeto de la aplicación y el objeto de sesión Rutinas de manejo de eventos, normalmente el evento Application_Onstart se usa para definir propiedades a nivel de aplicación.
---- II. Cree una aplicación de chat: el programa se ejecuta como se muestra en la siguiente figura (omitida)
---- 1. Establezca las variables de la aplicación: dos deben se establece aquí Variables a nivel de aplicación: una es la matriz gchars, que se usa para almacenar el contenido de la conversación del usuario, la otra es gcounter, que se usa como contador para controlar el número de líneas que se muestran en la página. Aquí hacemos que la página muestre como máximo las últimas 10 líneas de la conversación.
Estas variables deben inicializarse cuando se inicia la aplicación, por lo que se crean en el evento application_onstart del archivo Global.asa:
< script language="vbscript" runat="server" >
sub application_onstart()
dim lchars(10)
aplicación("gchars")=lchars
aplicación("gcounter")=0 p> p>
end sub
< /script >
---- 2. Determine cómo manejar ASP: cuando el usuario solicita este archivo ASP por primera vez , el uso es el método GET Luego, cuando el usuario ingresa el contenido de la conversación y lo envía usando el método POST, el formulario se envía solo, por lo que este archivo ASP se solicita nuevamente. Determinamos cómo solicitar el archivo a través de Request .ServerVariales (. Variable "Request_Method"): IF Request .ServerVariales("Request_Method")="POST" Then
---- 3. Determine el hablante: cuando el usuario envía el cuadro de diálogo por primera vez, ingrese su nombre , una vez ingresados los datos del cuadro txtname, el programa crea una variable a nivel de sesión para contener el nombre del usuario y lo muestra automáticamente en el cuadro txtname, por lo que el usuario no necesita ingresar el nombre nuevamente a menos que desee unirse a la conversación con un nombre diferente.
IF len(request("txtname")) >0 entonces
Sesión("txtname")=request("txtname")
Finalizar si
< h5 >Su nombre:
< input type="type" name="txtname"
length="20" value=< %=sesión ( "ssname")% & gt; >
----
---- 4. Procese el diálogo del usuario: Primero determine el número de líneas de diálogo que se han escrito para el chat, para facilitar la lectura, el número de líneas que se muestra aquí está limitado a 10, si la Aplicación ("gcounter") es mayor que 9, se establece en 0 y luego el nombre del hablante se almacena junto con el contenido en la Aplicación ( Matriz "gchars"):
Aplicación("gchars")
(Aplicación("gcounter"))=Sesión("ssname") &
". " & request(txttalk)
Luego agregue 1 al contador: Aplicación("gcounter") = Aplicación(" gcounter")+1
--- - 5. Agregue el contenido de la matriz escribiendo en el navegador del cliente: después de que el usuario envía el contenido de la conversación, el programa debe escribir el contenido de la matriz en el navegador del cliente para que todos en la sala de chat puedan ver el contenido de la conversación enviada: p>
si la aplicación (" gcounter")=0 entonces
lstemp=application("gchars"))(0)
si no
para x =0 a aplicación("gcounter ")-1
lstemp=lstemp & "<br >" & aplicación("gchars")(x)
siguiente
end if
end if
p>
---- Finalmente, use el método Response.write para escribir el valor de la variable lstemp en el navegador del cliente. :
response.write lstemp
---- El código completo de Default.asp es el siguiente:
< %response.expires=0 p>
response.buffer=true% >
< html & gt;< head >< title >Muestra de chat< /head >
< body > < center >
< h3 >Mi chat < hr >
< % if request.servervariables("request_method")="POST" entonces
si len(request("txtname")) >0 entonces
session("ssname")=request("txtname")
finalizar si
aplicación.bloqueo
mcounter=a
aplicación("gcounter")
mchars=application("gchars")
si mcounter >9 entonces
mcounter=0
finalizar si
mchars(mcounter)=session("ssname")
& ":" & request("txttalk")
mcounter=mcounter+1
aplicación("gcounter")=mcounter
aplicación("gchars")= mchars
aplicación.
end if % >
< % si aplicación("gcounter")=0 entonces
lstemp=application("gchars")(0)
else
for x=0 a application("gcounter")-1
lstemp=lstemp &"< br >" & application("gchars")(x)
siguiente
end if
response.write lstemp % >
< hr > < center >
< form action= "default.asp" método=post name=" aspform" >
< b >< a href="default.asp" >
Actualizar visualización < /b >
< h5 > hablar:
< input type=" text" name="txttalk" size="70" > < br >
< h5 > Su nombre:
< input type="text" name="txtname" length="20"
value=& lt; >
< tipo de entrada="enviar" nombre="cmdpost" default="true" valor="enviar" >
< /formulario >< / centro >< / cuerpo >< /html >
---- El código anterior se puede ejecutar en NT4.0, IIS4.0 e IIS4.0. 0, IIS4.0, IE4.0 y Pwin98, PWS e IE4.0 respectivamente.