Adresse ip

alizee14 Messages postés 105 Statut Membre -  
alizee14 Messages postés 105 Statut Membre -
bonjour
je voudrais que sa affiche un message : vous etes deja enregistrer si la personne s'est deja enregistrer grace a l'adresse ip

regarder mon code
<?php
$ip = remote_ADDR
{ 

$sql=mysql_query("select ip _user from ip"); 

} 
if ($donnees = mysql_fetch_array($sql) ) 
{ 

echo"vous etes deja enregistré"; 

} 
Else
{ 
 
}
?>


merci de m'aider
A voir également:

44 réponses

alizee14 Messages postés 105 Statut Membre 1
 
donc se code
<TD>ip</TD>
<TD>
<INPUT disabled type=int name="ip" id="ip" value=<?

$_SERVER["REMOTE_ADDR"];

?>
>
</TD>
</TR>

j'aime bien parler avec des example de code
0
societeserieuse Messages postés 202 Statut Membre 7
 
echo sert a afficher une variable php u un texte donc si tu l enleve et que tu ne met aucun echo que va t il se passer ? ......
0
alizee14 Messages postés 105 Statut Membre 1
 
alors quel code je dois marquer ?
0
Azraka Messages postés 265 Statut Membre 13
 
hmmmm.. j'aurais juste une remarque à faire :
Est-ce que c'est vraiment pertinent de faire la vérification sur l'ip ? Parce que maintenant avec les box les ordinateurs n'ont plus d'adresse ip fixe sur le net mais des adresses dynamiques (elles changent à chaque connexion)..

Comme autre solution je verrais bien l'utilisation d'un cookie mais c'est vrai que si la personne les efface après sa connexion c'est mort.. Du coup, l'idée de la vérification sur l'adresse e-mail évoquée au début me semble la meilleure solution.
0
fiddy Messages postés 11653 Date d'inscription   Statut Contributeur Dernière intervention   1 847 > Azraka Messages postés 265 Statut Membre
 
Est-ce que c'est vraiment pertinent de faire la vérification sur l'ip ? Parce que maintenant avec les box les ordinateurs n'ont plus d'adresse ip fixe sur le net mais des adresses dynamiques (elles changent à chaque connexion)..
Faux. Cela dépend de si tu es dégroupé partiellement ou pas et de ton FAI. Tandis que certains FAI voient ça comme un avantage de garder la même adresse IP, ils te font payer le service, et d'autres font le contraire.
0
alizee14 Messages postés 105 Statut Membre 1
 
en faite au debut je vouler faire avec seulement l'ip mais apres j'ai decider de faire avec l'ip est l'adresse e_mail pour un maximum de securite
0
Azraka Messages postés 265 Statut Membre 13
 
Selon moi l'ip tu devrais carrément oublier, pas tant qu eça soit dur à programmer mais parce que je pense que ça marchera pas.

Si j'ai bien compris tu veux que quand un utilisateur arrive sur ton site ça lui affiche "vous êtes déjà enregistré". Sauf qu'avec les ip dynamiques si un utilisateur se connecte 2 fois de suite à ton site, même à quelques minutes d'écart, même avec le même pc, si jamais il a éteint son pc entre temps il n'aura pas la même adresse ip.. du coup tu lui diras qu'il est pas enregistré alors qu'il le sera..
0
Dr Zoidberg Messages postés 547 Statut Membre 100 > Azraka Messages postés 265 Statut Membre
 
Et en plus, quelqu'un d'autre va récupérer cette IP un jour ou l'autre ...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
alizee14 Messages postés 105 Statut Membre 1
 
ces aussi pour ca que je prend l'adresse e-mail aussi
0
alizee14 Messages postés 105 Statut Membre 1
 
quelqu'un pourrait me donnner la combine pour enregistrer l'adresse ip sans que la personne qui s'inscrve la change
merci
0
fiddy Messages postés 11653 Date d'inscription   Statut Contributeur Dernière intervention   1 847
 
Impossible. Malheureusement, on n'est pas dans un monde parfait. Et l'utilisateur pourra toujours te faire croire qu'il a une autre adresse IP.
0
fiddy Messages postés 11653 Date d'inscription   Statut Contributeur Dernière intervention   1 847
 
Ne jamais authentifier une personne avec son adresse IP qui est bien trop falsifiable. (ip spoofing par exemple).
Donc, demande un couple login/mot de passe lors de l'authentification.
Ensuite, je te conseille l'utilisation de sessions avec l'adresse IP, et l'user-agent (attention en cas de proxy http). Le tout avec un joli MD5.

Utilise si tu peux l'HTTPS.
Une durée de session pas trop élevée.
Vérifier également les champs afin d'éviter les attaques par injection.
Cdlt
0
alizee14 Messages postés 105 Statut Membre 1
 
sur mon site j'ai un espace membre mias pour eviter les multicompte je voudrais enregistrer l'ip et l'adresse e-mai pour ensuite si il essay de se reinscrive je le sache grace a l'ip ou l'adresse e-mail
0
fiddy Messages postés 11653 Date d'inscription   Statut Contributeur Dernière intervention   1 847
 
Malheureusement ton exigence est impossible.
Un utilisateur pourra toujours vouloir s'authentifier à partir d'une autre adresse IP en te fournissant une autre adresse mail (et ça tu peux rien y faire).
L'autre scénario possible est qu'une personne utilisant la même adresse IP (je pense notamment à un collègue dans le même réseau local que toi) et connaissant ton mail, pourra utiliser ton compte (et ça tu peux rien y faire non plus).

Voilà pourquoi le login/mot de passe est très important.
0
alizee14 Messages postés 105 Statut Membre 1
 
l'adresse ip serat automatiquement enregistreer sans qu'il puisse la modifier et l'e-mail apart qu'il en ai plein sinon il pourrat qu'une seul fois est en plus dans l'email je voudrais mettre un lien pour verifier son e-mail comme sa si il veut se connecter il serat obliger de appuyer sur l-email et donc ne pas mettre n'import quoi
0
fiddy Messages postés 11653 Date d'inscription   Statut Contributeur Dernière intervention   1 847
 
l'adresse ip serat automatiquement enregistreer sans qu'il puisse la modifier
Oui j'ai compris. Sauf que l'adresse IP ça s'usurpe et puis ce n'est pas une par personne. Par exemple dans une société, beaucoup d'employés auront la même adresse IP pour aller sur internet, impossible donc de les différencier en te basant uniquement sur leur IP. Quand à l'e-mail, ça se devine. Donc niveau sécurité, ça craint.
0
alizee14 Messages postés 105 Statut Membre 1
 
c'est deja sa sinon comment je peux faire pour encore plus de secu
0
fiddy Messages postés 11653 Date d'inscription   Statut Contributeur Dernière intervention   1 847
 
c'est deja sa sinon comment je peux faire pour encore plus de secu
Tout dépend si tu continues de parler pour empêcher les multicomptes ou si tu parles d'authentification.

c'est deja sa
Ben disons que ta solution est trop restrictive et inefficace. Je m'explique.
En faisant ça, tu obliges la création d'un compte unique par famille et par entreprise mais pas par personnes.
Et en plus de ça, il suffit de s'y connaître un tant soit peu pour contourner la sécurité (du genre IP spoofing + création d'un mail bidon).

A cause (grâce) au NAT des routeurs, tu ne pourras jamais empêcher la création de multi-compte.

Cdlt
0
alizee14 Messages postés 105 Statut Membre 1
 
on vas se contenter de sa ses deja pas mal , bon bas comment on fait pour enregistrer l'ip sans la montrer j'ai mis le code que j'utiliser un peu au dessus pouver-vous le modifier ou m'en donner un nouveau qui pourrait enregistrer l'ip sans la montrer et afficher un mesage d'erreur si l'email ou l'ip est deja utiliser
merci
0
fiddy Messages postés 11653 Date d'inscription   Statut Contributeur Dernière intervention   1 847
 
Tout dépend où tu souhaites garder l'information. Dans une base de données ?
Après la syntaxe dépendra de ta BDD. Et je te conseille plutôt de sauvegarder le hash de l'IP plutôt que l'IP elle-même.
Sur google, tu trouveras plein de sites expliquant comme interagir avec une BDD en php. ;)

Cdlt
0
alizee14 Messages postés 105 Statut Membre 1
 
oui je veux l'enregistrer dans la bdd mais mon seul pb c'est que sa l'affiche et qu'on peut la modifier comment on fait pour l'enregistrer sans que la personne qui s'inscrit puisse la modifier
0
fiddy Messages postés 11653 Date d'inscription   Statut Contributeur Dernière intervention   1 847
 
Non, si tu mets dans la BDD, les gens ne peuvent pas la modifier directement. Les gens n'ont pas accès à la bdd comme ça, et heureusement.
Ton code php pour te connecter avec ta bdd et comment tu écris l'information dedans, est ton code du début ?
Cdlt
0
alizee14 Messages postés 105 Statut Membre 1
 
je ne veut pas justement qu'il puisse la modifier je veux juste l'enregistrer et la resssortir pour verifier si il est deja inscrit ou pas
0
fiddy Messages postés 11653 Date d'inscription   Statut Contributeur Dernière intervention   1 847
 
Oui ça je m'en doute, c'est ce que je te disais justement ^^.
Mais, dans ton code, je ne vois pas de commandes : INSERT. Donc ton code peut pas écrire dans la bdd.

Lorsque l'utilisateur demande à s'enregistrer, voici les étapes à faire :
1) tu te connectes à ta bdd.
2) tu collectes l'IP de l'internaute et tu stockes dans une variable le hash (md5) de cette IP. Et tu parcours ta table à la recherche de cette variable. Si la variable est trouvée, alors, tu affiches 'Un seul compte par famille" ou sinon tu écris dans la bdd avec INSERT.

Cdlt
0
alizee14 Messages postés 105 Statut Membre 1
 
parce que je l'ai pas mis j'ai oublier mais se n'est pas le pb s'est que la personne qui s'enregistre peut la modifier s'en probleme se que je voudrait s'est la caché et ensuite je ne connais pas le code permetant de verifier si dans la table il y a l'ip selectionner
0
fiddy Messages postés 11653 Date d'inscription   Statut Contributeur Dernière intervention   1 847
 
Mais non, il pourra pas.
L'internaute n'a pas accès à la base de données !. S'il souhaite se connecter, ton script php va se connecter à la bdd pour voir si l'IP existe déjà si oui elle refuse, si non, elle l'écrit. Point barre.
Ce n'est pas l'internaute qui écrit dans la bdd, mais le script php !
0
alizee14 Messages postés 105 Statut Membre 1
 
oui mais pour l'enregistrer je dois la montrer dans l'inscription comme un champs donc si il a envie il pourrat la modifier
0
fiddy Messages postés 11653 Date d'inscription   Statut Contributeur Dernière intervention   1 847
 
oui mais pour l'enregistrer je dois la montrer dans l'inscription comme un champs donc si il a envie il pourrat la modifier
Non. Tu n'as pas besoin de l'afficher dans un champs. Tu mets l'IP dans une variable (que t'affiches pas à l'écran bien sûr). Et cette variable, tu l'écris dans ta BDD après vérifier si elle n'existe pas déjà.
0
alizee14 Messages postés 105 Statut Membre 1
 
ok donc j'enleve le champs id , echo et je gard juste $_Server['REMOTE_ADDR'] ensuite dans ma page d'apres je l'enregistre
0
fiddy Messages postés 11653 Date d'inscription   Statut Contributeur Dernière intervention   1 847
 
Re,
Je me suis inspiré de : https://www.commentcamarche.net/contents/784-php-bases-de-donnees
Ton code pourrait ressembler à ceci :
$IP = $_SERVER["REMOTE_ADDR"];

mysql_connect($host, $user,$passwd) or die("erreur de connexion au serveur");
mysql_select_db("nomBase") or die("erreur de connexion a la base de donnees");

$query = "SELECT ip from IP;
$result = mysql_query($query);
while($row = mysql_fetch_row($result)){
      if($row[0] == $IP){
           echo 'déja enregistré';
           echo 'retour à l'accueil';
           break;
      }
}
//tu peux créer son compte.


Rem : Il y a peut-être des erreurs. Le PHP est loin derrière moi.
0
alizee14 Messages postés 105 Statut Membre 1
 
voici se que sa me met

Parse error: syntax error, unexpected '}', expecting ',' or ';' in C:\wamp\www\teste\fin_de_linscription.php on line 60

mon code



<?php 
if (isset($_POST['enregistrer'])){ 
mysql_connect("localhost", "root","") or Die ("Impossible de se connecter"); 

mysql_select_db("ml");



$ins = mysql_query('INSERT INTO enregistrer VALUES("","'.$login.'","'.$password.'","'.$email.'", 
"'.$paypal.'","'.$prenom.'","'.$nom.'","'.$ip.'","'.$pays.'","'.$parrain.'")'); 

 

//Compteur de la bdd ********************** 
$compteur = mysql_query("select * from `enregistrer`");
echo "le nombre d'enregistrements actuel est: ".mysql_num_rows($compteur)."<br />" } 
?>


<?php
$IP = $_SERVER["REMOTE_ADDR"];

mysql_connect("localhost","root","") or die("erreur de connexion au serveur");
mysql_select_db("ml") or die("erreur de connexion a la base de donnees");

$query = "SELECT ip from IP;
$result = mysql_query($query);
while($row = mysql_fetch_row($result)){
      if($row[0] == $IP){
           echo 'déja enregistré';
           echo 'retour à l'accueil';
           break;
      }
}
//tu peux créer son compte.


?>
0
Stef60 Messages postés 257 Statut Membre 41
 
il manque ;
echo "le nombre d'enregistrements actuel est: ".mysql_num_rows($compteur)."<br />" ;}
il manque "
$query = "SELECT ip from IP";
0