IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Test connection internet. [Sources]


Sujet :

JavaScript

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    401
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 401
    Points : 145
    Points
    145
    Par défaut Test connection internet.
    Bonjour,

    J'ai besoin de savoir si un poste client dispose d'une connection internet.
    Pour cela je pensais pinguer vers un site connu (google par exemple).

    Vous m'avez parlé de xmlhttprequest. Auriez-vous + d'info ?

    Avez-vous d'autres idées sur ce sujet ?

    Merci pour tout.

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    401
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 401
    Points : 145
    Points
    145
    Par défaut
    Autre possibilité : récupérer le header de la page google sans l'afficher.

    Quelqu'un sait-il comment faire ?

  3. #3
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 47

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Alunissage : Procédé technique consistant à déposer des imbéciles sur un rêve enfantin.

    Cours | FAQ | Sources Javascript
    Cours | FAQ | Sources PHP
    Mes Articles

  4. #4
    Membre émérite Avatar de franculo_caoulene
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 880
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 880
    Points : 2 953
    Points
    2 953
    Par défaut
    Tu prends un site populaire comme google (qui ne risque pas de changer d'adresse ou de tomber en panne) et tu testes si tu as un code HTTP en retour égal à 408 je présume.
    Les Cours et tutoriels JavaScript
    Penser à la recherche et au bouton

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    401
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 401
    Points : 145
    Points
    145
    Par défaut
    J'ai repris ce tutoriel (Bravo pour sa clarté ).
    Ca marche toutefois une fenêtre d'avertissement s'affiche :"Cette page accède à des informations qui ne sont pas sous son contrôle, ce qui pose un problème de sécurité. Voulez-vous poursuivre ?"
    As-tu des précisions à ce sujet ?
    Comment empècher son affichage ?
    S'agit-il d'un problème de paramètrage d'IE ?

  6. #6
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 47

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Par défaut
    ca en fait c'est car tu l'utilises pour tester un autre domaine que celui sur lequel tu es.

    Essayes peut etre de changer le document.domain avant ?

    Sinon apres tu peux essayer de ruser en te servant d'une iframe masquée au lieu de xhr ...
    Alunissage : Procédé technique consistant à déposer des imbéciles sur un rêve enfantin.

    Cours | FAQ | Sources Javascript
    Cours | FAQ | Sources PHP
    Mes Articles

  7. #7
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    401
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 401
    Points : 145
    Points
    145
    Par défaut
    Citation Envoyé par siddh
    ca en fait c'est car tu l'utilises pour tester un autre domaine que celui sur lequel tu es.

    Essayes peut etre de changer le document.domain avant ?

    Sinon apres tu peux essayer de ruser en te servant d'une iframe masquée au lieu de xhr ...
    Pour résoudre le problème j'ai autorisé l'accès aux données de plusieurs domaines dans IE.

    Qu'en penses-tu ?

  8. #8
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 47

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Par défaut
    ah ben voui ca règle le problème mais faudra le faire sur tous les postes clients ....
    Alunissage : Procédé technique consistant à déposer des imbéciles sur un rêve enfantin.

    Cours | FAQ | Sources Javascript
    Cours | FAQ | Sources PHP
    Mes Articles

  9. #9
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    401
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 401
    Points : 145
    Points
    145
    Par défaut
    Citation Envoyé par siddh
    ah ben voui ca règle le problème mais faudra le faire sur tous les postes clients ....
    Ce n'est plus tout à fait du client ultra léger !
    Je ne sais pas comment changer de domaine. As-tu une idée ?

  10. #10
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 47

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Par défaut
    ca va etre distribué sur un reseau local je suppose cette page ?
    dis m en un peu plus, va falloir ruser
    Alunissage : Procédé technique consistant à déposer des imbéciles sur un rêve enfantin.

    Cours | FAQ | Sources Javascript
    Cours | FAQ | Sources PHP
    Mes Articles

  11. #11
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    401
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 401
    Points : 145
    Points
    145
    Par défaut
    Citation Envoyé par siddh
    ca va etre distribué sur un reseau local je suppose cette page ?
    dis m en un peu plus, va falloir ruser
    En fait il s'agit d'un site intranet. Config : Apache/php/mysql.

  12. #12
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 47

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Par défaut
    et si ton serveur a accès au net est ce que automatiquement tes clients aussi ?
    Alunissage : Procédé technique consistant à déposer des imbéciles sur un rêve enfantin.

    Cours | FAQ | Sources Javascript
    Cours | FAQ | Sources PHP
    Mes Articles

  13. #13
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    401
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 401
    Points : 145
    Points
    145
    Par défaut
    Non justement une partie des client n'y a pas accès.

  14. #14
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 47

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Par défaut
    arf,
    dans quel but veux tu tester si ils ont accès au net ?
    Alunissage : Procédé technique consistant à déposer des imbéciles sur un rêve enfantin.

    Cours | FAQ | Sources Javascript
    Cours | FAQ | Sources PHP
    Mes Articles

  15. #15
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    401
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 401
    Points : 145
    Points
    145
    Par défaut
    Le site intranet donne accès à des liens vers des sites internet.
    Donc je veux afficher ces liens que si le client possède une connexion internet.

  16. #16
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 47

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Par défaut
    hum la je voit pas trop comment faire.
    Peut etre une applet java signée que tu interrogerais en javascript ?
    Alunissage : Procédé technique consistant à déposer des imbéciles sur un rêve enfantin.

    Cours | FAQ | Sources Javascript
    Cours | FAQ | Sources PHP
    Mes Articles

  17. #17
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    401
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 401
    Points : 145
    Points
    145
    Par défaut
    Pour le moment je m'en contente.

    Si quelqu'un a une idée sur la question...

    Merci Siddh pour tes conseils et bon week-end.

  18. #18
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 47

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Par défaut
    bon ça m'intriguais cette histoire

    voici une autre solution avec une iframe.
    Ca necessite par contre de mettre un autre fichier sur le net, donc à un endroit qui est censé être TOUJOURS accessible sur le net.

    la page de test :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
     
    <html>
    	<head>
    		<title> mon titre </title>
    		<style type='text/css'>
     
    		</style>
    		<script type='text/javascript'>
    			var connectStatus = false;
    			function TestConnect(){
    				this.adresse = "http://localhost/tests/connectOk.html";
    				this.connectedStatuts = false;
     
    				this.test = function(){
    					this.ifr = document.createElement("iframe");
     
    					this.ifr.id = 'moniframe';
    					this.ifr.style.display = 'none';
     
    					document.body.appendChild(this.ifr);
    					this.ifr.src = this.adresse; 		
    					this.ifr.onload = function() {
    						if(!window.connTester.connectedStatuts)
    							window.connTester.notConnected();
    						else
    							window.connTester.connected();
    						setTimeout("window.connTester.removeFrame()",1000);
    					}					
    				}
    				this.removeFrame = function(){
    					document.body.removeChild(this.ifr);
    				}
    			}
     
    			TestConnect.prototype = {
    				notConnected: 
    					function(){
    						/**
    						* Cette fonction ne sera exécuté que 
    						* si il n'accède pas à l'autre page
    						*/
    						alert('pas connecté');
    					}
    				,
    				connected: 
    					function(){
    						/**
    						* Cette fonction ne sera exécuté que 
    						* si il accède à l'autre page
    						*/
    						alert('connecté');
    					}
    			}
     
    			window.connTester = new TestConnect();			
    		</script>
    	</head>
    	<body>
    		<input type='button' name='' id='a' value='test' onclick='window.connTester.test()' />
    	</body>
    </html>
    la page à mettre sur le net :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    <html>
    	<head>
    		<title> mon titre </title>
    	</head>
    	<body>
    		<script type='text/javascript'>
    			if(window.parent)
    				window.parent.connTester.connectedStatuts = true;
    		</script>
    	</body>
    </html>
    Alunissage : Procédé technique consistant à déposer des imbéciles sur un rêve enfantin.

    Cours | FAQ | Sources Javascript
    Cours | FAQ | Sources PHP
    Mes Articles

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Débutant - Connection à internet
    Par ronald dans le forum Développement
    Réponses: 6
    Dernier message: 20/06/2019, 14h17
  2. Test connection internet ou non en js
    Par jamesleouf dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 22/06/2010, 10h05
  3. [AC-2007] Fonction de test de connection à Internet
    Par tibofo dans le forum VBA Access
    Réponses: 5
    Dernier message: 23/10/2009, 14h08
  4. Test de connection Internet : ping google efficace ?
    Par zax-tfh dans le forum Développement
    Réponses: 2
    Dernier message: 11/01/2008, 18h29
  5. Test pour connection internet
    Par Marc_3 dans le forum Hardware
    Réponses: 5
    Dernier message: 20/04/2006, 13h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo