20 itens ASP que os iniciantes devem lembrar
1. Como usar ASP para determinar o caminho físico virtual do seu site
Resposta: Use o método Mappath
< p alinhar=centro >< tamanho da fonte=4 face=Arial >< b >
O caminho físico para este site virtual é:
< /b >< /font >
<cor da fonte=#FF0000 tamanho=6 face=Arial >
< %= Servidor.MapPath(/)% >
</font></p>
2. Como posso saber qual navegador o usuário está usando?
Resposta: Use o método do objeto Request
strBrowser=Request.ServerVariables(HTTP_USER_AGENT)
Se Instr(strBrowser,MSIE) < > 0 Então
Resposta.redirect(ForMSIEOnly.htm)
Outro
Resposta.redirect(ForAll.htm)
Terminar se
3. Como calcular o número médio de visitantes repetidos por dia
Resposta: Solução
<% datainicial=DateDiff(d,Agora,01/01/1990)
se strdate< 0 então startdate=startdate*-1
avgvpd=Int((usercnt)/datainicial) % >
Mostrar resultados
< % resposta.write(avgvpd) % >
é isso.esta página foi visualizada desde 10 de novembro de 1998
4. Como exibir imagens aleatórias
<% dim p,ppic,dpic
pic = 12
randomizar
p=Int((ppic*rnd)+1)
dpic=graphix/randompics/&p&.gif
%>
mostrar
<img src=< %=dpic% > >
5.Como retornar à página anterior
Resposta: < a href=< %=request.serverVariables(Http_REFERER)% > >página anterior</a >
Ou use uma imagem como: < img src=arrowback.gif target='_blank'> Se o servidor estiver em execução, se uma caixa de diálogo puder ser exibida no servidor, então você terá que esperar até que alguém clique em OK antes que seu programa possa continue a executar. Geralmente, o servidor não será protegido, então a Microsoft tem que banir esta função e dizer aleatoriamente (:) haha) que você não tem permissão. No entanto, a combinação de ASP e script de cliente pode exibir uma caixa de diálogo, como segue:
< % suaVar=caixa de diálogo de teste % >
<% linguagem de script='javascript' >
alerta(< %=suavar% >)
</script>
11. Existe alguma maneira de proteger seu código-fonte de ser visto por outras pessoas?
Resposta: Você pode baixar um codificador de script do Microsoft Windows, que pode criptografar scripts asp e scripts javascript/vbscript do lado do cliente. . . No entanto, depois que o cliente for criptografado, apenas o IE5 poderá executá-lo. Depois que o script do lado do servidor for criptografado, ele só poderá ser executado se o mecanismo de script 5 estiver instalado no servidor (basta instalar um IE5).
12.Como posso transferir a string de consulta de um arquivo asp para outro?
Resposta: Adicione a seguinte frase ao arquivo anterior: Response.Redirect(second.asp? & Request.ServerVariables(QUERY_STRING))
O arquivo 13.global.asa sempre não funciona?
Resposta: Global.asa só é válido se o diretório da web estiver definido como aplicativo da web e global.asa for válido no diretório raiz de um aplicativo da web. O IIS4 pode usar o Internet Service Manager para definir as configurações do aplicativo. Como posso fazer com que o arquivo htm execute o código de script como um arquivo asp?
14. Como posso fazer com que o arquivo htm execute código de script como o arquivo asp?
Resposta: Gerenciador de serviços de Internet -> selecione o site padrão -> botão direito do mouse -> propriedades do menu -> diretório inicial -> configurações do aplicativo (configuração do aplicativo) -> clique na configuração do botão -> mapeamento do aplicativo -> clique no botão Adicionar -> executável Navegar selecione /WINNT YSTEM32/INETSRV/ASP.DLL EXTENSION, insira exclusões do método htm, insira PUT.DELETE e confirme tudo. Porém, é importante ressaltar que o htm também será processado pelo asp.dll e a eficiência será reduzida.
15.Como cadastrar componentes
Resposta: Existem dois métodos.
O primeiro método: Registrar manualmente a DLL Este método foi usado do IIs 3.0 ao IIs 4.0 e outros servidores Web. Requer que você execute-o a partir da linha de comando, insira o diretório que contém a DLL e digite: regsvr32 nome_do_componente.dll, por exemplo, c:/temp egsvr32 AspEmail.dll Ele registrará as informações específicas da dll no registro. no servidor. O componente pode então ser usado no servidor, mas há uma falha nessa abordagem. Depois que o componente for registrado usando esse método, o componente deverá definir a conta anônima do NT adequadamente para ter permissão para executar a dll. Em particular, alguns componentes precisam ler o registro, portanto, este método de registro de componentes só é usado quando não há MTS no servidor. Para cancelar o registro da dll, use: regsvr32 /u aspobject.dll exemplo c:/temp egsvr32 / uaneiodbc. .dll
Segundo método: Use MTS (Microsoft Transaction Server) MTS é um novo recurso do IIS 4, mas oferece grandes melhorias. O MTS permite especificar que apenas usuários privilegiados podem acessar os componentes, melhorando bastante as configurações de segurança no servidor do site. As etapas para registrar um componente no MTS são as seguintes:
1) Abra o console de gerenciamento do IIS.
2) Expanda o servidor de transações, clique com o botão direito em pacotes instalados e selecione novo pacote.
3) Clique em criar um pacote vazio.
4) Dê um nome ao pacote.
5) Especifique uma conta de administrador ou use interativa (se o servidor costuma fazer login usando um administrador).
6) Agora clique com o botão direito nos componentes expandidos no pacote que você acabou de criar. Selecione o novo componente.
7) Selecione instalar novo componente [b].
8) Encontre seu arquivo .dll e selecione próximo para finalizar.
Para excluir este objeto, basta selecionar seu ícone e depois selecionar excluir.
Nota: Preste atenção especial ao segundo método, é a melhor maneira de depurar os componentes que você escreve sem ter que reiniciar a máquina todas as vezes.
16. Conexão de banco de dados ASP e Access:
17. Conexão de banco de dados ASP e SQL:
Crie um objeto de conjunto de registros:
definir rs=server.createobject(adodb.recordset)
Instrução SQL rs.open,conn,3,2
18. Como usar comandos SQL comuns:
(1) Triagem de registro de dados:
sql=select * da tabela de dados onde nome do campo = valor do campo ordenar por nome do campo [desc]
sql = selecione * da tabela de dados onde o nome do campo é '% valor do campo%' ordene pelo nome do campo [desc]
sql = selecione os 10 primeiros * da tabela de dados onde o nome do campo é ordenado pelo nome do campo [desc]
sql = selecione * da tabela de dados onde o nome do campo está ('valor 1', 'valor 2', 'valor 3')
sql=select * da tabela de dados onde o nome do campo está entre o valor 1 e o valor 2
(2) Atualizar registros de dados:
sql=atualizar tabela de dados definir nome do campo=valor do campo onde expressão condicional
sql=atualizar conjunto de tabela de dados campo 1=valor 1, campo 2=valor 2...campo n=valor n onde expressão condicional
(3) Excluir registros de dados:
sql = excluir da tabela de dados onde a expressão condicional
sql = excluir da tabela de dados (excluir todos os registros da tabela de dados)
(4) Adicionar registro de dados:
sql=inserir na tabela de dados (campo 1, campo 2, campo 3...) valores (valor 1, valor 2, valor 3...)
sql=inserir na tabela de dados de destino selecione * da tabela de dados de origem (adicione registros da tabela de dados de origem à tabela de dados de destino)
(5) Função estatística de registro de dados:
AVG (nome do campo) deriva uma média da coluna da tabela
COUNT(*|nome do campo) conta o número de linhas de dados ou conta o número de linhas de dados com um valor em uma determinada coluna
MAX (nome do campo) obtém o valor máximo de uma coluna da tabela
MIN (nome do campo) obtém o valor mínimo de uma coluna da tabela
SUM (nome do campo) adiciona os valores das colunas de dados
Como fazer referência à função acima:
sql = selecione sum (nome do campo) como alias da tabela de dados onde a expressão condicional
definir rs=conn.excute(sql)
Use rs (alias) para obter valores estatísticos e use os mesmos métodos acima para outras funções.
(5) Criação e exclusão de tabelas de dados:
CREATE TABLE nome da tabela de dados (campo 1 tipo 1 (comprimento), campo 2 tipo 2 (comprimento)...)
Exemplo: CREATE TABLE tab01(nome varchar(50),data e hora padrão agora())
Nome da tabela de dados DROP TABLE (excluir permanentemente uma tabela de dados)
19. Métodos de objeto recordset:
rs.movenext move o ponteiro do registro uma linha para baixo a partir da posição atual
rs.moveprevious move o ponteiro do registro uma linha para cima a partir da posição atual
rs.movefirst move o ponteiro do registro para a primeira linha da tabela de dados
rs.movelast move o ponteiro do registro para a última linha da tabela de dados
rs.absoluteposition=N move o ponteiro do registro para a linha N da tabela de dados
rs.absolutepage=N move o ponteiro do registro para a primeira linha da página N
rs.pagesize=N define cada página para N registros
rs.pagecount retorna o número total de páginas de acordo com as configurações de pagesize
rs.recordcount retorna o número total de registros
rs.bof retorna se o ponteiro do registro excede o início da tabela de dados, verdadeiro significa sim, falso significa não
rs.eof retorna se o ponteiro do registro excede o final da tabela de dados, verdadeiro significa sim, falso significa não
rs.delete exclui o registro atual, mas o ponteiro do registro não se move para baixo
rs.addnew adiciona registros ao final da tabela de dados
rs.update atualiza registros da tabela de dados
-------------------------------------------------- -------
20 métodos de objeto Recordset
Método aberto
conjunto de registros.Open Source, ActiveConnection, CursorType, LockType, Opções
Fonte
O objeto Recordset pode ser conectado ao objeto Command através da propriedade Source. O parâmetro Source pode ser um nome de objeto Command, um comando SQL, um nome de tabela de dados especificado ou um procedimento armazenado. Se este parâmetro for omitido, o sistema utilizará a propriedade Source do objeto Recordset.
Conexão ativa
Objetos Recordset podem se conectar a objetos Connection por meio da propriedade ActiveConnection. O ActiveConnection aqui pode ser um objeto Connection ou uma sequência de parâmetros de sequência contendo informações de conexão com o banco de dados (ConnectionString).
CursorType
O parâmetro CursorType do método Open do objeto Recordset indica com qual tipo de cursor os dados serão iniciados, incluindo adOpenForwardOnly, adOpenKeyset, adOpenDynamic e adOpenStatic, conforme descrito abaixo:
-------------------------------------------------- ----------
Descrição do valor constante constante
-------------------------------------------------- ----------
adOpenForwardOnly 0 Valor padrão, inicia um cursor que só pode avançar (Apenas Avançar).
adOpenKeyset 1 inicia um cursor do tipo Keyset.
adOpenDynamic 2 inicia um cursor do tipo Dinâmico.
adOpenStatic 3 inicia um cursor do tipo estático.
-------------------------------------------------- ----------
Os tipos de cursor acima afetarão diretamente todas as propriedades e métodos do objeto Recordset. A lista a seguir ilustra as diferenças entre eles.
-------------------------------------------------- ----------
Propriedades do conjunto de registros adOpenForwardOnly adOpenKeyset adOpenDynamic adOpenStatic
-------------------------------------------------- ----------
AbsolutePage não oferece suporte para leitura e escrita.
AbsolutePosition não é compatível. Não é compatível com leitura e gravação.
ActiveConnection ler-escrever ler-escrever ler-escrever ler-escrever
BOF somente leitura somente leitura somente leitura somente leitura
Marcador não é suportado. Ele pode ser lido e gravado.
CacheSize Legível e gravável Legível e gravável Legível e gravável Legível e gravável
CursorLocation Legível e gravável Legível e gravável Legível e gravável Legível e gravável
CursorType Ler e escrever Ler e escrever Ler e escrever Ler e escrever
EditMode somente leitura somente leitura somente leitura somente leitura
EOF somente leitura somente leitura somente leitura somente leitura
Filtro Legível e gravável Legível e gravável Legível e gravável Legível e gravável
LockType Ler e escrever Ler e escrever Ler e escrever Ler e escrever
MarshalOptions Legível e gravável Legível e gravável Legível e gravável Legível e gravável
MaxRecords Legível e gravável Legível e gravável Legível e gravável Legível e gravável
PageCount não é compatível. Somente leitura não é compatível.
PageSize Legível e gravável Legível e gravável Legível e gravável Legível e gravável
RecordCount não suporta somente leitura somente leitura
Fonte Legível e gravável Legível e gravável Legível e gravável Legível e gravável
Estado somente leitura somente leitura somente leitura somente leitura
Status somente leitura somente leitura somente leitura somente leitura
Adicionar novo suporte suporte suporte suporte
Suporte CancelBatch suporte suporte suporte
Suporte CancelUpdate suporte suporte suporte
Clone não é compatível. Não é compatível.
Fechar suporte suporte suporte suporte
Excluir suporte suporte suporte suporte
Suporte GetRows suporte suporte suporte
Mover não é suportado, suportado, suportado.
Suporte MoveFirst suporte suporte suporte
MoveLast não suportado suportado suportado suportado
Suporte MoveNext suporte suporte suporte
MoveAnterior Não suportadoSuportadoSuportado
NextRecordset suporte suporte suporte suporte
Suporte aberto suporte suporte suporte
Solicitar suporte suporte suporte suporte
Ressincronização Não suportada Não suportada Suportada Suportada
Suporta
Suporte de atualização Suporte Suporte Suporte
Suporte de suporte de suporte UpdateBatch
-------------------------------------------------- ----------
O método NextRecordset não se aplica a bancos de dados Microsoft Access.
Tipo de bloqueio
O parâmetro LockType do método Open do objeto Recordset indica o tipo de Lock a ser utilizado. Se este parâmetro for ignorado, o sistema utilizará a propriedade LockType do objeto Recordset como valor padrão. Os parâmetros LockType incluem adLockReadOnly, adLockPrssimistic, adLockOptimistic e adLockBatchOptimistic, etc., que são descritos a seguir:
-------------------------------------------------- ----------
Descrição do valor constante constante
-------------------------------------------------- ----------
adLockReadOnly 1 Valor padrão, o objeto Recordset inicia no modo somente leitura, não pode executar AddNew, Update, Delete e outros métodos
adLockPrssimistic 2 Quando a fonte de dados estiver sendo atualizada, o sistema bloqueará temporariamente as ações de outros usuários para manter a consistência dos dados.
adLockOptimistic 3 Quando a fonte de dados está sendo atualizada, o sistema não bloqueará as ações de outros usuários e outros usuários poderão adicionar, excluir e modificar dados.
adLockBatchOptimistic 4 Quando a fonte de dados está sendo atualizada, outros usuários devem alterar o atributo CursorLocation para adUdeClientBatch para adicionar, excluir ou modificar dados.