Jamais deux ip identiques sauvegardez

Signaler
Messages postés
18
Date d'inscription
jeudi 26 avril 2012
Statut
Membre
Dernière intervention
1 décembre 2012
-
Messages postés
14738
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
23 novembre 2020
-
Bonjour,


dans mon site, j'ai un systeme qui permet si le membre n 'est pas connecté de mémoriser son IP dans ma bdd

table: IPS
champs: Quand =(le jour et l'heure)
IP =(les IP)

mais quand quelqu'un y vas, il surf sur plusieurs pages (j'ai inserer ce code dans config.php)

<?php 


if(isset($_SESSION['username'])) 
{ 
?> 
<?php 


 $username =  $_SESSION['username']; 
if(isset($_SERVER['HTTP_X_FORWARDED_FOR'])) 
$ip=$_SERVER['HTTP_X_FORWARDED_FOR']; 
else 
$ip=$_SERVER['REMOTE_ADDR']; 
$resudlt mysql_query("Update users SET IP '$ip' WHERE username = '$username'"); 
if (!$resudlt) { 
    die('pb: ' . mysql_error()); 
} 
?> 


<?php 
} 
else 
{ 
?> 
<?php 
if(isset($_SERVER['HTTP_X_FORWARDED_FOR'])) 
$ip=$_SERVER['HTTP_X_FORWARDED_FOR']; 
else 
$ip=$_SERVER['REMOTE_ADDR']; 
$resudlt mysql_query("INSERT INTO IPS SET IP '$ip'"); 
if (!$resudlt) { 
    die('pb: ' . mysql_error()); 
} 
?> 

<?php 
} 
?>


donc, vu que le code est dans toutes les pages, l'IP s'affiche beaucoup, beacoup, beaucoup de fois et je voudrais qu'une IP peut être enregistrer qu'une seul fois par jour et que quand une IP vient par example mardi, mercredi son IP (donc la date de la visite) soit mis a jour.

Merci d'avance, je recherche n'importe quoi qui pourrait faire l'affaire.



1 réponse

Messages postés
14738
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
23 novembre 2020
148
Bonjour,

Vérifie l'existence de l'IP avec un SELECT COUNT(*), puis si présent, Update, sinon, Insert.

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices.[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : ).[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualBasic (onglet Références dans les propriétés du projet).[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés/list
---
Mon site