Recomendado: Sobre o manuseio de exceções sob asp.net Ajax Recentemente, quando eu estava trabalhando em um projeto, apliquei muito o ASP.NET AJAX. Como no modo de atualização assíncrono do UpdatePanel, as exceções que ocorrem durante o processamento em segundo plano não causarão alterações na interface do cliente, mas exibirão diretamente as informações de exceção no modo de alerta. Então, eu era preguiçoso e cometi o erro diretamente quando o plano de fundo detecta a entrada que não atende aos requisitos.
20 dicas muito úteis no ASP:
1. Como usar asp para determinar o caminho físico virtual do seu site
Resposta: Use o método Mappath
<p align = Center> <font size = 4 face = Arial> <b>
O caminho físico para este site virtual é:
</b> </font>
<font color =#ff0000 size = 6 face = arial>
< % = Server.mappath (/) %>
</font> </p>
2. Como sei que o navegador usado pelo usuário?
Resposta: Use o método do objeto de solicitação
strbrowser = request.Servervariables (http_user_agent)
Se Instr (strbrowser, msie) <> 0 então
Response.Redirect (formsieonly.htm)
Outro
Response.Redirect (forall.htm)
Final se
3. Como calcular o número médio de visitas repetidas por dia
Resposta: Solução
< % startDate = datediff (d, agora, 01/01/1990)
Se strdate <0 então startDate = startDate*-1
avgvpd = int ((userCnt)/startDate) %>
Mostrar resultados
< % Response.write (avgvpd) %>
É isso. Esta página foi visualizada desde 10 de novembro de 1998
4. Como exibir imagens aleatórias
< % dim p, ppic, dpic
PPIC = 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 pré -ira </a>
Ou use uma imagem como: <img src = arrowback.gif alt = < % = request.ServerVariables (http_referer) % >>
6. Como determinar o endereço IP da outra parte
Resposta: < % = request.Servervariables (Remote_addr) %>
7. Como vincular a uma imagem
Resposta: < % @linguagens = vbscript %>
< % Response.Expires = 0
strimagename = graphix/erros/erroriamge.gif
Response.Redirect (Strimagename)
%>
8. Caixa de diálogo de entrada de senha de força
Resposta: Coloque esta frase no início da página
< % Response.status = 401 não autorizado
resposta.END
%>
9. Como passar variáveis de uma página para outra
Resposta: Use o tipo oculto para passar as variáveis
< % de forma método = pós -ação = myNextPage.asp>
< % para cada item no request.form %>
<input namee = < % = item %> type = oculto
value = < % = server.htmlencode (request.form (item)) % >>
< % Next %>
</morm>
10. Por que eu uso o MSGBox no programa ASP? O erro do programa diz que não há permissão
Resposta: Como o ASP é executado pelo servidor, se uma caixa de diálogo puder ser exibida no servidor, você precisará esperar até que alguém pressione OK antes que seu programa possa continuar sendo executado. Geralmente, não haverá ninguém no servidor, portanto, a Microsoft precisa proibir essa função e dizer aleatoriamente (haha) que não há permissão. No entanto, os scripts ASP e clientes podem exibir uma caixa de diálogo, como segue:
11. Existe uma maneira de proteger seu código -fonte e não permitir que as pessoas o vejam
R: Você pode baixar um codificador do Microsoft Windows Script, que pode criptografar scripts ASP e scripts do cliente JavaScript/VBScript. . . No entanto, depois que o cliente é criptografado, apenas o IE5 pode ser executado. Depois que o servidor for criptografado, apenas se o mecanismo de script 5 estiver instalado no servidor (a instalação de um IE5 puder ser encontrada).
12. Como posso transferir string de consulta de um arquivo ASP para outro?
Resposta: O antigo arquivo adiciona a próxima frase: Response.redirect (Second.asp? & Request.servervariables (query_string))
13. O arquivo global.ASA sempre não funciona?
Resposta: Somente quando o diretório da web está definido como aplicativo da web, global.asa é válido e global.asa é válido no diretório raiz de um aplicativo da web. O IIS4 pode usar o Internet Service Manager para configurar as configurações do aplicativo Como o arquivo HTM pode executar o código de script como um arquivo ASP?
14. Como o arquivo HTM pode executar o código de script como um arquivo ASP?
Resposta: Gerenciador de Serviços de Internet -> Selecione Site padrão -> Botão do mouse direito -> Propriedades do menu -> Diretório da casa -> Configurações do aplicativo -> Clique em Configuração do botão -> Mapeamento de aplicativos -> Clique em Botão Adicionar -> Executável Enter Htm Method Excclusions Enter No entanto, vale a pena notar que, dessa maneira, a eficiência será reduzida.
15. Como registrar componentes
Resposta: Existem duas maneiras.
O primeiro método: registre manualmente DLL Este método é usado do IIS 3.0 ao IIS 4.0 e outros servidores da Web. Exige que você o execute na linha de comando, digite o diretório que contém a DLL e entre: regsvr32 component_name.dll, por exemplo, c:/temp/regsvr32 aspemail.dll registrará as informações específicas da DLL no registro no servidor. Em seguida, esse componente pode ser usado no servidor, mas esse método tem uma falha. Depois de registrar um componente usando esse método, o componente deve definir a conta anônima correspondente com o NT para ter permissão para executar esta DLL. Em particular, alguns componentes precisam ler o registro; portanto, o método de registrar componentes é apenas para usar se não houver MTS no servidor. Para não registrar esta DLL, use: regsvr32 /u aspobject.dll Exemplo C: /temp /regsvr32 /u aneiodbc.dll
O segundo método: o uso do MTS (Microsoft Transaction Server) MTS é um novo recurso do IIS 4, mas fornece uma grande melhoria. O MTS permite especificar que apenas usuários privilegiados podem acessar 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 do mouse no PKGS instalado e selecione Novo pacote.
3) Clique em Criar um pacote vazio.
4) Nomeie o pacote.
5) Especifique a conta do administrador ou use interativo (se o servidor costuma fazer login com o administrador).
6) Agora use o botão com o botão direito do mouse nos componentes expandidos abaixo do pacote que você acabou de criar. Selecione novo então componente.
7) Selecione Instalar o novo componente.
8) Encontre seu arquivo .dll e selecione o próximo para terminar.
Para excluir este objeto, basta selecionar seu ícone e selecionar Excluir.
Nota: Preste atenção especial ao segundo método, que é a melhor maneira de depurar os componentes que você escreve sem precisar reiniciar a máquina sempre.
16. Conecte o ASP para acessar o banco de dados:
Dim Conn, mdbfile
mdbfile = server.mappath (nome do banco de dados.mdb)
Definir Conn = Server.CreateObject (Adodb.Connection)
Conn.open driver = {Microsoft Access Driver (*.mdb)}; uid = admin; pwd = senha do banco de dados; dbq = & mdbfile
17. Conecte o ASP ao banco de dados SQL:
Dim Conn
Definir Conn = Server.CreateObject (Adodb.Connection)
con.open; provider = sqloledb; fonte de dados = nome do servidor sql ou endereço IP; uid = sa; pwd = senha do banco de dados; banco de dados = nome do banco de dados
Crie um objeto de conjunto de registros:
set rs = server.createObject (adodb.recordset)
Rs.open SQL Declaração, Conn, 3,2
18. Métodos de uso de comandos do SQL Common:
(1) Filtragem de registro de dados:
sql = selecione * da tabela de dados onde o nome do campo = Ordem do valor do campo por nome do campo [DEC]
sql = selecione * da tabela de dados onde o nome do campo como % Valor de campo % Ordem por nome de campo [DEC]
SQL = Selecione Top 10 * na tabela de dados onde o nome do campo Ordem por nome de campo [DEC]
sql = selecione * na tabela de dados em que o nome do campo em (valor 1, valor 2, valor 3)
sql = selecione * da tabela de dados onde o nome do campo entre o valor 1 e o valor 2
(2) Atualizar registros de dados:
SQL = Atualizar tabela de dados Conjunto de campo Nome do campo = Valor do campo onde expressão condicional
sql = atualização da tabela de dados Conjunto de dados 1 = valor 1, campo 2 = valor 2 ... campo n = valor n onde expressão condicional
(3) Excluir registros de dados:
SQL = Exclua da tabela de dados onde expressão condicional
SQL = Excluir da tabela de dados (exclua todos os registros na tabela de dados)
(4) Adicione registros de dados:
SQL = Insira na tabela de dados (Campo 1, Campo 2, Campo 3…) (Valor 1, Valor 2, Valor 3…)
sql = inserir na tabela de dados de destino Selecionar * da tabela de dados de origem (adicione o registro da tabela de dados de origem à tabela de dados de destino)
(5) Função de estatísticas de registro de dados:
AVG (nome do campo) para obter um valor médio de uma coluna de tabela
Count (*| Nome do campo) Estatísticas sobre o número de linhas de dados ou estatísticas sobre o número de linhas de dados com valores em uma determinada coluna
Max (nome do campo) Obtenha o valor máximo de uma coluna de tabela
Min (nome do campo) Obtenha o valor mínimo de uma coluna de tabela
A soma (nome do campo) adiciona o valor da coluna de dados
Referenciar o método da função acima:
sql = selecione Sum (nome do campo) como alias da tabela de dados onde expressão condicional
Definir rs = Conn.excute (SQL)
Use RS (Alias) para obter as estatísticas e outras funções são usadas da mesma forma que acima.
(5) Estabelecimento e exclusão de tabelas de dados:
Crie o nome da tabela de dados da tabela (campo 1 tipo 1 (comprimento), campo 2 tipo 2 (comprimento)…)
Exemplo: Crie a tabela TAB01 (Nome Varchar (50), DateTime padrão Now ())
Drop tabela Data Tabela Nome (exclua permanentemente uma tabela de dados)
19. Métodos de objetos de conjunto de registros:
Rs.movenext move o ponteiro de registro para baixo uma linha da posição atual
Rs.MovePrevious move o ponteiro recorde de uma linha da posição atual
Rs.movefirst move o ponteiro de registro para a primeira linha da tabela de dados
Rs.movelast move o ponteiro de registro para a última linha da tabela de dados
rs.absolutePosition = n Mova o ponteiro de registro para a linha n da tabela de dados
rs.absolutePage = n mova o ponteiro de registro para a primeira linha da página n
rs.pagesize = n Defina cada página para N registros
Rs.PagEcount retorna o número total de páginas de acordo com as configurações do PageSize
Rs.RecordCount retorna o número total de registros
Rs.BOF retorna se o ponteiro de registro excede o chefe da tabela de dados. Verdadeiro significa sim, false não é
Rs.eof retorna se o ponteiro de registro excede o final da tabela de dados, true significa sim, false não
Rs.Delete exclui o recorde atual, mas o ponteiro recorde não se move para baixo
Rs.Addnew Adicionar registro ao final da tabela de dados
Rs.Update Atualizar registros da tabela de dados
-----------------------------------------
20 Método do objeto RecordSet
Método aberto
RecordSet.Open Source, ActiveConnection, CursorType, Locktype, Opções
Fonte
O objeto RecordSet pode ser conectado ao objeto de comando através da propriedade de origem. O parâmetro de origem pode ser um nome de objeto de comando, um comando SQL, um nome de tabela de dados especificado ou um procedimento armazenado. Se este parâmetro for omitido, o sistema usará a propriedade de origem do objeto RecordSet.
ActiveConnection
O objeto RecordSet pode ser conectado ao objeto de conexão através da propriedade ActiveConnection. A ActiveConnection aqui pode ser um objeto de conexão ou um parâmetro de string contendo informações de conexão do banco de dados (ConnectionString).
Cursortype
O parâmetro cursortype do método aberto do objeto RecordSet indica qual tipo de cursor para iniciar os dados, incluindo adoenos fordoneamente, adoenkeyyset, adondinâmico e adotado, que são descritos da seguinte forma:
------------------------------------------------------------------
Descrição constante de valor constante
-------------------------------------------------------------
AdoneDowardoNly 0 Valor padrão, inicia um cursor que só pode avançar (somente para a frente).
AddoenKeySet 1 inicia um cursor do tipo tecla.
Adondynamic 2 inicia um cursor do tipo dinâmico.
Adonstatic 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 explica a diferença entre eles.
-------------------------------------------------------------
RecordSet Property Adonewardonely AdoinKeyset Adondynamic ADOUNSTATIC
-------------------------------------------------------------
AbsolutePage não suporta
A absoluta deposição não suporta
ActiveConnection Legável, escritor, legível, escritável, legível, escritor, legível, escritor
BOF somente leitura somente leitura somente leitura somente leitura
O favorito não suporta
Cacheize legível, escritor, legível, escritor, legível, escritor
Cursorlocation Legável, escritor, legível, escritor, legível, escritor, legível, escritor
Cursortype Legável, Escritível, Legável, Escritível, Legável, Escritível, Legável, Escritível
Editmode somente leitura somente leitura somente leitura somente leitura
EOF somente leitura somente leitura somente leitura somente leitura
Filtrar legível, escrito, legível, escritor, legível, escritor, legível, escritor
LockType Legável, escritor, legível, escritor, legível, escritor, legível, escritor
MarshalOptions legíveis, graváveis, legíveis, graváveis, legíveis, graváveis
MaxRecords legível, gravável, legível, gravável, legível, gravável
O PageCount não suporta somente leitura somente leitura
PageSize Legável, Escritível, Legável, Escritível, Legável, Escritível, Legável, Escritível
RecordCount não suporta somente leitura somente leitura
Fonte legível, escritor, legível, escritor, legível, escritor, legível, escritor
Estado somente leitura somente leitura somente leitura somente leitura
Status somente leitura somente leitura somente leitura somente leitura
Suporte de suporte ADDNEW Suporte de suporte
CancelBatch Suporte Suporte Suporte Suporte
Cancelar suporte de suporte de suporte de suporte
O clone não suporta ou não
Suporte de suporte de suporte fechado Suporte de suporte
Excluir suporte de suporte de suporte
Suporte de suporte a getRows Suporte de suporte
Move não suporta suporte de suporte de suporte
Movefirst Suporte Suporte Suporte Suporte
MoveLast não suporta suporte de suporte de suporte
Suporte de suporte a Movenext Suporte Suporte
MovePrevious não suportou suporte de suporte de suporte
Suporte de suporte de suporte do nextrecordset
Suporte de suporte de suporte aberto
Suporte de suporte a Requisyery Suporte Suporte
O RESYNC não suporta suporte de suporte de suporte
Suporta suporte de suporte
Atualizar suporte para suporte de suporte
Suporte de suporte de atualizaçãoBatch Suporte de suporte
------------------------------------------------------------------
O método NextRecordSet não é aplicável aos bancos de dados do Microsoft Access.
LockType
O parâmetro LockType do método aberto do objeto RecordSet indica que o tipo de bloqueio a ser adotado. Se este parâmetro for ignorado, o sistema usará a propriedade LockType do objeto RecordSet como o valor predefinido. Os parâmetros LockType incluem AdlockReadonly, AdlockPRSSIMISTIC, AdlockOtimistic e AdlockBatchOtimistic, etc., e são descritos da seguinte forma:
-------------------------------------------------------------
Descrição constante de valor constante
------------------------------------------------------------------
AdlockReadonly 1 Valor padrão, o objeto RecordSet é iniciado no modo somente leitura e os métodos AddNew, Atualize, Excluir e outros métodos não podem ser executados.
adlockprssimistic 2 Quando a fonte de dados está sendo atualizada, o sistema bloqueia temporariamente as ações de outros usuários para manter a consistência dos dados.
AdlockOtimistic 3 Quando a fonte de dados estiver sendo atualizada, o sistema não bloqueará as ações de outros usuários. Outros usuários podem adicionar, excluir e modificar os dados.
adlockbatchOtimistic 4 Quando a fonte de dados está sendo atualizada, outros usuários devem alterar a propriedade CursorLocation para AdudeclientBatch para aumentar os dados.
Excluído e modificado* trabalho.
Compartilhar: os programadores ASP devem ter conhecimento Conexão do banco de dados: % set conn = server.createObject (adodb.connection) conn.open driver = {Microsoft Access Driver ( * .mdb)}; dbq = server.mappath (nome do banco de dados) % abre o banco de dados: execord = select * do banco de dados RS = server.createBjej