Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2460 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] if ping =

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[PHP] if ping =

n°1596885
plop007
Posté le 07-08-2007 à 18:53:07  profilanswer
 

Salit salut,
 
voila j'ai créé un intranet dans l'entreprise et tout le monde y a accés, mais dans l'entreprise tout le monde n'a pa internet.
 
Sur la page d'accueil j'ai inséré le champ de recherche google pour pas trop destabilisé ceux qui avait internet, le problème c'est que ceux qui n'ont jamais eu internet viennent me demander toute les 30s si ils ont internet...
 
est il possible de faire un :
 

Code :
  1. <?php if ping google.fr = true
  2. { include 'google.php';
  3. else


 
juste histoire de dire que si le pc a internet on affiche le champ de recherche google sinon non.
 
Merci d'avance :)
 
SeB

mood
Publicité
Posté le 07-08-2007 à 18:53:07  profilanswer
 

n°1596888
nabbo
Posté le 07-08-2007 à 18:58:44  profilanswer
 

:hello:
 
A ma connaissance, tu ne peux pas vérifier que le client est connecté à internet. tu n'as pas ces informations depuis le serveur, et il est impossible (pour des questions de sécurité) de faire exécuter un ping par le client.
 
la seule chose que tu puisse savoir est si ton serveur PHP est relié à internet. dans ce cas là, tente d'ouvrir une page internet avec un fopen, (ou un truc dans le genre), ou encore en socket... goole est ton ami ;-)
 
:jap:
 

n°1596906
plop007
Posté le 07-08-2007 à 19:24:53  profilanswer
 

arf ok donc c galére. et hum internet est fourni par un proxy est ce que je peux dire en php if proxy enable { include "google.php"
 
non ?

n°1596917
Maxaks
Posté le 07-08-2007 à 19:36:33  profilanswer
 

Ca doit pouvoir se faire avec du javascript.
 
Je peux pas t'aider là par contre :d

n°1596944
vanadium
N° Atomique : 23
Posté le 07-08-2007 à 21:32:06  profilanswer
 

pourquoi ne pas faire un file_get_contents et de regarder le contenu recuperé ? mais ça risque de ramer.

n°1596947
dwogsi
Défaillance cérébrale...
Posté le 07-08-2007 à 21:39:19  profilanswer
 

file_get_contents()? Mais ça ne résoud pas le problème, on ne pourra savoir que si le serveur est connecté à internet de cette manière et non pas le client.
A mon avis ce n'est possible qu'en JS.
Il serait, par exemple, possible de tenter de charger une image sur la page, style logo google. Ensuite avec l'evénemment OnError() on peut déduire si l'utilisateur à un accès à internet ou pas et agir en conséquence.


---------------
-- Debian -- Le système d'exploitation universel | Le gras c'est la vie! | /(bb|[^b]{2})/
n°1597240
plop007
Posté le 08-08-2007 à 15:20:36  profilanswer
 

le hic c'est que le javascript je connais pas trop, tu peux m'en dire plus stp ?

n°1597252
durkheim
Posté le 08-08-2007 à 15:29:16  profilanswer
 

Il suffit de faire une requete ajax.
Si le contenu retourné n'est pas de taille > 0 ou autre erreur (voir la doc), ne pas afficher le champ.

n°1598541
vanadium
N° Atomique : 23
Posté le 11-08-2007 à 12:20:24  profilanswer
 

Sauf qu'en ajax, tu ne peux pas faire de requete sur un autre domaine que le tien avec la configuration par defaut du navigateur (protection du navigateur, pour eviter le cross-site scripting).

n°1598595
dwogsi
Défaillance cérébrale...
Posté le 11-08-2007 à 14:49:19  profilanswer
 

Oui mais la on ne vérifie plus si l'ordinateur client peut accèder au net... On en revient donc au même problème. C'est pourquoi je proposait de faire le teste avec une image.

 

Quelque chose de ce genre :

Code :
  1. <img src="http://www.google.fr/intl/fr_fr/images/logo.gif" alt="" style="display:none;" onerror="pasInternet()" />
 

avec un script js :

 
Code :
  1. function pasInternet()
  2. {
  3.    document.getElementById("IdDuBlocAMasquer" ).style.display ="none";
  4. }


Message édité par dwogsi le 11-08-2007 à 14:51:34

---------------
-- Debian -- Le système d'exploitation universel | Le gras c'est la vie! | /(bb|[^b]{2})/
mood
Publicité
Posté le 11-08-2007 à 14:49:19  profilanswer
 

n°1598598
TheRom_S
Posté le 11-08-2007 à 14:55:01  profilanswer
 

en gros,
étape 1 : le doc HTML charge une url externe, un script JS (pas forcément ajax) demande l'étape 2 au serveur interne avec le résultat de la demande d'url externe en param
étape 2 : ben tu sais si y'a accès au net ou pas ...
 
pour l'étape 1, l'url à charger sera un script JS qui contient une variable, on teste la valeur de la variable et roulez jeunesse ...
 
edit : l'idée de dwogsi est bonne aussi


Message édité par TheRom_S le 11-08-2007 à 14:56:06

---------------
The Rom's, à votre service

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] if ping =

 

Sujets relatifs
Cron (tache planifié) et script PHP = bug ?lien hypertexte dans PHP
Mettre à jour "date" sur ma BDD avec PHPWIKI (PHP)
PHP + Xajax + Html : code crado, solution : Moteur de template ?[PHP] faire un ping d'un serveur distant
[PHP] Ping d'un nom Netbios en PHP[PHP] Comment recuperer la valeur retourner par un ping sous Linux
[PHP] Executer une commande ping...[PHP] Tester un serveur (faire un ping), c'est possible ?
Plus de sujets relatifs à : [PHP] if ping =


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR