Criar Web, manuais e recursos para desenvolvimento web
Manuais
Programas
FAQS
Diretório
Comunidade
  Inicio > Manuais > Workshop de ASP
SEÇÕES
Manuais relacionados
+Workshop de ASP
Categorias
+ASP
+Scripts em ASP

Índice do Manual Workshop de ASP
+ Melhorar o registro em buscadores
+ Include. Incluir arquivos ASP
+ Crie seu próprio buscador
+ O objeto RecordSet
+ Paginar resultados em ASP
+ Global .ASA
+ Contar usuários ativos
+ Percorrido arrays e coleções
+ Mais sobre cookies
+ Detector de navegador
+ Trabalho com o buffer da página
+ Utilização ou não do Cache
+ Objeto Server
+ Leitura e escritura de arquivos em ASP
+ Cálculo de dias que faltam para uma data
+ Componentes do servidor ASP
+ AspUpload
+ Exportar dados de MySQL a Microsoft Access
+ Exportar dados de Access a MySQL
+ Mandar e-mails pelo ASP
+ Criar banco de dados Access com ASP
+ Passagem de variáveis pela URL
+ Uso de CDONTS para script de recomendar a um amigo em ASP
+ Servidores nos EUA e o asp
+ Como fazer zonas aleatórias em asp
+ Selects dependentes com ASP e banco de dados
+ Sistema de Recomendação em ASP com CDONTS
+ Encaminhar o navegador a uma URL com ASP detalhado
+ Uso de cookies
+ Galeria de imagens em ASP
+ Escrever um arquivo Excel através de ASP
+ Tratar erros em sentenças SQL executadas em ASP
+ Validar uma data com ASP
+ Arredondar decimais em ASP
+ Devolver um arquivo de Word através de uma página ASP
+ Um Chat em ASP
+ Averiguar o endereço IP de um visitante e bloquear IPs, em ASP
+ Lista dos arquivos de um diretório com ASP
+ Percorrido genérico por um recordset com ASP
+ Intranets com ASP
+ Restringir o acesso a páginas com ASP
+ Saídas em formato compatível Excel
+ Variáveis de servidor em ASP
+ GeoLite Country para ASP. Conhecer o país de um IP
+ Um Sistema de postais Virtuais em ASP I
+ Um Sistema de postais Virtuais em ASP II
+ Messenger através de BD em ASP
+ Objeto Datagrid de ASP.NET em ASP
+ Percorrer campos de formulário complexos em ASP
+ Percorrer valor do campo auto-numérico depois de inserir em ASP
+ O Objeto Browser Capabilities
+ Buscador simples em ASP melhorado

Descrição dos capítulos

Parceiros
- CSS para Web Design
- S.O.S Designers
- Slackware-Brasil
- Crie seu Web site
- Oficina da Net
- CodigoFonte.net


Um Chat em ASP

ASP 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

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
Entre os comentários não revistos podem ter alguns interessantes que tenham sido enviado recentemente.
 Foram econtrados 2 comentários sem rever

VerVer os comentários não revistos



Sobre nós | Copyright | Anuncie | Entrar em contato <criarweb>

Hospedado por Hostnet Hospedagem de Sites