Récupérer le nom de la machine qui exécute le script ou son adresse Mac

Eléphanteau du PHP | 13 Messages

11 janv. 2023, 16:29

Bonjour,
Afin de gérer des licences utilisateurs, je souhaite récupérer le nom de la machine qui exécute le script de connexion ou son adresse Mac.
De plus en plus de poste étant en DHCP, l'adresse IP obtenue via $_SERVER['REMOTE_ADDR'] ne me suffit pas.
Pourriez-vous m'aider à résoudre cette problématique.
Vous remerciant par avance.
Sincèrement.

Mammouth du PHP | 1967 Messages

11 janv. 2023, 17:55

Client MAC address
The client MAC address will not be available to you except in one special circumstance: if the client is on the same ethernet segment as the server.

So, if you are building some kind of LAN based system and your clients are on the same ethernet segment, then you could get the MAC address by parsing the output of arp -n (linux) or arp -a (windows).
source : https://stackoverflow.com/questions/142 ... ent-in-php

à moins que tu sois dans l'exception, ce n'est pas possible
Modifié en dernier par Spols le 11 janv. 2023, 23:43, modifié 1 fois.
Spols
pour les fan de rubik's cube ou pour les curieux ==> le portail francophone du rubik's cube

Eléphanteau du PHP | 13 Messages

11 janv. 2023, 20:02

Bonsoir,
Un grand merci pour cet éclaircissement.
Cela est effectivement le cas car les clients sont sur le même réseau.
La commande étant différente pour Mac et PC, est-ce bien la plateforme du serveur qu'il faut prendre en compte ?
Existe t-il une commande PHP permettant de récupérer l'information ?
Merci par avance pour votre aide.

Mammouth du PHP | 1967 Messages

11 janv. 2023, 23:44

je pensais avoir mis la source mais la voici
https://stackoverflow.com/questions/142 ... ent-in-php
il y a un peu plus de détails mais je n'y connais pas grands chose.
Spols
pour les fan de rubik's cube ou pour les curieux ==> le portail francophone du rubik's cube

Eléphanteau du PHP | 13 Messages

11 janv. 2023, 23:52

Super cela fonctionne avec un serveur Mac (client PC et Mac).
Je vais maintenant tester avec un serveur PC.
Merci beaucoup pour votre aide

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

11 janv. 2023, 23:58

Oui il faut bien exécuter la commande en fonction de l'OS du serveur.
Non il n'existe pas de commande PHP clé en main.

Mais tu peux utiliser la fonction PHP exec() pour exécuter une ligne de commande (si ton serveur te laisse suffisament de droit pour faire ça).
Quand tout le reste a échoué, lisez le mode d'emploi...