La communauté ALL HTML c'est 58031 membres à ce jour dont 1 inscrits aujourd'hui et 30 depuis une semaine.

  • imprimer
  • aide

Forum de discussions « PHP - SQL »

Retrouvez les publications relatives à ces discussions dans nos rubriques PHP, SQL.

redirection vers different sites selon origine de l' ip

liste des forums liste des discussions Participer à la discussion

Photo de move_ur_zouk Message publié le mardi 15 avril 2008 à 18 h 14 par move_ur_zouk. in Prog we trust
Bonjour,

J'ai un site Web qui comporte 5 versions de langues , français, espagnol , anglais , allemand , portugais
je souhaiterai rediriger les visiteurs directement vers le site correspond a leurs langues a travers leur ip ou par défaut les envoyer sur le site français par exemple.

je me demande comment font des sites comme google ou airfrance ou d'autres pour reconnaitre les classes ip par pays
avez vous des idées de scripts ou des classes que je pourrais utiliser

Merci d'avance
Photo de mdr Message publié le mercredi 16 avril 2008 à 09 h 01 par mdr.
ils ont tout simplement un base de données énormes avec des tonnes d'adresse IP et ça reconnait le pays :)
ça doit pouvoir se trouver sur le net
Photo de telnes Message publié le mercredi 16 avril 2008 à 13 h 03 par telnes. toujours revenir au debut - http://telnesmaster.free.fr/allhtml/index2.html - http://telnesmaster.free.fr/litetemplate - http://www.hotcontest.org
Photo de telnes Message publié le mercredi 16 avril 2008 à 13 h 55 par telnes. toujours revenir au debut - http://telnesmaster.free.fr/allhtml/index2.html - http://telnesmaster.free.fr/litetemplate - http://www.hotcontest.org
http://www.frameip.com/whois/ cf code source, il y a une ligne qui donne le pays dans le whois ca peut etre une idée

++
Photo de move_ur_zouk Message publié le jeudi 24 avril 2008 à 15 h 21 par move_ur_zouk. in Prog we trust
En fait c'est le serveur qui rend l'information (http://www.iana.org, whois.apnic.net etc...
donc on récupère pas de variable country ,en plus elle ne s'affichera pas tjrs de la même manière ???

script de frameIP :
<?

// ********************************************
// Nom du script : whois.php
// Auteur : SebF@frameIP.com.pas.de.spam
// Date de création : 17 Novembre 2003
// version : 1.3
// Licence : Ce script est libre de toute utilisation.
// La seule condition existante est de faire référence au site http://www.frameip.com afin de respecter le travail d'autrui.
// ********************************************

// ********************************************
// Initiation des variables
// ********************************************
$whois_ip_demande=$_POST['ipaddress'];

// ********************************************
// Vérification des champs vide
// ********************************************
if (empty($whois_ip_demande))
{
$corp='Le Whois ne peux pas avoir lieu car le champ IP est vide.';
include 'whois_affichage_launcher.php';
exit(0);
}

// ********************************************
// Résolution du nom et conformité de l'IP selectionné
// ********************************************
if (ip2long($whois_ip_demande)==-1) // Si ce n'est pas une IP
{
$nom_correspondant=gethostbyname($whois_ip_demande); // Alors résolution du nom
if ($nom_correspondant!=$whois_ip_demande) // Si il a résolut le nom
$whois_ip_demande=$nom_correspondant; // Récupération de l'ip résolut
else
{
$corp='Le Whois ne peux pas avoir lieu car le champ IP ne contient pas d\'adresse valide ou le nom n\'a pas pu être résolut.';
include 'whois_affichage_launcher.php';
exit(0);
}
}

// ********************************************
// Transforme les saisies tel que 10.10..4 en 10.10.0.4
// ********************************************
$inetaddr=ip2long($whois_ip_demande);
$whois_ip_demande=long2ip($inetaddr);

// ********************************************
// Appel de la fonction connexion
// ********************************************
$buffer=connexion("whois.ripe.net",$whois_ip_demande);
$serveur_ayant_repondu="whois.ripe.net";

// ********************************************
// Vérifie si on est sur le bon serveur
// ********************************************
if (eregi("www.iana.org", $buffer))
{
$buffer=connexion("whois.arin.net",$whois_ip_demande);
$serveur_ayant_repondu = "whois.arin.net";
}
elseif (eregi("whois.apnic.net", $buffer))
{
$buffer=connexion("whois.apnic.net",$whois_ip_demande);
$serveur_ayant_repondu = "whois.apnic.net";
}
elseif (eregi("whois.registro.br", $buffer))
{
$buffer=connexion("whois.registro.br",$whois_ip_demande);
$serveur_ayant_repondu = "whois.registro.br";
}
elseif (eregi("nic.ad.jp", $buffer))
{
$buffer=connexion("whois.nic.ad.jp",$whois_ip_demande);



////////////////////////////////////////////////////////////////////// A VOIR
#/e suppresses Japanese character output from JPNIC
$extra = "/e";

$serveur_ayant_repondu = "whois.nic.ad.jp";
}

// ********************************************
// Affichage du nom du serveur qui à rendu l'information
// ********************************************
$corp='<BR>';
$corp.='C\'est le serveur '.$serveur_ayant_repondu.' qui possède l\'information suivante :';
$corp.='<BR><br>';

// ********************************************
// Intégre les retours charriot
// ********************************************
$buffer2=nl2br($buffer);

// ********************************************
// Affiche le resultat
// ********************************************
$corp.=$buffer2;
include 'whois_affichage_launcher.php';

// ********************************************
// Foncvtion de connexion whois
// ********************************************
function connexion($serveur,$ip_recherche)
{
// ********************************************
// Ouverture de la session TCP
// ********************************************
$socket=fsockopen($serveur, 43);

if ($socket!=0)
{
// ********************************************
// Envoi de l'IP demandé
// ********************************************
fwrite($socket, "$ip_recherche\n");

// ********************************************
// Receptionne dans buffer la réponse
// ********************************************
while (feof($socket)==0)
$tampon = $tampon . fgets($socket, 1000); // Le . signifie concatenation

// ********************************************
// Ferme la session TCP
// ********************************************
fclose($socket);
}
else
{
$corp='Impossible de se connecter sur le serveur '.$server.' via le port 43.';
include 'whois_affichage_launcher.php';
exit(0);
}

return ($tampon);
}

?>
Photo de telnes Message publié le vendredi 25 avril 2008 à 14 h 31 par telnes. toujours revenir au debut - http://telnesmaster.free.fr/allhtml/index2.html - http://telnesmaster.free.fr/litetemplate - http://www.hotcontest.org
bas tu parse le résultat ! et bastaaaa

liste des forums liste des discussions Participer à la discussion

Vous devez obligatoirement vous identifier en tant que membre pour participer à cette discussion.

ACCÉS COMMUNAUTÉ

Rejoignez ALL HTML

Publiez vos articles, actualités, communiqués ... Donnez votre avis, partagez votre réseau, rencontrez d'autres membres et participez à la vie de la communauté.

Les 5 dernières discussions

agenda