Recomendado: ASP Tutorial: Aprendendo programas de script ASP pela primeira vez Por que aprender linguagem de script? Qual é a relação entre asp e linguagem de script? Primeiro, vamos falar sobre o que o ASP é precioso. ASP é a abreviação das páginas do Microsoft Active Server, um ambiente de script do lado do servidor que pode ser usado para criar páginas da web interativas e construir poderosos
Manipulação de erros ASP
O ASP é tão simples que muitos desenvolvedores não pensam em lidar com erros. O manuseio de erros pode tornar seu aplicativo mais razoável. Eu já vi muitos sites comerciais escritos no ASP, a maioria dos quais ignoram o tratamento de erros.
O tipo errado
Existem três tipos principais de erro:
Erro de compilação:
Esse tipo de erro ocorre geralmente devido ao problema da sintaxe do código. O verbo Asp parou de funcionar devido a um erro de compilação.
Executar erro
Este erro ocorre quando você está pronto para executar o ASP. Por exemplo: se você tentar atribuir um valor a uma variável, mas estará além do escopo permitido pela variável.
Erro lógico
Erros lógicos são os mais difíceis de detectar. Esse tipo de erro geralmente é um erro estrutural que não pode ser descoberto por um computador. Isso exige que verifiquemos minuciosamente nosso código.
Como os erros de compilação geralmente ocorrem em conjunto com erros lógicos e geralmente podem ser exibidos, o que estamos preocupados é o erro de operação. Tudo termina a operação do ASP e deixa um monte de texto muito hostil para o usuário.
Então, como lidamos com erros de operação! ? Vamos dar uma olhada primeiro. O único comando de erro fornecido a nós pelo ASP --- ON ERRO REMOME
Se você não usar o retomar de erro ON, a próxima instrução, todos os erros em execução ocorrerão, o que é fatal, um código de erro será exibido ao usuário e o programa ASP também será interrompido.
Aqui está um código de erro:
| A seguir, o conteúdo citado: Provedor de DB da Microsoft OLE para Drivers ODBC Erro 80004005 [Microsoft] [ODBC Driver Manager] Nome da fonte de dados não encontrado e nenhum driver padrão especificado /test.asp, linha 60 |
Quando usarmos o retomar o erro no erro na parte superior do programa, todos os erros serão ignorados e o programa executará automaticamente a próxima instrução. Dessa forma, o programa será totalmente executado e o usuário não verá a mensagem de erro após ocorrer um erro. Mas também existem desvantagens dessa maneira, ou seja, se o programa não for executado como você imagina, será difícil para você descobrir o que está errado, então você deve lidar com os erros sempre que necessário.
Erros de manuseio
No ASP, a melhor maneira de lidar com erros é colocar código na parte inferior do programa para lidar com erros. Eu também recomendo o uso de buffers em todos os programas ASP. Dessa forma, se ocorrer um erro, a página será interrompida e o conteúdo da página será limpo, para que o usuário não veja a mensagem de erro e haverá menos reclamações sobre você! Aqui está um exemplo:
| A seguir, o conteúdo citado: <% 'Defina o buffer como true Response.Buffer = true 'Inicie o tratamento de erros Em erro de erro em seguida %> <% 'Manipulação de erros Se err.number <> 0 então 'Limpe a página Response.clear 'Mostrar mensagem de erro ao usuário %> <html> <head> <Title> </title> </head> <Corpo bgcolor =#c0c0c0> <Font face = Arial> Ocorreu um erro na execução desta página asp <br> Por favor, relate as seguintes informações ao balcão de suporte <P> <b> Página Objeto de erro </b> <br> Número do erro: < %= err.number %> <br> Mensagem de erro: < %= err.description %> <br> Arquivo de erro: < %= err.source %> <br> Linha de erro: < %= err.line %> <br> </font> </Body> </html> <%Final se%> |
Como você pode ver acima, eu configurei primeiro o erro de erro em seguida, para que um erro não afete a execução do programa.
Manipulação de erros e banco de dados
A execução de adicionar bancos de dados ao tratamento de erros é muito complicada. Se tivermos um programa com muitos comandos para adicionar registros ao banco de dados, se o Insert/Update for executado na parte inferior do programa, se nosso erro ocorrer novamente antes, ele terminará! Adicionaremos uma mensagem de erro ao banco de dados. Como usamos em currículo de erro em seguida, todos os erros foram ignorados! Mesmo se houver um erro antes, o programa ainda adicionará dados ao banco de dados.
Para evitar essa situação, temos que fazer alguns truques primeiro. A maneira correta de lidar com isso é a seguinte:
| A seguir, o conteúdo citado: Se err.number = 0 e objConnection.errors.count = 0 então 'A declaração só pode ser executada aqui porque não há erros Set rstresults = dbdata.execute (txtsql) Final se |
Soluções mais avançadas
Quando ocorre um erro, você também pode exibir mais mensagens de erro. A seguir, é apresentado um exemplo de manuseio de erros de banco de dados e página. Com isso, podemos descobrir todos os erros em nosso programa de uma só vez.
| A seguir, o conteúdo citado: <% Se err.number <> 0 então Response.clear Selecione o caso err.Number Caso 8 'Especifique o número errado 'Solucionar problemas de erros personalizados aqui Caso mais 'Erro geral Se o ISOBject (objConnection) então Se objConnection.errors.count> 0 então %> <b> Objeto de conexão do banco de dados </b> <% Para Intloop = 0 para objConnection.errors.count - 1 %> Erro no: < %= objConnection.errors (Intloop) .Number %> <br> Descrição: < %= objConnection.errors (Intloop) .Description %> <br> Fonte: < %= objConnection.errors (Intloop) .Source %> <br> SqlState: < %= objConnection.errors (Intloop) .SqlState %> <br> NativeError: < %= objConnection.errors (Intloop) .nativeError %> <p> <% A seguir Final se Final se Se err.number <> 0 então %> <b> Página Objeto de erro </b> <br> Número de erro < %= err.number %> <br> Erro Descrição < %= err.description %> <br> Fonte < %= err.source %> <br> Linenumber < %= err.line %> <p> <% Final se Final Selecione Final se %> |
O exemplo acima nos permite lidar com muitos problemas que surgem no banco de dados, que também é comumente usado em nossa programação diária! Também devemos ver essa instrução CASE SELECT, que nos permite lidar com erros específicos.
Redirecionar e manuseio de erros
Uma coisa em que devemos prestar atenção é o objeto de redirecionamento que costumamos usar. Se um objeto de redirecionamento aparecer em uma página, o manuseio de erros perderá seu significado. Então, temos que lidar com isso antes de virar, como segue:
| A seguir, o conteúdo citado: Se err.number = 0 e objConnection.errors.count = 0 então Response.clear Response.Redirect URL aqui Final se |
Torne o código mais legal
Para tornar o código mais limpo, primeiro coloque o arquivo com manuseio de erros em um arquivo conter. Dessa forma, você pode usá -lo em qualquer arquivo. Isso também é conveniente para modificar.
Adicione o erro ON ERRO REMOTE A PRÓXIMA DO TEMPO na parte superior do seu programa (após a declaração do idioma, é claro).
Faça um erro de verificação antes de executar o SQL.
O manuseio de erros também foi necessário antes de usar o redirecionamento.
Deixe você lidar com os erros que contêm arquivos na parte superior do código.
Compartilhar: o programa ASP realiza a função de paginação de salvar valores de parâmetros A seguir, é apresentado o conteúdo referenciado: <%'' '' 'Call Exemle'dim int_rpp, int_start, int_shownumberli