Limiter le multi-compte en PHP

Fermé
Utilisateur anonyme - 13 août 2011 à 11:03
 Info - 16 août 2011 à 10:54
Bonjour,

Je voudrais limiter le multi-compte à 3 compte/par IP mais j'ai un script qui bloquer directe à partir de 1 compte le voila :

else if ($IP = $IP) // Si l'ip est dans la BDD
{
echo ("<strong>Vous disposer déjà d'un compte dans notre base de données !! Inscription annulé</strong>");
}

Donc je voulais avoir un nouveau script pour limiter les comptes à 3.

A voir également:

4 réponses

chris05 Messages postés 349 Date d'inscription jeudi 13 mars 2008 Statut Membre Dernière intervention 24 septembre 2024 28
13 août 2011 à 11:14
Ben tu comptes le nombre de fois ou l'IP est dans la BDD.

Exemple vite fait :

select count(*) from table where IP=$IP;

Si résultat >3, affiche ton message d'erreur....
0
Merci mais je l'ai remplacé comme tu m'as dit else if select count(*) from table where IP=$IP;

mais sa ne marche pas sa me fait une erreur

je suis un peux nul en php
0
chris05 Messages postés 349 Date d'inscription jeudi 13 mars 2008 Statut Membre Dernière intervention 24 septembre 2024 28
13 août 2011 à 11:24
Il faudrait que j'ai + de code pour t'aider...

Il y a quoi avant le else if ?

D'ou vient $IP ?
0
Utilisateur anonyme
13 août 2011 à 11:27
je peux te donner ma page d'inscription entière ?
0
chris05 Messages postés 349 Date d'inscription jeudi 13 mars 2008 Statut Membre Dernière intervention 24 septembre 2024 28
13 août 2011 à 11:28
Tu peux mettre le fichier sur http://cijoint.fr/ si tu veux, que j'y jette un oeil....
0
Utilisateur anonyme
13 août 2011 à 11:30
l'extension php ne peut être déposée je change le format je .txt au pire ?
0
chris05 Messages postés 349 Date d'inscription jeudi 13 mars 2008 Statut Membre Dernière intervention 24 septembre 2024 28
13 août 2011 à 11:36
non c bon bouge pas ;)
0
Utilisateur anonyme
13 août 2011 à 11:29
<?php session_start();
require_once('config.php');
require_once('config2.php'); ?>
<?php include('header.php')?>
<?php include('menu.php')?>
</div>
<div class="wrap-content">
<div id="box_758">
<div class="top">
<img src="images/theme/title/inscrire.png">
</div><div class="back">
<div class="box_top"></div>
<div class="box">
<?php
$bdd=mysql_connect($host,$user,$pass); // On se connecte à MySQL
mysql_select_db($db); // On se connecte à la BDD "ancestra_other"

if(isset($_POST['ok']))
{
$pseudo = mysql_real_escape_string(htmlspecialchars(trim($_POST['pseudo']) ) );
$username = mysql_real_escape_string(htmlspecialchars(trim($_POST['username']) ) );
$pass = mysql_real_escape_string(htmlspecialchars(trim($_POST['pass']) ) );
$pass2 = mysql_real_escape_string(htmlspecialchars(trim($_POST['pass_confirm']) ) );
$email = mysql_real_escape_string(htmlspecialchars(trim($_POST['email']) ) );
// Ajouter par Sirgue
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'];
$question = mysql_real_escape_string(htmlspecialchars(trim($_POST['question']) ) );
$reponse = mysql_real_escape_string(htmlspecialchars(trim($_POST['reponse']) ) );
// Ajouter par Sirgue

if (exi($username) != '0') // Si le nom de compte est déjà utiliser
{
echo ("<center><strong>Le nom de compte : '". $username ."' est déjà utilisé, veuillez en choisir un autre...</strong></center>");
}
else if (exi3($pseudo) != '0') // Si le pseudo est déjà utiliser
{
echo ("<center><strong>Le pseudo : '". $pseudo ."' est déjà utilisé, veuillez en choisir un autre...</strong></center>");
}
else if ($pass != $pass2) // Si les deux mots de passe sont diférent
{
echo ("<center><strong>Les deux mots de passe ne sont pas identiques, veuillez recommencer...</strong></center>");
}
else if (!$_POST['username'] || !$_POST['pass'] || !$_POST['pass_confirm'] || !$_POST['email']) // Si les champs sont vides
{
echo ("<center><strong>Vous devez remplir tout les champs !</strong></center>");
}
else if ($IP = $IP) // Si l'ip est dans la BDD
{
echo ("<strong>Vous disposer déjà de 3 comptes dans notre base de données !! Inscription annulé</strong>");
}


// Ajouter par Sirgue
else
{
echo '<center><strong>Vous êtes maintenant inscrit ! Vous pouvez des maintenant jouer sur notre serveur! <center><a href="join.php">Telecharger Uplauncher</a></center></strong></center>';
mysql_query("INSERT INTO accounts (account, pass, level, email, lastIP, question, reponse, pseudo) VALUES ('$username', '$pass', 0, '$email', '$IP', '$question', '$reponse', '$pseudo')") or die (mysql_error() );
mysql_close($bdd);
$result = @mysql_query("SELECT * FROM accounts WHERE account = '$account'");

}
}?><?php include('footer.php')?>




Enfete j'ai 2 page PHP pour l'inscription celle l'a enfete c'est tout ce qui est au niveau Vérification du compte
0
chris05 Messages postés 349 Date d'inscription jeudi 13 mars 2008 Statut Membre Dernière intervention 24 septembre 2024 28
13 août 2011 à 11:39
Test un truc du genre :

else if ($IP = $IP) // Si l'ip est dans la BDD
{
	$test = mysql_query("select count(*) from accounts where lastIP='.$IP.'");
	if ($test>3)
	{
		echo ("<strong>Vous disposer déjà de 3 comptes dans notre base de données !! Inscription annulé</strong>");
	}
}
0
Utilisateur anonyme
13 août 2011 à 11:41
ok attend je teste
0
Utilisateur anonyme
13 août 2011 à 11:44
sa me fait comme quoi je dispose de 3 compte dans la bdd mais que jen n'ai que 2
0
chris05 Messages postés 349 Date d'inscription jeudi 13 mars 2008 Statut Membre Dernière intervention 24 septembre 2024 28
13 août 2011 à 11:47
??? Bizarre...
0
chris05 Messages postés 349 Date d'inscription jeudi 13 mars 2008 Statut Membre Dernière intervention 24 septembre 2024 28
Modifié par chris05 le 13/08/2011 à 11:51
Mais déja cette ligne m'intrigue :

 else if ($IP = $IP)


Le probleme vient de la !
0
Utilisateur anonyme
13 août 2011 à 17:54
up
0