|
|
|
||||||||||||||||||||||
|
|||||||||||||||||||||||
|
|||||||||||||||||||||||
Parceiros - CSS para Web Design - S.O.S Designers - Slackware-Brasil - Crie seu Web site - Oficina da Net - CodigoFonte.net |
Um Chat em ASPASP pode não ser a linguagem mais adequada para uma aplicação de chat, porém o caso é que funciona e ao ser ASP é completamente compatível com qualquer navegador, e ademais é, como vocês verão, tremendamente simples de desenvolver. O código que lhes mostro é o utilizado no chat de minha web, o introduzir melhoras será com vocês, é fácil adicionar funcionalidades ao estilo das que vocês verão em outros chats em Java, como cores, lista de usuários, etc ...
Bom, começamos pelo princípio. 1.-O primeiro que necessitamos é um lugar para armazenar as frases que os usuários introduzirem para logo mostrá-las. Para isso, usaremos um array de nove elementos, que serão a quantidade de frases que mostraremos no chat ( poderão mudar o número ao que lhes parecer oportuno). Este array será salvo dentro do objeto Application, a fim de que possa ser acessado por todo o mundo. A fim de que esteja disponível sempre, o criaremos dentro do arquivo global.asa. Global.asa <SCRIPT LANGUAGE="VBScript" RUNAT="Server"> Sub Application_OnStart Dim Auxiliar() Redim Auxiliar(9) Application("Opinioes")=Auxiliar End Sub </SCRIPT> A partir deste momento temos uma variável de aplicação denominada "opiniões" que contém nosso chat . 2.-O seguinte que necessitamos é uma página que nos mostre o conteúdo de nosso chat (ou seja, o que há em application("opinioes"). A este modulo o denominaremos visualizacao.asp. Consiste em uma página que se chama a si mesma cada x segundos (META HTTP-EQUIV="REFRESH" CONTENT="5), com o que nos refresca a informação, e que mostra os dados contidos em Application("opinioes") mediante um simples loop FOR Visualizacao.asp <% PaginaAtual="http://"&_ Request.ServerVariables("SERVER_NAME")&_ Request.ServerVariables("SCRIPT_NAME") %> <html> <head> <META HTTP-EQUIV="REFRESH" CONTENT="5;<%=PaginaActual%>"> <title>MiniChat (visualizacao)</title> </head> <body> <FONT FACE="Comic Sans MS" COLOR="Blue" size="1"> <% IF NOT isArray( Application("Opinioes")) THEN Application.Lock Dim Auxiliar() Redim Auxiliar(9) Application("Opinioes")=Auxiliar Application.UnLock END IF Temporal=Application("Opinioes") FOR Opinion=8 to 0 step -1%> <%= Temporal(Opinion) %> <BR> <% NEXT %> <FONT> </body> </html> 3.-Nosso terceiro módulo será "incluir.asp" o qual nos vai permitir que os usuários escrevam opiniões no chat. Para que um usuário escreva uma colaboração, este usuário deve estar identificado por um apelido ou "nick", este apelido será salvo em uma cookie. incluir.asp <% IF Request.Cookies("Apelido")="" and request.form("opiniao")<>"" THEN if request.form("apelido")<>"" then Response.Cookies("Apelido")=Request.Form("Apelido") else Response.Cookies("Apelido")="Anônimo" end if Application.Lock Temporal=Application("Opinioes") FOR i=7 TO 0 STEP -1 Temporal(i+1)=Temporal(i) NEXT if request.form("apelido")<>"" then Temporal(0)="<FONT COLOR=""#000000"">** " & Request.Form("Apelido") & " ** Entra no minichat</FONT>" else Temporal(0)="<FONT COLOR=""#000000"">** Anonimo ** Entra no minichat</FONT>" end if Application("Opinioes")=Temporal Application.Unlock END IF IF Request.Form("Opiniao")<>"" THEN Apelido=Request.Cookies("Apelido") Application.Lock Temporal=Application("Opinioes") FOR i=7 TO 0 STEP -1 Temporal(i+1)=Temporal(i) NEXT Temporal(0)=Apodo&": "&Request.Form("Opiniao") Application("Opiniao")=Temporal Application.Unlock END IF%> <html> <head> <title>incluir opiniao</title> <base target="_self"> </head> <body bgcolor="#6699FF"> <FORM METHOD="POST" ACTION="incluir.asp"> <% IF Request.Cookies("Apelido")="" THEN %> <font color="#FFFFFF"> Apelido:</font> <INPUT TYPE="TEXT" SIZE=10 NAME="Apelido"> <input type="hidden" name="go" size="20" value="si"><BR> <% END IF %> <INPUT TYPE="TEXT" SIZE=30 NAME="Opiniao"> <INPUT TYPE="SUBMIT" VALUE="Enviar"> <a href="fechar.asp" target="_top">Sair</a> </FORM> </body> </html> 4.- Quando o usuário terminar sua sessão de chat devemos eliminar a cookie que o identifica, para isso usaremos o modulo fechar.asp fechar.asp <% if Request.cookies("Apelido")<>"" then Application.Lock Temporal=Application("Opinioes") FOR i=7 TO 0 STEP -1 Temporal(i+1)=Temporal(i) NEXT Temporal(0)="<FONT COLOR=""#FF0000"">** " &Request.cookies("Apelido")&" ** sai do minichat</FONT>" Application("Opinioes")=Temporal Application.Unlock response.cookies("apelido")="" END IF%> <HTML> <HEAD> <script language="JavaScript"> {close();} </SCRIPT> </HEAD> <BODY> </BODY> </HTML> 5.- Agora montaremos tudo em uma página de frames default.asp <html> <head> <title>Sala de bate-papo</title> </head> <FRAMESET rows="*,70"> <FRAME SRC="visualizacao.asp"> <FRAME SRC="incluir.asp" target="_self"> </FRAMESET> </html> 6.- Para que fique "bonito" mostraremos o chat em uma nova janela sem barras e menor, isso será feito com JavaScript <HTML> <HEAD> <script language="JavaScript"> <!-- function openWindow(url, name) { popupWin = window.open(url, name, 'scrollbars,resizable,width=400,height=350') } // --> </script> </HEAD> <BODY BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#000000" VLINK="#000000"> <a HREF="javascript:openWindow('default.asp', 'minichat');">Enter chatroom</a> </BODY> </HTML>
Autoria e outras referências sobre este artigo Dentro deste artigo: + 1 manual relacionado + 2 Categorias relacionadas + 2 Comentários sem rever
Manuais relacionados com este artigo Dentro de Workshop de ASP Categorias relacionadas Através das categorias do nosso diretório podem ser encontrados outros tipos de recursos relacionados com este artigo: + Entrar em ASP+ Entrar em Scripts em ASP Comentário sem rever
|
| Sobre nós | Copyright | Anuncie | Entrar em contato | <criarweb> |