A voir également:
- [PHP Mysql] Pb affichage unique frame par ip
- Ethernet n'a pas de configuration ip valide - Guide
- Comment connaître son adresse ip - Guide
- Comment savoir si quelqu'un utilise mon adresse ip - Guide
- Easy php - Télécharger - Divers Web & Internet
- Ip local - Guide
2 réponses
Reivax962
Messages postés
3672
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
11 février 2021
1 011
11 déc. 2006 à 12:32
11 déc. 2006 à 12:32
Bonjour,
Je pense que ton problème vient du fait que tu ne vérifies que l'IP corresponde à une entrée de ta table que sur un seul enregistrement, le premier renvoyé par mysq_fetch_assoc.
Il faudrait parcourir tout le tableau pour vérifier que l'IP n'y est pas, où, mieux (à mon avis), faire une requête avec l'IP.
Aussi, un WHERE dans une clause INSERT n'est, comment dire... pas franchement habituel...
Voilà ce que je te propose :
Xavier
Je pense que ton problème vient du fait que tu ne vérifies que l'IP corresponde à une entrée de ta table que sur un seul enregistrement, le premier renvoyé par mysq_fetch_assoc.
Il faudrait parcourir tout le tableau pour vérifier que l'IP n'y est pas, où, mieux (à mon avis), faire une requête avec l'IP.
Aussi, un WHERE dans une clause INSERT n'est, comment dire... pas franchement habituel...
Voilà ce que je te propose :
<?php $Ip = $_SERVER['REMOTE_ADDR']; $Date = date("d/m/Y"); $db = mysql_connect('localhost', 'login', 'mdp') or die('Erreur de connexion '.mysql_error()); mysql_select_db('base',$db) or die('Erreur de selection '.mysql_error()); define( _TABLE , 'Ip_Unique' ); // Recherche du nombre d'entrées aujourd'hui (toute IP confondue) $sql = "SELECT count(*) as entrees_auj FROM " . _TABLE . " WHERE `Date` = '".$Date."'"; $req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error()); $data = mysql_fetch_assoc($req); // Si aucune entrée aujourd'hui, on vide la table if($data['entrees_auj'] == 0) { mysql_query("TRUNCATE TABLE " . _TABLE . ""); } // Recherche des entrées sur l'IP concernée $sql = "SELECT count(*) as entrees_ip FROM " . _TABLE . " WHERE `Ip` = '".$Ip."'"; $req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error()); $data = mysql_fetch_assoc($req); // S'il n'y a eu aucune entrée sur cette IP if($data['entrees_ip'] == 0) { mysql_query("INSERT INTO " . _TABLE . " (Ip,Date) VALUES ('$Ip','$Date')); echo ("<iframe src='http://www.bonus.grumosweb.fr/PTP2.php' width=0 height=0 MARGINWIDTH=0 MARGINHEIGHT=0 HSPACE=0 VSPACE=0 FRAMEBORDER=0 SCROLLING=no></iframe>"); } mysql_close(); ?>Qu'en penses-tu ?
Xavier
olalalala, désolé j'avais completement oublier ce post.
Merci à toi Xavier mais j'ai opté pour les cookies enfaite, c'est plus simple.
P.s.: Si un modérateur ou amdin passe par ici, il peut mettre en résolu car je ne peut pas je n'arrive pas à me connecter j'ai surment été supprimé.
Merci encore.
Grumos
Merci à toi Xavier mais j'ai opté pour les cookies enfaite, c'est plus simple.
P.s.: Si un modérateur ou amdin passe par ici, il peut mettre en résolu car je ne peut pas je n'arrive pas à me connecter j'ai surment été supprimé.
Merci encore.
Grumos