Vérifier si l'adresse ip du client appartient à une plage ip définie

Soyez le premier à donner votre avis sur cette source.

Snippet vu 19 251 fois - Téléchargée 32 fois

Contenu du snippet

Voilà, ce code permet de vérifier si l'IP du client appartient à la plage d'adresses IP définie: pour cela il vous suffit de définir la palge autorisé (ce peut même être une seule adresse!)

Source / Exemple :


<?php
$plageIP=array("deb"=>"127.0.0.0","fin"=>"127.254.254.254");
//$plageIP="192.168.0.180";
$yourIP=$_SERVER['REMOTE_ADDR'];
//$yourIP="192.168.0.180";
echo "Votre IP est : ".$yourIP;
if(verifPlageIP($yourIP,$plageIP))
{
	echo "<p>Votre adresse IP est valide!";
}
else
{
	echo "<p>Votre adresse IP n'appartient pas à la plage réseau autorisé!";
}
// et le code permetaant la vérifcation

function verifPlageIP($IP,$PlageIP)
{
	$result=TRUE;
	$tabIP=explode(".",$IP);
	/*echo "<p>tabIP:<br><pre>";
	print_r($tabIP);
	echo "</pre>";*/
	if(is_array($PlageIP))
	{
		/*echo "<p>PlageIP:<br><pre>";
		print_r($PlageIP);
		echo "</pre>";*/
		foreach($PlageIP as $valeur)
		{
			$tabPlageIP[]=explode(".",$valeur);
		}
		for($i=0;$i<4;$i++)
		{
			if(($tabIP[$i]<$tabPlageIP[0][$i]) || ($tabIP[$i]>$tabPlageIP[1][$i]))
			{
				$result=FALSE;
			}
		}
	}
	else
	{
		$tabPlageIP=explode(".",$PlageIP);
		/*echo "<p>tabPlageIP:<br><pre>";
		print_r($tabPlageIP);
		echo "</pre>";*/
		for($i=0;$i<4;$i++)
		{
			if(($tabIP[$i]!=$tabPlageIP[$i]))
			{
				$result=FALSE;
			}
		}
	}
	return ($result);		
}
?>

Conclusion :


Voilà ce code peut servir dans un Intranet pour vérifier si un utilisateur s'est connecté depuis le bon poste! Ainsi certaines pages ne seront accessibles que par certaines adresse IP, donc certains postes...

A voir également

Ajouter un commentaire

Commentaires

Messages postés
53
Date d'inscription
mardi 15 août 2006
Statut
Membre
Dernière intervention
15 juillet 2010

bonjour a tous,
c'est trés utile comme code mais dommage c'est limité ca marche que pour les plage suivante deb"=>"X.0.0.0","fin"=>"Y.254.254.254 c a revoir avant d'utilisé ;=)
Messages postés
3
Date d'inscription
dimanche 6 février 2005
Statut
Membre
Dernière intervention
4 décembre 2005

Bonjour ce code peut-il êre utiliser pour compter le nombre de connexion à un moment donné sur un site?
Merci
Messages postés
235
Date d'inscription
jeudi 23 juin 2005
Statut
Membre
Dernière intervention
11 septembre 2009

Bien !!!
Tu aurait pus metre une conection a la bdd...
Non ?
Pas grave :°
Messages postés
13
Date d'inscription
lundi 10 février 2003
Statut
Membre
Dernière intervention
23 mai 2007

est il possible de récupéré les variable $plageIP d'un base de donnée?? j'ai envie d'utilisé ce script dans mon site a fin de virer les mauvaise graines...
Messages postés
56
Date d'inscription
samedi 4 février 2006
Statut
Membre
Dernière intervention
12 janvier 2008

Salut,
merci beaucoup pour ton code, tres pratique!!
9/10
Afficher les 9 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.