Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Langages serveur > ASP
ASP Forum sur la programmation ASP. Avant de poster : Cours ASP, FAQ ASP
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 31/03/2008, 08h00   #1
Membre confirmé
 
Homme Toto Browny
Développeur informatique
Inscription : mars 2008
Messages : 198
Détails du profil
Informations personnelles :
Nom : Homme Toto Browny
Âge : 31
Localisation : France, Haute Vienne (Limousin)

Informations professionnelles :
Activité : Développeur informatique
Secteur : Distribution

Informations forums :
Inscription : mars 2008
Messages : 198
Points : 206
Points : 206
Par défaut RECUPARATION ERREUR EN ASP


Salut,
j'ai un fait un test de connection (exprès que ça plante) mais je n'arrive pas à retrouver l'erreur originale.

Voici mon code
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
<% response.buffer=True%>
<HTML>
<BODY>
<%
Dim objRs2			
Set objRs2 = Server.CreateObject("ADODB.Recordset")
Set errorObject = Server.CreateObject("ADODB.Error")
on error resume next 
 
'Erreur TEST_ADMIN et non TEST_ADMI
objRs2.ActiveConnection = "driver={SQL Server}; 
server=XXX;uid=TEST_ADMI;password=PWD;database=ESSAI" 
 
'Affichage des erreurs
	response.write "Err: <br>"
	response.write "Error Number=" & err.number & "<br>"
     	response.write "Error Descr.=" & err.description & "<br>"
      	response.write "Help Context=" & err.helpcontext & "<br>" 
      	response.write "Source=" & err.source & "<P>"
 
 	response.write "objRs2.ActiveConnection.Errors: <br>"
 	For Each errorObject In objRs2.ActiveConnection.Errors
    		Response.Write "Description: " & errorObject.Description 
    		Response.Write "<br> sqlState : " & errorObject.SQLState
    		Response.Write "<br> NativeError : " & errorObject.NativeError
  	Next
 
	response.write "<p> GetLastError: <br>"
      	dim objErr
	set objErr=Server.GetLastError()
	response.write "ASPCode=" & objErr.ASPCode
	response.write "<br>Column=" & objErr.Column
	response.write "<br>Category" & objErr.Category 
	response.write "<br>Line" & objErr.Line 
	response.write "<br>Source" & objErr.Source
	response.write "<br>File" & objErr.File
	response.write "<br>Number" & objErr.Number
	response.write "<br>ASPDescription" & objErr.ASPDescription    
    %>  
</BODY>
</HTML>
voici l'erreur quand je chinte on error resume next
Citation:
Microsoft OLE DB Provider for ODBC Drivers error '80040e4d'
[Microsoft][ODBC SQL Server Driver][SQL Server]Login failed for user 'TEST_ADMI'.
/padrol2006/script/essai.asp, line 11
J'aimerais retrouver :
Login failed for user 'TEST_ADMI'.
et /padrol2006/script/essai.asp, line 11

Mais voici ce que le gestionnaire d'erreur contient (je réactive on error resume next):
Citation:
Err:
Error Number=3709
Error Descr.=The connection cannot be used to perform this operation. It is either closed or invalid in this context.
Help Context=1240658
Source=ADODB.Recordset
objRs2.ActiveConnection.Errors:
Description:
sqlState :
NativeError : 42064040
GetLastError:
ASPCode=
Column=-1
Category
Line0
Source
File
Number0
ASPDescription
Je remercie qui pourra m'en dire plus sur les gestion d'erreur
BROWNY est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/04/2008, 13h28   #2
Membre confirmé
 
Homme Toto Browny
Développeur informatique
Inscription : mars 2008
Messages : 198
Détails du profil
Informations personnelles :
Nom : Homme Toto Browny
Âge : 31
Localisation : France, Haute Vienne (Limousin)

Informations professionnelles :
Activité : Développeur informatique
Secteur : Distribution

Informations forums :
Inscription : mars 2008
Messages : 198
Points : 206
Points : 206
Par défaut ASP ERREUR

Personne pour m'aider
Please Help
BROWNY est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/04/2008, 23h22   #3
Expert Confirmé Sénior

 
Avatar de Immobilis
 
Inscription : mars 2004
Messages : 5 859
Détails du profil
Informations forums :
Inscription : mars 2004
Messages : 5 859
Points : 5 979
Points : 5 979
Salut,

Que cherches-tu à faire? Je ne vois pas l'interet de ton script.

A+
Immobilis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/04/2008, 07h16   #4
Membre confirmé
 
Homme Toto Browny
Développeur informatique
Inscription : mars 2008
Messages : 198
Détails du profil
Informations personnelles :
Nom : Homme Toto Browny
Âge : 31
Localisation : France, Haute Vienne (Limousin)

Informations professionnelles :
Activité : Développeur informatique
Secteur : Distribution

Informations forums :
Inscription : mars 2008
Messages : 198
Points : 206
Points : 206
Par défaut Erreur

L'intêret du code est de montrer toutes les syntaxes que je connais pour la recherche d'erreur.(entre nous il y en a qui vont s'en servir pour eux : tant mieux)

Je dois mettre à jour un fichier faisant état des erreurs rencontrer sur l'intranet.

Sans gestion d'erreur , il y a c'est 2 lignes qui apparaissent et qui m'intéresse:
Login failed for user 'TEST_ADMI'.
et /padrol2006/script/essai.asp, line 11

La 1ere est certainement retourner par la Base et la 2eme par IIS.
Mais je ne connais pas la variable err.??? qui me permet de les utiliser.

Cet intranet est sur un serveur dont je ne dispose d'aucun droit de modif sur IIS. C'est pour cela que j'ai besoin de retrouver ou sont stockées mes erreurs.

Merci d'avance

BROWNY est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/04/2008, 21h35   #5
Expert Confirmé Sénior

 
Avatar de Immobilis
 
Inscription : mars 2004
Messages : 5 859
Détails du profil
Informations forums :
Inscription : mars 2004
Messages : 5 859
Points : 5 979
Points : 5 979
Citation:
Envoyé par BROWNY Voir le message
Cet intranet est sur un serveur dont je ne dispose d'aucun droit de modif sur IIS. C'est pour cela que j'ai besoin de retrouver ou sont stockées mes erreurs.
Ca c'est vraiment dommage car sans ça tu ne peux pas récupérer cette erreur.

Par défaut, IIS ne renvoi jamais d'erreur au client et on tombe sur une page disant qu'une erreur s'est produite. Si on paramètre IIS pour qu'il envoi ce message d'erreur il faut encore que le navigateur du client soit configuré pour les afficher. Si tel est le cas tu peux voir un message tel que :
Citation:
Login failed for user 'TEST_ADMI'.
et /padrol2006/script/essai.asp, line 11
Ce type de message ne doit jamais apparaitre sur le navigateur de l'internaute! Des informations confidentielles peuvent apparaitre!
Si tu veux conserver une trace de ces données, il faut que la page qui les affiche ai le code nécessaire pour le faire (envoyer un mail, écrire les données en base). Ce code est facile à créer. Par contre, il faut pouvoir reparamétrer IIS pour qu'il affiche cette nouvelle page plutôt que celle configurée par défaut.

Il reste une solution mais que je ne te conseil pas. Tu peux ajouter dans ton code l'instruction "on error resume next" là où tu penses que ton code peut planter. A la suite, tu fais appel à une fonction qui traite les erreurs.
Code :
1
2
3
4
5
6
7
8
 
on error resume next
 
MaVariable = cint("toto")
 
if err.number > 0 then
    response.write err.description
end if
A+
Immobilis est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 03/04/2008, 08h27   #6
Membre confirmé
 
Homme Toto Browny
Développeur informatique
Inscription : mars 2008
Messages : 198
Détails du profil
Informations personnelles :
Nom : Homme Toto Browny
Âge : 31
Localisation : France, Haute Vienne (Limousin)

Informations professionnelles :
Activité : Développeur informatique
Secteur : Distribution

Informations forums :
Inscription : mars 2008
Messages : 198
Points : 206
Points : 206
Merci, j'ai bien compris

auras tu un exemple de procédure pour paramétrer le IIS simplement et qu'il m'envoie les bonnes infos (comme je le voulais au départ)

Je vais voir avec les responsables pour voir s'ils peuvent me le faire
BROWNY est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 18h43.


 
 
 
 
Partenaires

Hébergement Web