Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 14 sur 14
  1. #1
    Débutant
    Inscrit en
    février 2009
    Messages
    627
    Détails du profil
    Informations forums :
    Inscription : février 2009
    Messages : 627
    Points : 189
    Points
    189

    Par défaut afficher son ip local

    bonjour je travail sur un site intranet et j'ai besoin d'afficher l'adresse ip local de la machine en question.

    bien sur
    Code :
    $_SERVER['REMOTE_ADDR']."<br/>".$_SERVER['SERVER_ADDR'].
    me retourne:
    127.0.0.1
    127.0.0.1

    ce qui est normal mais alors comment faire pour afficher la vrai IP qui se trouve dans ipconfig. (192....)

    existe t-il en moyen pour l'obtenir ?

    genre un autre langage voir même un script .cmd qui me retournerai l'ip et a partir de sa je l'affectera une variable en php. c'est possible ?

  2. #2
    Membre actif
    Homme Profil pro Pascal C'est un secret
    Développeur Web
    Inscrit en
    octobre 2007
    Messages
    233
    Détails du profil
    Informations personnelles :
    Nom : Homme Pascal C'est un secret
    Âge : 27
    Localisation : France, Gers (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : octobre 2007
    Messages : 233
    Points : 167
    Points
    167

    Par défaut

    Je sais que grâce à l'invite de commande tu peux récupérer l'ip de la machine grace à la commande:
    Code :
    1
    2
    3
    ipconfig/all
    ou
    ifconfig/all
    Désolé, je sais plus quelle est la bonne synthaxe.
    Ensuite en php, pour exécuter cette commande, tu peux, si elles sont activés, utilisé la fonction exec ou system. Tu exécutes la ligne de commande et tu parses la chaine récupéré.
    Voila, bon courage.

    lemirandais


    EDIT:
    Attend, j'ai pas compris quelque chose, tu veux récupérer l'ip du poste local de la personne qui se connecte sur ton intranet?

  3. #3
    Débutant
    Inscrit en
    février 2009
    Messages
    627
    Détails du profil
    Informations forums :
    Inscription : février 2009
    Messages : 627
    Points : 189
    Points
    189

    Par défaut

    oui je conais très bien:
    ipconfig = windows
    ifconfig = unix
    --

    en faite j'aimerai que la personne qui se connecte dessus (intranet) voit son ip du réseau.

    exemple: 192.68.56.1
    j'aimerai juste l'afficher.

    langage autre que php me donne l'ip et par x moyen je le redonne à une variable $ip_du_client.

    je suis très étonné de ne pas avoir trouver une commande shell (sous win) me permettant d'avoir l'adresse ip.

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro Vincent
    Inscrit en
    juillet 2005
    Messages
    21 209
    Détails du profil
    Informations personnelles :
    Nom : Homme Vincent

    Informations forums :
    Inscription : juillet 2005
    Messages : 21 209
    Points : 30 891
    Points
    30 891

    Par défaut

    As-tu vraiment fais le test ?
    un poste tiers qui se connecte sur le serveur ne pas fournir 127.0.0.1 comme IP.

  5. #5
    Débutant
    Inscrit en
    février 2009
    Messages
    627
    Détails du profil
    Informations forums :
    Inscription : février 2009
    Messages : 627
    Points : 189
    Points
    189

    Par défaut

    je me suis mal exprimé.

    je veux afficher l'ip du serveur dans mon application.

  6. #6
    Modérateur
    Avatar de sabotage
    Homme Profil pro Vincent
    Inscrit en
    juillet 2005
    Messages
    21 209
    Détails du profil
    Informations personnelles :
    Nom : Homme Vincent

    Informations forums :
    Inscription : juillet 2005
    Messages : 21 209
    Points : 30 891
    Points
    30 891

    Par défaut

    C'est bien $_SERVER['SERVER_ADDR']
    Si tu obtiens 127.0.0.1 c'est que le serveur est configuré sur cette IP.

    J'ai également vu que ton peux avoir un problème dans ton fichier hosts : le nom du serveur apparait en premier avec l'adresse 127.0.0.1

  7. #7
    Débutant
    Inscrit en
    février 2009
    Messages
    627
    Détails du profil
    Informations forums :
    Inscription : février 2009
    Messages : 627
    Points : 189
    Points
    189

    Par défaut

    ok j'ai compris (merci) mais voila en faite j'ai un pc portable et je bosse dessus.
    mon pc portable étant mon serveur, j'aimerai connaitre l'ip réseau a chaque fois que je change de lieu. (elle change DHCP)

    d'ou ma recherche vers l'ip 192.68.56.1 (exemple)

  8. #8
    Modérateur
    Avatar de sabotage
    Homme Profil pro Vincent
    Inscrit en
    juillet 2005
    Messages
    21 209
    Détails du profil
    Informations personnelles :
    Nom : Homme Vincent

    Informations forums :
    Inscription : juillet 2005
    Messages : 21 209
    Points : 30 891
    Points
    30 891

    Par défaut

    Pourquoi as-tu besoin de connaitre l'ip ?

  9. #9
    Débutant
    Inscrit en
    février 2009
    Messages
    627
    Détails du profil
    Informations forums :
    Inscription : février 2009
    Messages : 627
    Points : 189
    Points
    189

    Par défaut

    disons que je vais essayer de faire des applications d'autres langage pour interagir avec ma base de données et donc j'aimerai son ip.

    puis aussi par curiosité de savoir si c'est possible, genre en batch ?

    car pour le moment je suis très étonné de avoir qu'on ne peut pas afficher son ip machine en php ? a moins que j'ai pas compris quelque chose.

  10. #10
    Modérateur
    Avatar de sabotage
    Homme Profil pro Vincent
    Inscrit en
    juillet 2005
    Messages
    21 209
    Détails du profil
    Informations personnelles :
    Nom : Homme Vincent

    Informations forums :
    Inscription : juillet 2005
    Messages : 21 209
    Points : 30 891
    Points
    30 891

    Par défaut

    PHP est un langage a but Web il n'a donc pas besoin de connaitre les informations réseau de la machine.

    Pourquoi passer par PHP pour avoir ça ? tu regardes simplement les infos de ton systeme.

  11. #11
    Débutant
    Inscrit en
    février 2009
    Messages
    627
    Détails du profil
    Informations forums :
    Inscription : février 2009
    Messages : 627
    Points : 189
    Points
    189

    Par défaut

    non mon idée est de récupérer mon IP machine par X langage mais je ne sais pas lequel encore pour lui donner mon info.

    exemple: je récupère mon ip avec un fichier batch (aucune idée comment faire) puis en ajax je transmet le retour de mon fichier batch à la variable php.

    mais même un fichier batch j'arrive pas à trouver alors que sa touche bien la machine.

  12. #12
    Modérateur
    Avatar de sabotage
    Homme Profil pro Vincent
    Inscrit en
    juillet 2005
    Messages
    21 209
    Détails du profil
    Informations personnelles :
    Nom : Homme Vincent

    Informations forums :
    Inscription : juillet 2005
    Messages : 21 209
    Points : 30 891
    Points
    30 891

    Par défaut

    Comme lemirandais t'a indiqué ifconfig ou ipconfig.

  13. #13
    Membre Expert
    Avatar de gene69
    Profil pro
    Inscrit en
    janvier 2006
    Messages
    1 633
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : janvier 2006
    Messages : 1 633
    Points : 2 122
    Points
    2 122

    Par défaut

    Code :
    $_SERVER['REMOTE_ADDR']
    il me semble que plein de choses ont déjà été dites sauf que ceci retourne l'IP du client qui appelle le script et non l'ip du serveur qui execute le script. Si ça répond 127.0.0.1 c'est que tu appelles le script en local. Tu as eu chaud parce que ça aurai pu répondre localhost, et là ça aurait mal marché (sous unix en tout cas).

    Que savoir de plus sur REMOTE_ADDR ? S'il y a un proxy, tu vois le proxy. S'il y a du NAT/PAT tu vois l'IP partagée. Si tu passe par de l'ajax, tu vas récuperer des adresses privées/non traduites (ie, ton script ajax trouverai mon adresse IP est 192.168.1.13 (ce qui ne t'apprend rien) parce que je suis derriere une box, alors que $_SERVER['REMOTE_ADDR'] te dira au moins que je suis un client Orange geolocalisable contre monnaie sonnante et trébuchante).

    pour le reste, mettre un serveur en dhcp... moi je veux bien... mais comment dire... dans ce cas utilise au moins le nom de machine lorsque c'est possible et pas l'IP dans ta conf. Heureusement que les clients dhcp enregistrent leur nom dans ce qui sert de serveur dns/dhcp... Déjà ça t'évitera ce genre de contorsion.

    Si tu veux t'amuser à faire des batchs, des machins et des trucs, est-ce que c'est pas plus simple de déployer OCS inventory? Si ton problème c'est de savoir quelle IP à tel utilisateur OCS inventory le fait aussi, sans que tu ais besoin de faire faire des manip à tes utilisateurs. Pis déployer OSC inventory c'est documenter en long en large et en travers et c'est sympa d'avoir ça pour monitorer son parc.

    Sinon tu peux intéroger le LDAP, dans un domaine Active Directory correctement configuré ça marche assez bien (pi c'est sympa, tu peux interroger LDAP en PHP) je suppose que dans les technologies concurrentes ça marche aussi.
    PHP fait nativement la validation d'adresse électronique .
    Celui qui a inventé mysql_connect(...) or die() est déjà mort plusieurs fois.
    Soyez moderne: mysqli_connect() or throw Exception(mysqli_connect_error());

    PHP: un problème ? décrivez le avec ceci.

    Utilisez le bouton résolu!

  14. #14
    Débutant
    Inscrit en
    février 2009
    Messages
    627
    Détails du profil
    Informations forums :
    Inscription : février 2009
    Messages : 627
    Points : 189
    Points
    189

    Par défaut

    Merci pour ce complément.

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

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •