DETERMINER LE PAYS D'UN VISITEUR

Signaler
Messages postés
399
Date d'inscription
jeudi 31 janvier 2002
Statut
Membre
Dernière intervention
6 septembre 2004
-
Messages postés
5
Date d'inscription
jeudi 5 juillet 2007
Statut
Membre
Dernière intervention
15 juillet 2008
-
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/13381-determiner-le-pays-d-un-visiteur

Messages postés
5
Date d'inscription
jeudi 5 juillet 2007
Statut
Membre
Dernière intervention
15 juillet 2008

En ce qui concerne le chargement du fichier ip-to-country.csv dans SQL voici le script modifié :

Cordialement
djiby

$conect = @mysql_connect("tonserveursql", "loginsql", "tonpass");
$selectdb = @mysql_select_db("nomdelabase");
function LireFichier()
{
$filename="ip-to-country.csv";
// ouverture du fichier
$fd = fopen( $filename, "r");
// Tant qu'on est pas à la fin
while (!feof($fd))
{
// on lit le fichier
$buffer = fgets($fd,1000);
// on découpe la chaine lue dans un tableau
$name=explode(",",$buffer);
// on enlève les " (on peut faire un boucle for pour éviter les 5lignes)
$name[0]=str_replace(""","",$name[0]);
$name[1]=str_replace(""","",$name[1]);
$name[2]=str_replace(""","",$name[2]);
$name[3]=str_replace(""","",$name[3]);
$name[4]=str_replace(""","",$name[4]);
// on insère les valeurs dans la base
$ip = mysql_query("INSERT INTO pays (IP_FROM,IP_TO,CODE,CODE2,PAYS) values ('".$name[0]."','".$name[1]."','".$name[2]."','".$name[3]."','".$name[4]."')");
}
fclose ($fd);
}
LireFichier();
Messages postés
5
Date d'inscription
jeudi 5 juillet 2007
Statut
Membre
Dernière intervention
15 juillet 2008

Oup's désolé d'écrire une seconde fois mais je viens de voir que j'ai fait une erreur.
la ligne qui suit est en trop :

include 'cbdd.php';

Cordialement
djiby
Messages postés
5
Date d'inscription
jeudi 5 juillet 2007
Statut
Membre
Dernière intervention
15 juillet 2008

Bonjour,

J'ai eu le même problème est j'ai modifier le script comme suit :

Cordialement
djiby


$conect = @mysql_connect("tonserveursql", "loginsql", "tonpass");
$selectdb = @mysql_select_db("nomdelabase");
include 'cbdd.php';
function get_IP()
{
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'];
return $IP;
}
function IPAddress2IPNumber($dotted)
{
$dotted = preg_split( "/[.]+/", $dotted);
$ip = (double) ($dotted[0]*16777216)+($dotted[1]*65536)+($dotted[2]*256)+($dotted[3]);
return $ip;
}
function IpEnPays($uneIp)
{
$uneIp=IPAddress2IPNumber($uneIp);
$select ="SELECT PAYS FROM pays WHERE ".$uneIp." BETWEEN IP_FROM AND IP_TO ";
$resPays=mysql_query($select);
if ($rowPays=mysql_fetch_row($resPays))
$retour=$rowPays[0];
else
$retour="Indeterminé";
$fin = mysql_free_result($resPays);
return $retour;
}
$lepays = IpEnPays(Get_Ip());
//Affichage du pays
echo ("$lepays");
Messages postés
12
Date d'inscription
jeudi 6 octobre 2005
Statut
Membre
Dernière intervention
8 juin 2008

ta source ne marche pas j'ai une erreur
Warning: mysql_select_db() [function.mysql-select-db]: A link to the server could not be established in /mnt/146/sda/5/2/webojeux/test/test.php on line 26
Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in /mnt/146/sda/5/2/webojeux/test/test.php on line 45

et pourtant j'ai bien remplie le mysql_connect et le mysql_select_db
Afficher les 9 commentaires