Appel d'une page PHP : récupérer l'OS

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Appel d'une page PHP : récupérer l'OS

par Sékiltoyai » 14 mai 2009, 01:34

Pourquoi dis tu qu'elles n'ont aucune valeur ?
Ai-je dit que cela n'avait aucune valeur ?

Tu as fait le test avec un navigateur. Ton navigateur a récupéré l'OS sur le système sur lequel il tourne, par une quelconque méthode, et il l'a envoyé au site, c'est pour cela que la variable est renseignée.
Dans le cas d'un navigateur fait maison, rien ne l'empèche d'envoyer aussi le système au site, mais il doit encore le récupérer.

Je n'ai rien dit d'autre que $_SERVER['HTTP_USER_AGENT'] c'est bien beau, mais c'est à la charge du navigateur de le générer, donc il n'y a aucun intérêt à l'utiliser pour substituer cette méthode à la récupération du système par le programme appelant, puisque dans tous les cas c'est au programme appelant de le générer.

par niuxe » 13 mai 2009, 22:44

Bonsoir Sékiltoyai,

Ce n'est pas moi qui ait posé la question au départ. J'ai juste participé pour aider Ben_06. Par contre, j'ai beau cherché, je ne comprend pas ce que tu veux me dire sachant que je ne connais pas du tout le C++. En se servant de « $_SERVER['HTTP_USER_AGENT'] », on obtient bien des informations. Pourquoi dis tu qu'elles n'ont aucune valeur ?

Bonne soirée à toi :)

par Sékiltoyai » 13 mai 2009, 07:50

Ok, donc tu n'as pas bien exposé ton problème ni répondu à mes questions, mais content que t'ai réussi…

par niuxe » 12 mai 2009, 22:57

Bonsoir Sékiltoyai,

En utilisant la supergobale « $_SERVER['HTTP_USER_AGENT'] », cela me retourne ceci sur le poste où je suis (cyber) :
Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.8.1.11) Gecko/20071127 Firefox/2.0.0.11 (.NET CLR 3.5.30729)
De mémoire, vista est Windows NT (6.quelquechose). Donc, le browser renseigne bien sur quel OS je suis.

Là, je viens de voir une fonction qui répond à la problèmatique ! Par contre, il y a une contrainte : get_browser()

Donc, cela donne ceci :

Code : Tout sélectionner

$navigateur = get_browser(null,true); echo $navigateur[3];
Bonne soirée :)

[Note : ce message a été posté de manière anonyme avant d'être réattribué à son auteur]

par Sékiltoyai » 12 mai 2009, 22:08

Si la page login est en http simple,
Au moment de l'identification, on capture l'os de la personne,
Oui mais comment ?
En quoi cela change le problème ?
Es-tu sûr d'avoir compris mon explication ?
Je te dis que dans tous les cas, pour que le site obtienne l'OS, il faut que le navigateur le lui envoie, donc que le navigateur le connaisse. Donc, si le navigateur est un programme maison, il faut que ton programme maison connaisse l'OS.

par niuxe » 12 mai 2009, 22:02

Bonsoir,

Désolé pour cette réponse tardive et je ne sais pas si c'est possible. Toutefois, mon idée est que :

Si la page login est en http simple,
Au moment de l'identification, on capture l'os de la personne,
insertion de la donnée dans un cookie ou une variable de session ou une fiche temporaire d'une SGBDR ou etc.

Bonne soirée à vous

par Sékiltoyai » 11 mai 2009, 23:17

Développe…

par niuxe » 11 mai 2009, 22:52

Salut,

Il me vient une petite idée. Toujours de la même manière ($_SERVER['HTTP_USER_AGENT']), n'est il pas possible de récupérer cette donnée avant le passage en https ?

par Sékiltoyai » 11 mai 2009, 12:48

La page en question est appellée en C++ sur la machine client, je pourrai récupérer l'os par ce biais, mais ca n'a pas l'air plus simple...
Bah c'est peut être pas plus simple, mais au moins ça a le mérite de marcher, et d'être fiable.
Et puis un petit cours de protocole HTTP, le User Agent, il n'arrive pas au serveur par magie, il faut bien le générer. Et qui est ce qui le génère ? Le navigateur. Donc ton programme. Donc tu pourrais très bien récupérer l'OS par le User Agent, mais de toute façon il faudra au préalable que tu le récupères en C++…

par Invité » 11 mai 2009, 11:44

merci pour vos réponses.

j'ai besoin de différencier les OS (et en particulier XP et vista) pour proposer un service différent derrière, qui n'a plus rien à voir avec le web.

La page en question est appellée en C++ sur la machine client, je pourrai récupérer l'os par ce biais, mais ca n'a pas l'air plus simple...

par Sékiltoyai » 11 mai 2009, 10:13

L'information contenue dans $_SERVER['HTTP_USER_AGENT'] est purement informative et n'a aucune valeur.
Dis nous déjà pourquoi est-ce que tu as besoin de connaître l'OS…

par thehawk » 11 mai 2009, 09:52

Pourquoi ne pas envoyer en paramètre de ta page getOs.php les variables serveur ? apres tout dépend de ta méthode d'appel de la page en question.



Bye Hawk

Appel d'une page PHP : récupérer l'OS

par Ben_06 » 11 mai 2009, 09:19

Bonjour à tous,

Sur une page php classique, j'utilise la variable $_SERVER['HTTP_USER_AGENT'] pour récupérer l'OS de l'utilisateur.

Seulement, pour une page n'étant pas affichée dans un navigateur, mais appellée par un

Code : Tout sélectionner

GET http://monsite.com/getOS.php
ca ne fonctionne pas car pas de browser...

Connaissez vous un autre moyen de récupérer ces infos ?

Merci d'avance.