Probleme serveur IIS ?

Probleme serveur IIS ? - Programmation

Marsh Posté le 30-04-2001 à 11:50:21    

Encore moi,
 
j'ai mis en place une gestion des statistiques d'accès au site,mais j'ai l'impression que le fichier global.asa ,n'est jamais lu ou utilisé par le serveur !C tres bizarre.
 
De meme que je ne peux pas donner le nombre de visiteur sur le site avec un comptage dans ce meme fichier global.asa.
 
Alors est ce qu'il faut l'activer quelque part ? Ou bien y a t il une commande quelsonque ....

Reply

Marsh Posté le 30-04-2001 à 11:50:21   

Reply

Marsh Posté le 30-04-2001 à 11:57:25    

C simple.
 
Pour voir si ton global.asa est lu, écrit une méga connerie dedans (genre tu fermer pas une paranthèse).
 
Si tu ne peux plus accéder à ton site, c'est bon, il est lu.
Sinon, t'as bien mis "éxécuter les scripts" dans les propriété du site ?
 
Sinon, ton problème, c'est que tu dois compter dans une variable locale...
 
Compte dans une variable d'application pour y avoir accès depuis les autres pages.
 
Deplus, sauvegarde le compteur dans un fichier ou une base de données à chaque mise à jour, car sinon, proutch ! Tu perds ton compteur lors ud reboot.
 
PS: Si tu stockes la compteur dans une base, introduit une gestion des erreurs. Chez moi, j'ai SQL Server 2000, et il met plus de temps à démarrer que IIS. Il en résultait des erreurs lors de l'accès à la base.
Je teste donc maintenant la cnx avant d'écrire dedans ;)

Reply

Marsh Posté le 30-04-2001 à 12:01:27    

Voici le code sur mo site (cf. signature).
 
<SCRIPT LANGUAGE=VBScript RUNAT=Server>
sub Application_OnStart
 Application.Lock
  Application("NBCNX" ) = 0
  Application("DSN" ) ="DSN=xxxxxxxxxxxxxx;UID=xxxxxxxxxxxxxx;PWD=xxxxxxxxxxxxxx"
  Application("WAITING" ) = 1
 Application.UnLock
end sub
 
sub Session_OnStart
 Application("NBCNX" ) = Application("NBCNX" ) + 1
 sql = "UPDATE CPT SET NB = NB + " & Application("WAITING" )
 on error resume next
 Set session("CNX" ) = Server.CreateObject("ADODB.Connection" )
 session("CNX" ).Open Application("DSN" )
 session("CNX" ).Execute sql
 if err <> 0 then
  Application("WAITING" ) = Application("WAITING" ) + 1
 else
  Application("WAITING" ) = 1
 end if
 on error goto 0
end sub
 
Sub Session_OnEnd
 if Application("NBCNX" ) > 0 then
  Application("NBCNX" ) = Application("NBCNX" ) - 1
 end if
 session("CNX" ).close
 set session("CNX" ) = nothing
end sub
</SCRIPT>
 
Application("NBCNX" ) contient le nombre de connectés à l'instant T
NB, dans la table CPT contient le nombre d'accès au site depuis matusalem ;)
WAITING est une variable tampon qui stock toutes les connections qui n'ont pas été comptabilités dans la base.
=> Je tente de la stocker à l'accès suivant.

Reply

Marsh Posté le 30-04-2001 à 12:10:49    

<SCRIPT LANGUAGE=VBScript RUNAT=Server>
   SUB Application_OnStart
      Application("online" ) = 0
   END SUB
   
   SUB Session_OnStart
      Application.Lock
      Application("online" ) = Application("online" ) + 1
      Application.Unlock
   END SUB
   
   SUB Session_OnEnd
      Application.Lock
      Application("online" ) = Application("online" ) - 1
      Application.Unlock
   END SUB
</SCRIPT>
 
 
Voila ce que j'ai pour compter mes visiteurs, mais ca ne marche aps :(
Je regardes ton code...

Reply

Marsh Posté le 30-04-2001 à 12:18:42    

Ouais, apparement, ton code est correct...
 
Enlève quand même tes Application.Lock et Application.Lock des sub session_xx.
Par contre met les dans application_onstart
 
Si ça marche toujours pas, tapes dans l'url de IE le chemin d'accès au global.asa
 
S'il te l'afficher alors il n'est soit pas à la racine du site, soit le site n'a pas été déclaré comme étant une application avec les droits d'éxécution des scripts

Reply

Marsh Posté le 30-04-2001 à 12:26:53    

Ok merci pour ton aide,je vais regarder ca cette pres midi :D

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed