adresse ip + compteur

lugdanum
Invité n'ayant pas de compte PHPfrance

02 mars 2006, 03:06

Bonjour tout le monde

Pourriez-vous m'aider un peu en me disant ce qui ne marche pas dans mon code? :
<?php
$table = "lugdanum_db";
$user = "lugdanum";
$password = "";
$host = "localhost";
$temps=3600;
mysql_connect($host, $user, $password);
mysql_select_db($table);
$heure=date("U");
$ip=$_SERVER['REMOTE_ADDR'];
$result=mysql_query("SELECT * FROM visites");
$res=mysql_query("SELECT * FROM visites WHERE ip='$ip'");
if (mysql_num_rows($res))
{
$res1=mysql_fetvh_assoc("SELECT nb FROM visites WHERE ip='$ip'");
if ($res1==0)
{
echo "Vous avez eu vos $res1 essais, fini pour aujourd'hui";
}
else
{
$res1=mysql_fetvh_assoc("SELECT nb FROM visites WHERE ip='$ip'");
echo "il vous reste $res1 essais";
$res1--;
$res1= mysql_query("UPDATE * FROM visites SET nb='$res1' WHERE ip='$ip'");
}
}
else
{
mysql_query("INSERT INTO visites (nb,ip, time) VALUES ('3','$ip', '$heure')");
$res1=mysql_fetvh_assoc("SELECT nb FROM visites WHERE ip='$ip'");
echo "il vous reste $res1 essais";
$res1--;
$res1= mysql_query("UPDATE * FROM visites SET nb='$res1' WHERE ip='$ip'");
}
$heuremax=$heure-$temps;
mysql_query("DELETE FROM visites WHERE time<'$heuremax'");
?>

$ip = je stoke la valeur ip dedans
$nb = je stoke le nombre de fois que la personne est venue

J'ai essayer plusieurs choses et je n'ai réussi à rien.
Voilà ce que je cherche à faire :
  1. Quand la personne arrive sur ma page, je vérifie que son IP n'est pas dans ma base.
    1. Si elle n'y est pas, je l'ajoute et je passe au 3)
    2. Si elle y est, est que cela ne fait pas plus de 24 h qu'elle s'y trouve, je passe au 3), sinon je l'efface et reviens au 1
  2. Est-ce que ça fait 3 fois qu'elle est déjà venue aujourd'hui?
  3. Si oui, je lui indique que cela fait déjà 3 fois et qu'il faut qu'elle attende 24 h pour revenir
  4. Si non, je lui dis qu'il lui reste encore x passage possible et je décrémente en fonction.
Voilà, j'espère ne pas avoir écris trop de charabia.
En tout cas merci d'avance pour vos réponses.

ps : je me suis basé sur ce script :
http://membres.lycos.fr/crytex/visites.php

Mammouth du PHP | 768 Messages

02 mars 2006, 09:10

mysql_fetvh_assoc :arrow: mysql_fetch_assoc

PS: dans mon entreprise, nous sommes plus de 300 utilisateurs, nous sortons tous avec la même adresse IP sur le web. C'est juste une remarque :wink:
M A R I O
Si une patte de lapin porte bonheur, qu'a-t-il bien pu arriver au lapin ?