begin process at 2012 02 11 00:11:44
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Réseau & Internet

 > IDENTIFICATION DE VOTRE FAI EN PHP

IDENTIFICATION DE VOTRE FAI EN PHP


 Information sur la source

Note :
1 / 10 - par 2 personnes
1,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Réseau & Internet Classé sous :fai, diana Niveau :Initié Date de création :06/04/2007 Vu :6 222

Auteur : Diabless6

Ecrire un message privé
Commentaire sur cette source (15)
Ajouter un commentaire et/ou une note

 Description

Bonjour,

Alors voici un code qui affiche le FAI du client, il s'apparente à celui d'ImmortalPC mais en plus simple si j'ose dire ;)
Il fonctionne chez moi, et devrait fonctionner chez vous aussi ;).

Source

  • <?php //Code fait pas Diana.S ne pas enlever....
  • $ip = $_SERVER['REMOTE_ADDR'];//On obtient l'adresse IP
  • $chaine_host = gethostbyaddr($ip);//on transforme en Host avec adresse du FAI
  • $motif_host='Club-internet|Tiscali|Sogetel|Belgacom|Proxad|Bluewin|Telebecinternet';
  • echo $chaine_host;
  • if (!eregi($motif_host,$chaine_host,$regs)) {echo'FAI inconnu !';} else {
  • foreach($regs as $result)
  • {switch($result)
  • {
  • case 'proxad':
  • $change=eregi_replace($result,'Free',$result); echo 'Votre FAI est : '.'<font color=green>'.ucfirst($change).'</font>'; break;
  • case 'club-internet' :
  • $change=eregi_replace($result,'oui c bien club !',$result); echo 'Votre FAI est : '.'<font color=green>'.ucfirst($change).'</font>'; break;
  • default :
  • echo 'Votre FAI est : '.'<font color=green>'.ucfirst($result).'</font>';break;
  • }}};
  • ?>
<?php //Code fait pas Diana.S ne pas enlever....
$ip = $_SERVER['REMOTE_ADDR'];//On obtient l'adresse IP
$chaine_host = gethostbyaddr($ip);//on transforme en Host avec adresse du FAI
$motif_host='Club-internet|Tiscali|Sogetel|Belgacom|Proxad|Bluewin|Telebecinternet';
echo $chaine_host;
if (!eregi($motif_host,$chaine_host,$regs)) {echo'FAI inconnu !';} else {
foreach($regs as $result)
{switch($result)
  {
  case 'proxad':
    $change=eregi_replace($result,'Free',$result); echo 'Votre FAI est : '.'<font color=green>'.ucfirst($change).'</font>'; break;

	case 'club-internet' :
    $change=eregi_replace($result,'oui c bien club !',$result); echo 'Votre FAI est : '.'<font color=green>'.ucfirst($change).'</font>'; break;
  
  default :
   echo 'Votre FAI est : '.'<font color=green>'.ucfirst($result).'</font>';break;
}}};
?>

 Conclusion

Attention faut respecter la CAsse(CASE) avec le CASE du switch, rho la la ;p.
Deplus en parallèle je travail sur le même style de code mais pour d'autres affichages, il est très intuitif à modifier !


 Sources de la même categorie

Source avec Zip TAPI : METTRE EN RELATION DEUX POSTES TELEPHONIQUES par ravery
Source avec Zip CLIENT / SERVEUR : LES SOCKETS par Morphinof
Source avec Zip VALIDATEUR_3WC par lezj
Source avec Zip MYGGL GOOGLE API CLASS FOR BEGINERZ par lezj
CLASSE WIKILOC par aKheNathOn

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture STATS FAI par ImmortalPC
Source avec Zip Source avec une capture SAVOIR LE FOURNISSEUR D'ACCÈS INTERNET (FAI) DU VISITEUR par ImmortalPC

Commentaires et avis

Commentaire de Diabless6 le 06/04/2007 15:49:41

J'ai un projet assez compliqué qui necessitera les fonctions(routines) pour que ma source soit parfaite ;)

Commentaire de jdalton42 le 06/04/2007 18:54:57

mwé je suis founi par brutele et sa me met "FAI inconnu" ...

brutele.be = fournisseur belge (==> devient lentement voo.be)

Commentaire de Diabless6 le 06/04/2007 19:16:59

c normale, ton FAI n'est pas dans la base de donnée.
Mais ceci dit cette méthode pose problème avec plusieurs FAI qui utilise le même réseau. Donc la reconnaissance via l'IP serait mieux et plus juste.

Commentaire de vilhjalms le 07/04/2007 11:11:43

Heu initie c est peut etre un petit peu abuse non ?

Commentaire de guisx00 le 07/04/2007 14:01:43

je crois que ta oublie les des principal FAI fr wanadoo

Commentaire de kankrelune le 09/04/2007 00:39:02

Initié ne se justifie pas pour cette source qui est de plus peu optimisée... l'utilisation des expression rationnelles n'est pas justifié... et c'est quoi ce eregi_replace... sert à rien... la méthode pour récupérer l'ip quand à elle n'est pas fiable... si tu veux éviter les problèmes de casse dans le switch tu peux faire switch(strtolower($result)) et tu passe tes case en minuscules... .. .

@ tchaOo°

Commentaire de hvb le 09/04/2007 00:51:26

useless...!
cela couvre une infime partie des FAI, le code n'est pas reutilisable de la sorte, et ça ne marchera pas du tout avec mon ancien fai qu'est chello/upc/noos sur lequel une resolution de nom n renvoit rien et échoue (et n'est pas dans la liste de toute façon).
je ne m'attarde pas sur le niveau "initié"... les autres y sont deja passé

Commentaire de motherboy le 09/04/2007 11:07:02

Que c'est laid

Commentaire de Diabless6 le 09/04/2007 11:46:30

Merci pour les critiques constructives, les autres ...

Commentaire de Diabless6 le 09/04/2007 11:56:44

Pour kankrelune :

1) La méthode utilisée n'a rien avoir avec le repérage avec les "points". Mais ceci dit, elle fonctionne quand même. Elle est beaucoup plus facile à comprendre.
2) Pour le repérage du FAI, oui c vrai quil y a un gros trou notamment comme je le disais sur le partage des réseaux comme Proxad qui est utilisé par Free et ainsi que NeufTel.

2 méthodes sont à l'étude: la 1ère utilisant les 2 premier nombre de l'adresse IP permet de reconnaitre le fournisseur.
LE problème c'est quil faut trouver cette base de donnée.

l'utilisation du RIpe, quant à elle, je ne sais pas ce que cela vaut. Elle contient une base pet être assez complète, mais je pense quelle est limitée.

Commentaire de kankrelune le 10/04/2007 12:24:03

"Pour kankrelune :

1) La méthode utilisée n'a rien avoir avec le repérage avec les "points". Mais ceci dit, elle fonctionne quand même. Elle est beaucoup plus facile à comprendre."

Rien à voir... moi ce que je te dis c'est que la démarche n'est pas bonne notament au niveau de l'utilisation des expressions rationelles... .. . ;o)

@ tchaOo°

Commentaire de ImmortalPC le 10/04/2007 15:13:32

Salut,

Tu dis ce code simple, et pourtant il bien compliqué pour le peu qu' il fait.
Mon code est très simple mais on peu le simplifier à 3 lignes si tu veux :
<?php
$ip = $_SERVER['REMOTE_ADDR'];//On obtient l' adresse IP
$dyn = explode('.', gethostbyaddr($ip));
echo 'Votre FAI est : ',ucfirst($dyn[count($dyn) - 2]);
?>

Pas besoin de $motif_host, car si tu as étudié les résultats de gethostbyaddr tu as pu voir que la fin est la même :
`dyn`.monfai.fr

Il est vrais qu' avec mes 3 lignes je ne trouve pas free mais proxad, c' est pourquoi j' ai proposé plusieurs versions, avec divers manière de trouver et de vérifier le FAI.

Mais si on part avec un simple remplacement alors voilà 3 lignes qui font la même chose :
<?php
$ip = $_SERVER['REMOTE_ADDR'];//On obtient l' adresse IP
$dyn = explode('.', gethostbyaddr($ip));
echo 'Votre FAI est : ',ucfirst(str_replace('proxad', 'Free', $dyn[count($dyn) - 2]));
?>

Mais le vrais problème maintenant c' est qu' il y a de plus en plus de FAI qui se mettent à l' IP v6, ce qui rend ces résultats obsolètes.

@+

Commentaire de yngwie le 10/04/2007 21:32:32

${Que c'est laid}++

Commentaire de vilhjalms le 11/04/2007 01:06:39

heu ?

<?php
$ip = $_SERVER['REMOTE_ADDR'];//On obtient l' adresse IP
$dyn = explode('.', gethostbyaddr($ip));
echo 'Votre FAI est : ',ucfirst($dyn[count($dyn) - 2]);
?>

!!!

Commentaire de Diabless6 le 11/04/2007 11:41:18

Salut ImmortalPC ,

J'aime bien tes sources, elles sont claires et bien écrites, mais moi j'aime pas trop copier les idées des autres, c'est pourquoi j'avais tourner le code d'une autre façon, même si ce n'est pas la meilleur.

Et puis, j'ai des lacunes en php, c'est normalement je connais pas toutes les expressions. Mais comme on dit l'oiseau fait son nid petit à petit... ;)

Pour l'IPv6, vu la structure de l'adresse, c'est vrai que cela rend les scripts obsolètes, mais peut être et il possible de les rendres fonctionnels sur ce genre d'adresse, quoi que l'IPV6 m'a l'air d'être un grand chamboulement...

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

protection [ par soul2006 ] je suis entrain de faire un projet de fin d'&#233;tude et mon aplication est de faire un web site en php mon travail est vien d'&#233;tre&nbsp;termine serveur smtp [ par aminesv ] bonsoir!!!je voudrai faire une page qui pemet d'envoyé un mail dans une boite existante (qui servirait a envoyé la confirmation d'un nouvel inscrit, b ip du fai [ par dragoune ] bonjours,j' ai lu quelques forum et bon j'ai trouvé ça :$_SERVER['HTTP_X_FORWARDED_FOR']$_SERVER['HTTP_CLIENT_IP']mais le second code indique mon ip l FAI IP FIXE [ par eva4 ] Bonjour, Je penses que ma question est en partie décrite dans le sujet. Connaitriez vous un FAI fournissant gratuitement une IP fixe ? merci


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 5,710 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales