AFFICHER DES INFORMATIONS CONCERNANT LE VISITEUR

spidermario Messages postés 121 Date d'inscription mercredi 26 octobre 2005 Statut Membre Dernière intervention 14 mars 2009 - 24 avril 2006 à 18:30
cs_kymm Messages postés 6 Date d'inscription dimanche 3 décembre 2006 Statut Membre Dernière intervention 4 mars 2008 - 4 mars 2008 à 17:38
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/37225-afficher-des-informations-concernant-le-visiteur

cs_kymm Messages postés 6 Date d'inscription dimanche 3 décembre 2006 Statut Membre Dernière intervention 4 mars 2008
4 mars 2008 à 17:38
Pour les webmasters qui le désirent, je fournis un script PHP sur mon site Internet http://www.WeLive.fr dans la rubrique Géolocalisation par IP.
Le script PHP vous retourne les informations sous forme de variables PHP : Pays, Drapeau du pays, Région-Département-Code Postal pour la France, Ville.
Celui-ci nécessite une inscription préalable aux fins d'éviter que n'importe qui l'utilise.

A bientôt

WeLive.fr
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
26 avril 2006 à 15:40
pour la localisation du visiteur, faut faire un whois sur son ip, mais on n'a aucune précision, et aucune certitude...
ImmortalPC Messages postés 954 Date d'inscription mardi 11 mai 2004 Statut Membre Dernière intervention 11 novembre 2008 2
26 avril 2006 à 15:04
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr"><head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Vos informations</title>
<style type="text/css" media="screen">
<!--
.Gras {
font-weight: bolder;
}

.marge_plug_ins {
margin-left: 25px;
}
-->
</style>
</head>

<script type="text/javascript">
<!--
//******************************************************************************
// Création d' un element div ( Merci à Coucou747 )
//******************************************************************************
var box = document.createElement('div');
document.body.appendChild(box);// On envoie le tout

//******************************************************************************
// Largeur X Hauteur
//******************************************************************************
box.innerHTML = 'Votre résolution est de ' + screen.width + ' X ' + screen.height + '.
';

//******************************************************************************
// Plug-ins
//******************************************************************************
// Nombre de plug-ins installés
var nbplugin = navigator.plugins.length;
if(nbplugin){
box.innerHTML += 'Plug-ins installés ( ' + nbplugin + ' ) :
';

var i = -1;
while (i < nbplugin){// Affichage des noms des plug-ins
i++;
box.innerHTML += '
' + navigator.plugins[i].name + '
';
}
}else{
box.innerHTML += 'Il n\' y a aucun plug-ins installé.
';
}
//-->
</script>
<?php
//******************************************************************************
// On prend l' ip de la meilleure manière qu'il soit
//******************************************************************************
if(IsSet($_SERVER['HTTP_X_FORWARDED_FOR'])){
$ip = $_SERVER['HTTP_X_FORWARDED_FOR'];

}elseif(IsSet($_SERVER['HTTP_CLIENT_IP'])){
$ip = $_SERVER['HTTP_CLIENT_IP'];

}else{
$ip = $_SERVER['REMOTE_ADDR'];
}

//******************************************************************************
// Navigateur
//******************************************************************************
$nav = 'Inconnu';
$browser = array('Internet Explorer'=>'MSIE', 'Firefox', 'Mozilla', 'Netscape', 'Safari', 'Konqueror', 'Epiphany', 'Lynx', 'Opera');
foreach($browser as $cle => $val){
if(strpos($_SERVER['HTTP_USER_AGENT'], $val)){
if(is_numeric($cle)){
$nav = $val;
}else{
$nav = $cle;
}
break;
}
}

echo 'Votre navigateur est ',$nav,'.
',"\r\n"
,'Voici toutes les référances de votre navigateur : ',$_SERVER['HTTP_USER_AGENT'],'.
',"\r\n"
,'Votre adresse IP est ',$ip,'.',"\r\n";
?>
</html>
ImmortalPC Messages postés 954 Date d'inscription mardi 11 mai 2004 Statut Membre Dernière intervention 11 novembre 2008 2
26 avril 2006 à 15:03
Salut,

>> Malalam <<
"Car la balise ne laisse pas le choix d' ajustement de l' épaisseur
-ah bon? La balise strong n'accepte pas de css...?"
>> Si mais l' épaisseur du Gras nan je préfère utiliser un span et lui donner un style avec une feuille de style ;-)

"C' est pour être sur de trouver l' ip on essaie plusieur possiblité jusqu'a trouvé l' ip.
- mais getenv () renvoie une variable d'environnement. $_SERVER contient des variables d'environnement...y a rien qui te choque ?"
>> getenv est disponnible depuis la version 3 de php alors que getenv n' est dispo que depuis la version 4. C' était en partie une question de portabilité ;-)
J' ai viré les getenv et j' ai tout transformé en $_SERVER

"Oups, je savais pas. Pourtant mes page codé en XHTML 1.0 passe sans problème.
Et il ne faut pas oublié que l' on peut utlisé la balise <script> pour faire du php et du vb (je crois).
=> Déprécié quand même, et en html 4 en plus : http://www.w3.org/TR/html4/interact/scripts.html#edef-SCRIPT"
>> C' est bon j' ai viré language="JavaScript" à contre coeur.

"strpos renvoie un entier ou false, strstr renvoie une chaîne (et l'extirpe, avant). M'est avis que c'est plus lent. En plus, tu n'as pas besoin de cette chaîne, mais juste de savoir si une chaîne est présente dans une autre."
>> Exacte 20/20 ;-)

>> Aquewel <<
Pour la localisation du visiteur aucune idée.

Voilà le code
aquewel Messages postés 143 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 6 juin 2010
26 avril 2006 à 13:40
aussi ce qu'il seait interessant c'est de localiser le visiteur ! on peut le faire ca ?

Trouver son pays et si il est francais trouver sa région ! Ca c'est cool :-)
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
26 avril 2006 à 13:08
c'était une simple curiosité... j'aime bien le tcl, mais je ne maitrise pas asez bien pour expérimenter sur une page web en faisant un truc interessant... et si ça ne marche pas sou IE, alors aucun interet.... je serais déja franchement étoné que ça marche sous mozilla... je testerais quand j'aurais le temps (mardi prochain, j'ai le concours prologin à préparer avant)
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
26 avril 2006 à 13:03
Coucou => je n'ai jamais essayé. Mais j'en doute fort...d'un côté, il y a les recommendations du consortium, de l'autre, la réalité du terrain ;-) Mais ça vaut le coup d'essayer!
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
26 avril 2006 à 12:37
malalam, sur ton lien, le w3c dit qu'on peut faire du tcl sur une page web, j'ai jamais testé, mais ça marche partout ??? même sous IE ?
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
26 avril 2006 à 12:28
Immortal =>
>> Car la balise ne laisse pas le choix d' ajustement de l' épaisseur
=> ah bon? La balise strong n'accepte pas de css...?

>> C' est pour être sur de trouver l' ipôn essaie plusieur possiblité jusqu'a trouvé l' ip.
=> mais getenv () renvoie une variable d'environnement. $_SERVER contient des variables d'environnement...y a rien qui te choque ?


>> Oups, je savais pas. Pourtant mes page codé en XHTML 1.0 passe sans problème.
Et il ne faut pas oublié que l' on peut utlisé la balise <script> pour faire du php et du vb (je crois).
=> Déprécié quand même, et en html 4 en plus : http://www.w3.org/TR/html4/interact/scripts.html#edef-SCRIPT

>>DOM
=> Coucou a très bien répondu. C'est aussi ce que je fais, autant que possible. Et DOM, c'est quand même peu ou prou la base du web ;-)
http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/

>> Pour le peu de mise en forme qu' il y a je vois pas ce que je peux mettre en style en plus.
=> mea culpa, j'ai mal lu ton code

>> Absolument ;-)
Mais comment tu l' as dit plus haut, getenv () ne fonctionne pas sur certains serveurs (dont IIS).
=> voili voili... :-) Déjà répondu.

strpos renvoie un entier ou false, strstr renvoie une chaîne (et l'extirpe, avant). M'est avis que c'est plus lent. En plus, tu n'as pas besoin de cette chaîne, mais juste de savoir si une chaîne est présente dans une autre.
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
26 avril 2006 à 12:26
http://xulfr.org/xulplanet/xultu/dommodify.html

<html>

<script type="text/javascript">
var box = document.createElement("div");
box.textContent="mon super texte dans la super div";
document.body.appendChild(box);
</script>

</html>
ImmortalPC Messages postés 954 Date d'inscription mardi 11 mai 2004 Statut Membre Dernière intervention 11 novembre 2008 2
26 avril 2006 à 12:15
Salut,

t' as pas compris, comment mettre "salut ça va ?" dans entre les balise div ??
ex:
salut, ça va ?


++
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
26 avril 2006 à 11:34
et bien le dom, c'est ma méthode :)
c'est ce qui marche en xul, ça revient à manipuler ton document comme php manipule un xml...

c'est l'ensemble des fonctions :

insertBefore, createElement, setAtribute, getAtribute, appendChild... t'en as aussi pour supprimer un élément, et pour faire plein de choses avec... on s'en sert très souvent pour les listes déroulantes (<select>), en xul, on n'a que ça... document.write ne marche pas, et innerHTML non plus...

et bien pour insérer du contenu dans ma dic, tu fais exactement comme ce que j'ai fais...

var box = document.createElement("div");
box.setAttribute("id","monid");
document.body.appendChild(box);

var image = document.createElement("img");
image.setAttribute("src","url");
box.appendChild(image);

on peut ajouter autre chose qu'une image, on peut tout ajouter... l'avantage, c'est qu'on aura pas d'erreur de validation xhtml, mais le désavantage, c'est que le référencement ne sera pas bon pour les liens insérés grace à cette méthode, mais bon, pour afficher une interface pour un player mp3, je penses que le référencement du player n'est pas important...

va voir ma source ou je montre un cahier de rdv en xul (ou un agenda, comme vous voulez) t'as des "bons" exemples de dom dans les deux fichiers
ImmortalPC Messages postés 954 Date d'inscription mardi 11 mai 2004 Statut Membre Dernière intervention 11 novembre 2008 2
26 avril 2006 à 11:20
Salut,

>> Malalam <<
"je ne pige pas le style Gras. Pourquoi faire ? Quand on a une balise ? Vu la mise en page, c'est inutile."
>> Car la balise ne laisse pas le choix d' ajustement de l' épaisseur
http://wiki.media-box.net/documentation/css/font-weight

"à moins qu'un truc ne m'échappe, je ne vois tjrs pas l'intérêt de getenv ()."
>> C' est pour être sur de trouver l' ipôn essaie plusieur possiblité jusqu'a trouvé l' ip.

"l'attribut language pour la balise script est déprécié."
>> Oups, je savais pas. Pourtant mes page codé en XHTML 1.0 passe sans problème.
Et il ne faut pas oublié que l' on peut utlisé la balise <script> pour faire du php et du vb (je crois).

"document.write () est horrible (enfin, à mon avis hein...je ne suis pas un spécialise du JS ;-) ). Javascript est un langage fortement orienté DOM, quand même...il y a des façons plus élégantes de faire. On fout le html d'un côté, le js de l'autre, le php pour arbitrer... ;-) Bref, plus DOM pour js... :-)"
>> 2 Questions :
- En quoi document.write () est horrible ??
- C' est quoi DOM ?

"t'as commencé à sortir les styles, dommage que tu te sois arrêté en route ?"
>> Pour le peu de mise en forme qu' il y a je vois pas ce que je peux mettre en style en plus.

"if(function_exists('getenv'))...mouais. getenv() est dispo depuis php3, ne nécessite aucune installation particulière, aucune extension, et est standard par défaut. Manquerait plus qu'on fasse des function_exists () sur tout ce qui bouge! ;-)"
>> Absolument ;-)
Mais comment tu l' as dit plus haut, getenv () ne fonctionne pas sur certains serveurs (dont IIS).

"la boucle sur strchr est lourde. D'une part, strchr est un alias de strstr, alors je me demande pourquoi tu choisis strchr, mais bon...ensuite, strpos sera sans doute plus rapide. Pi là il est trop tôt, mais je pense que tu peux largement alléger cette partie :-)"
>> Je ne savais pas que strpos était plus rapide que strchr.
Je corrige ça de suite ;-)
Je ne vois pas comment je puis plus allèger cette partie !
Foreach et pourtant plus rapide que :
while(list($cle,$val) = each($array)){.....}


>> Coucou747 <<
J' ai essayé d' intégré ton code :
var box = document.createElement("div");
box.setAttribute("id","monid");
document.body.appendChild(box);
Mais comment ajout on ce qui doit être entre les balises

sans innerHTML ???


Voilà le code :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr"><head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Vos informations</title>
<style type="text/css" media="screen">
<!--
.Gras {
font-weight: bolder;
}

.marge_plug_ins {
margin-left: 25px;
}
//-->
</style>
</head>

<script language="JavaScript" type="text/javascript">
<!--
//******************************************************************************
// Création d' un element div ( Merci à Coucou747 )
//******************************************************************************
var box = document.createElement('div');
document.body.appendChild(box);

//******************************************************************************
// Largeur X Hauteur
//******************************************************************************
box.innerHTML = 'Votre résolution est de ' + screen.width + ' X ' + screen.height + '.
';

//******************************************************************************
// Plug-ins
//******************************************************************************
// Nombre de plug-ins installés
var nbplugin = navigator.plugins.length;
if(nbplugin){
box.innerHTML += 'Plug-ins installés ( ' + nbplugin + ' ) :
';

var i = -1;
while (i < nbplugin){// Affichage des noms des plug-ins
i++;
box.innerHTML += '
' + navigator.plugins[i].name + '
';
}
}else{
box.innerHTML += 'Il n\' y a aucun plug-ins installé.
';
}
//-->
</script>
<?php
//******************************************************************************
// On prend l' ip de la meilleure manière qu'il soit
//******************************************************************************
if(function_exists('getenv')){
if(getenv('HTTP_CLIENT_IP')){
$ip = getenv('HTTP_CLIENT_IP');

}elseif(getenv('HTTP_X_FORWARDED_FOR')){
$ip = getenv('HTTP_X_FORWARDED_FOR');

}elseif($_SERVER['REMOTE_ADDR']){
$ip = $_SERVER['REMOTE_ADDR'];

}else{
$ip = getenv('REMOTE_ADDR');
}
}else{
$ip = $_SERVER['REMOTE_ADDR'];
}

//******************************************************************************
// Navigateur
//******************************************************************************
$nav = 'Inconnu';
$browser = array('Internet Explorer'=>'MSIE', 'Firefox', 'Mozilla', 'Netscape', 'Safari', 'Konqueror', 'Epiphany', 'Lynx', 'Opera');
foreach($browser as $cle => $val){
if(strpos($_SERVER['HTTP_USER_AGENT'], $val)){
if(is_numeric($cle)){
$nav = $val;
}else{
$nav = $cle;
}
break;
}
}

echo 'Votre navigateur est ',$nav,'.
',"\r\n"
,'Voici toutes les référances de votre navigateur : ',$_SERVER['HTTP_USER_AGENT'],'.
',"\r\n"
,'Votre adresse IP est ',$ip,'.',"\r\n";
?>
</html>

@+ ( une note lol )
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
26 avril 2006 à 09:51
var box = document.createElement("div");
box.setAttribute("id","monid");
document.body.appendChild(box);

voilà comment on peut ajouter une div en javascript, de manière propre.... sinon, il y a les innerHTML, mais ça reste relativement crade (et ne marche pas en XUL...)

pour Sannazzarotiti : en js, tu regardes si le gars à un cookie qui dit si il veut de la musique ou non, si il ne l'a pas : vérifies que le gars a le plugin, si il l'a, alors tu mets un if confirm pour savoir si il veut la musique, si il en veut, alors tu ajoutes ton interface de gestion de musique, et tu démare la musique, et tu met dans un cookie qu'il veut de la musique. Et si le gars a le cookie, alors tu replace toute ton interface...

selon moi, c'est meilleur car tu n'as pas de rechargement de page...
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
26 avril 2006 à 07:19
Bon moi je commente celui d'Immortal, puisqu'il est exposé aux débutants :-)

- je ne pige pas le style Gras. Pourquoi faire ? Quand on a une balise ? Vu la mise en page, c'est inutile.

- à moins qu'un truc ne m'échappe, je ne vois tjrs pas l'intérêt de getenv ().

- l'attribut language pour la balise script est déprécié.

- document.write () est horrible (enfin, à mon avis hein...je ne suis pas un spécialise du JS ;-) ). Javascript est un langage fortement orienté DOM, quand même...il y a des façons plus élégantes de faire. On fout le html d'un côté, le js de l'autre, le php pour arbitrer... ;-) Bref, plus DOM pour js... :-)

- t'as commencé à sortir les styles, dommage que tu te sois arrêté en route ?

- if(function_exists('getenv'))...mouais. getenv() est dispo depuis php3, ne nécessite aucune installation particulière, aucune extension, et est standard par défaut. Manquerait plus qu'on fasse des function_exists () sur tout ce qui bouge! ;-)

- la boucle sur strchr est lourde. D'une part, strchr est un alias de strstr, alors je me demande pourquoi tu choisis strchr, mais bon...ensuite, strpos sera sans doute plus rapide. Pi là il est trop tôt, mais je pense que tu peux largement alléger cette partie :-)
Sannazzarotiti Messages postés 228 Date d'inscription jeudi 1 septembre 2005 Statut Membre Dernière intervention 12 avril 2009
25 avril 2006 à 20:28
Lors de la premiere visite, un message apparait et demande si il veut la musique. Il peut l'enlever quand il veut ce qui ne gene en rien la navigation. Ca sert de "bonus".
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
25 avril 2006 à 20:26
selon moi, publier une page qui nécéssite des plugins particuliers nuit au référencement et à la disponibilitée, et pour ce qui est de la résolution, autant charger un css à la volée en javascript pour que le site passe corectement avec la résolution choisie...
Sannazzarotiti Messages postés 228 Date d'inscription jeudi 1 septembre 2005 Statut Membre Dernière intervention 12 avril 2009
25 avril 2006 à 18:35
Niveau code je peut pas trop juger. Pour les site (comme le mien) qui mette des video ou des musique, a savoir si il possede le plug-ins necessaire. IL peut y avoir d'autre fonction utile je pensse.
FhX Messages postés 2350 Date d'inscription mercredi 13 octobre 2004 Statut Membre Dernière intervention 18 avril 2015 3
25 avril 2006 à 18:32
Moi j'ose même pas commenter le code :p
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
25 avril 2006 à 16:50
>> C' est pour ça qu' il y a des if ^^.
Ben ouais, mais dans ce cas, ça sert à quoi, à part à alourdir le code...?
Sannazzarotiti Messages postés 228 Date d'inscription jeudi 1 septembre 2005 Statut Membre Dernière intervention 12 avril 2009
25 avril 2006 à 16:25
cool, voila qui est mieu
ImmortalPC Messages postés 954 Date d'inscription mardi 11 mai 2004 Statut Membre Dernière intervention 11 novembre 2008 2
25 avril 2006 à 16:16
Salut,

Malalam => "getenv () ne fonctionne pas sur certaine serveurs (dont IIS); autant éviter de l'utiliser donc."
>> C' est pour ça qu' il y a des if ^^.
Je regarde si l' ip est stocké dans la variable, si oui je donne une valeur à $ip sinon je passe à la condition suivante.

J' ai réécrit le code en donnant le nom du navigateur, les plug-ins installés :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr"><head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Vos informations</title>
<style type="text/css" media="screen">
<!--
.Gras {
font-weight: bolder;
}
//-->
</style>
</head>

<script language="JavaScript" type="text/javascript">
<!--
//******************************************************************************
// Largeur X Hauteur
//******************************************************************************
document.write('Votre résolution est de '+screen.width+' X '+screen.height+'.
');

//******************************************************************************
// Plug-ins
//******************************************************************************
// Nombre de plug-ins installés
var nbplugin = navigator.plugins.length;
if(nbplugin){
document.write('Plug-ins installés ( ' + nbplugin + ' ) :
');

document.write('');
var i = -1;
while (i < nbplugin){// Affichage des noms des plug-ins
i++;
document.write('<li>' + navigator.plugins[i].name + '</li>');
if(i == nbplugin-1){
document.write('');
}
}
}else{
document.write('Il n\' y a aucun plug-ins installé.
');
}
//-->
</script>
<?php
//******************************************************************************
// On prend l' ip de la meilleure manière qu'il soit
//******************************************************************************
if(function_exists('getenv')){
if(getenv('HTTP_CLIENT_IP')){
$ip = getenv('HTTP_CLIENT_IP');

}elseif(getenv('HTTP_X_FORWARDED_FOR')){
$ip = getenv('HTTP_X_FORWARDED_FOR');

}elseif($_SERVER['REMOTE_ADDR']){
$ip = $_SERVER['REMOTE_ADDR'];

}else{
$ip = getenv('REMOTE_ADDR');
}
}else{
$ip = $_SERVER['REMOTE_ADDR'];
}

//******************************************************************************
// Navigateur
//******************************************************************************
$nav = 'Inconnu';
$browser = array('Internet Explorer'=>'MSIE', 'Firefox', 'Mozilla', 'Netscape', 'Safari', 'Konqueror', 'Epiphany', 'Lynx', 'Opera');
foreach($browser as $cle => $val){
if(strchr($_SERVER['HTTP_USER_AGENT'], $val)){
if(is_numeric($cle)){
$nav = $val;
}else{
$nav = $cle;
}
break;
}
}

echo 'Votre navigateur est ',$nav,'.
',"\r\n"
,'Voici toutes les référances de votre navigateur : ',$_SERVER['HTTP_USER_AGENT'],'.
',"\r\n"
,'Votre adresse IP est ',$ip,'.',"\r\n";
?>
</html>
Sannazzarotiti Messages postés 228 Date d'inscription jeudi 1 septembre 2005 Statut Membre Dernière intervention 12 avril 2009
25 avril 2006 à 15:12
chez moi il y a pas de probleme. Bonne chance
spidermario Messages postés 121 Date d'inscription mercredi 26 octobre 2005 Statut Membre Dernière intervention 14 mars 2009 1
25 avril 2006 à 15:10
Pour le nombre de plug-ins, ça marche, mais pas pour le nom des plug-ins
Sannazzarotiti Messages postés 228 Date d'inscription jeudi 1 septembre 2005 Statut Membre Dernière intervention 12 avril 2009
25 avril 2006 à 14:36
Sa donnerait un vréritable interet a ta source. pour les plug-in (j'ai bien ecrit) le code est deja fait
spidermario Messages postés 121 Date d'inscription mercredi 26 octobre 2005 Statut Membre Dernière intervention 14 mars 2009 1
25 avril 2006 à 14:34
Je sais pas si j'aurais le temps de le faire, mais je vais essayer ;)
Sannazzarotiti Messages postés 228 Date d'inscription jeudi 1 septembre 2005 Statut Membre Dernière intervention 12 avril 2009
25 avril 2006 à 14:32
oui je me comprend, (jamais reussi a l'ecrire). Sinon tu pensse pourvoir l'ameliorer?
spidermario Messages postés 121 Date d'inscription mercredi 26 octobre 2005 Statut Membre Dernière intervention 14 mars 2009 1
25 avril 2006 à 14:30
C'est plug-in et pas pudding, c'est pour ça que je faisais cette remarque ^^
Sannazzarotiti Messages postés 228 Date d'inscription jeudi 1 septembre 2005 Statut Membre Dernière intervention 12 avril 2009
25 avril 2006 à 14:18
ensuite, aussi tu pourait faire un truc qui donne sa comme resultat:
Hauteur : 1024
Largeur : 1280
Profondeur de Couleurs : 32
Profondeur de Pixels : 32
Hauteur disponible : 994
Largeur disponible : 1280
Sannazzarotiti Messages postés 228 Date d'inscription jeudi 1 septembre 2005 Statut Membre Dernière intervention 12 avril 2009
25 avril 2006 à 14:17
les puddings installer sur l'ordi(sa parait logique)
spidermario Messages postés 121 Date d'inscription mercredi 26 octobre 2005 Statut Membre Dernière intervention 14 mars 2009 1
25 avril 2006 à 14:16
Mais sinon, merci de vos commentaires et de votre aide.
spidermario Messages postés 121 Date d'inscription mercredi 26 octobre 2005 Statut Membre Dernière intervention 14 mars 2009 1
25 avril 2006 à 14:15
Les puddings installés ? Installés où ? Dans mon assiette ? :D
Sannazzarotiti Messages postés 228 Date d'inscription jeudi 1 septembre 2005 Statut Membre Dernière intervention 12 avril 2009
25 avril 2006 à 12:31
Je suis sur que l'on peut rajouter des choses (comme les codecs installés, le systeme d'exploitation, le langage utiliser ). J'ai trouver sa dans un livre javascript:

<script language="JavaScript"><!--

var nbplugin = navigator.plugins.length;
// La variable contient le nombre de plug-ins installés

var win = window.open
("","Plugins","width=400,height=350,resizeable,scrollbars=yes");
//Ouverture d'une fenêtre pour la liste des plug-ins

var i = -1;

win.document.write("Les plug-ins installés :

");
win.document.write("Nombre de plug-ins :" + nbplugin +
"

");
// Le nombre es plug-ins est affiché
// dans la fenêtre

while (i < nbplugin)
{
i++;
win.document.write(navigator.plugins[i].name + "
");
// Affichage des noms des plug-ins
}

// --></script>

Ce code affiche dans une popup tous les puddings installer (il n'est pas de moi je le repete). Tu pourait t'en inspirer pour améliorer ta sources.
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
25 avril 2006 à 11:15
Immortal => getenv () ne fonctionne pas sur certaine serveurs (dont IIS); autant éviter de l'utiliser donc.

Wizad => je ne trouve pas ça très bien codé, justement, comme je l'ai dit (enfin, je parle surtout du html, vu le peu de php...peu qui est correct, néanmoins!) L'attribut onload est déprécié, par exemple...ennuyeux pour cet exemple. D'autant plus qu'on peut s'en passer, en virant la fonction, par exemple : on lance le javascript séquentiellement.
Quant à "l'autre" méthode pour récupérer des variables js en php, il n'y en a pas : enfin en tous cas, il y a une nécessité, qui est utilisée ici d'une manière (il y en a d'autres, là, par contre) : celle de repasser par le serveur. Ici, on poste un formulaire en POST. Ok. On peut le faire en GET, on peut se passer d'un formulaire et requêter la page directement avec des requêtes xmlhttp...etc.
cs_wizad Messages postés 355 Date d'inscription samedi 30 octobre 2004 Statut Membre Dernière intervention 14 avril 2009
25 avril 2006 à 11:01
je trouve personnelement que le code original (pour répondre à ImmortalPC) reste intérréssant puisque présentant une technique correct pour récupérer la résolution du visiteur et la traiter dans du php (statistique, redimensionnement des images,... tout est possible). Il est vrai que l'exemple en lui même ne nécessiterai pas la récupération dans des variables php. Mais cela reste un exemple clair d'une méthode comme une autre (je cherche toujours l'autre ^^).

"- je trouve que c'est franchement léger comme code, d'une manière générale, mais bon..." (malalam) C'est vrai mais les exemple les plus simple sont parfois les meilleurs à condition qu'ils soient BIEN CODé!! ;-)

Sur ceux pense à intégréles correction d'html d'ImmortlPC voir de dévelloper un peu la partie PHP (meilleur traitement des informations fournient par $_SERVER['HTTP_USER_AGENT']).
ImmortalPC Messages postés 954 Date d'inscription mardi 11 mai 2004 Statut Membre Dernière intervention 11 novembre 2008 2
25 avril 2006 à 10:02
Salut,

Je suis tout à fait d' accord avec Malalam.
Voilà le code refait sans formulaire et aux normmes xhtml 1.0 ( j'avais la flèmme de chercher le DTD XHTML 1.1 :p)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr"><head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Vos informations</title>

</head>

<script language="JavaScript" type="text/javascript">
<!--
document.write('Votre résolution est de '+screen.width+' X '+screen.height+'.
');
//-->
</script>
<?php
// on prend l'ip de la meilleure manière qu'il soit
function get_ip(){
if(getenv('HTTP_CLIENT_IP')){
$ip = getenv('HTTP_CLIENT_IP');

}elseif(getenv('HTTP_X_FORWARDED_FOR')){
$ip = getenv('HTTP_X_FORWARDED_FOR');

}elseif($_SERVER['REMOTE_ADDR']){
$ip = $_SERVER['REMOTE_ADDR'];

}else{
$ip = getenv('REMOTE_ADDR');
}
return $ip;
}
echo 'Votre navigateur est ',$_SERVER['HTTP_USER_AGENT'],'.
',"\r\n"
,'Votre adresse IP est ',get_ip(),'.';
?>
</html>

@+
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
25 avril 2006 à 09:05
Hello,

eh beh, moi qui comptait effacer ce code...si il plait, il reste.
Néanmoins, je fais mes critiques :
- le html n'est pas terrible, autant le revoir pour être plus aux normes.
- pourquoi passer par la soumission d'un formulaire pour récupérer la résolution dans une variable php...??? Puisque tu dois utiliser du javascript, pourquoi n'utilises-tu pas QUE du javascript...? Ca éviterait une soumission.
- je trouve que c'est franchement léger comme code, d'une manière générale, mais bon...
cs_johann1 Messages postés 170 Date d'inscription jeudi 21 octobre 2004 Statut Membre Dernière intervention 9 janvier 2008
25 avril 2006 à 08:49
J'avais justement besoin d'un petit code comme celui-çi! Merci spidermario
spidermario Messages postés 121 Date d'inscription mercredi 26 octobre 2005 Statut Membre Dernière intervention 14 mars 2009 1
24 avril 2006 à 18:30
Oups, erreur, l'adresse exemple est http://spidermario.free.fr/infos_visiteur.php
J'avais mis un "s" en trop :S
Rejoignez-nous