cs_lugdanum
Messages postés58Date d'inscriptionsamedi 23 novembre 2002StatutMembreDernière intervention12 décembre 2006
-
1 mars 2006 à 23:48
FhX
Messages postés2350Date d'inscriptionmercredi 13 octobre 2004StatutMembreDernière intervention18 avril 2015
-
2 mars 2006 à 18:22
Bonjour tout le monde
Pourriez-vous m'aider un peu en me disant ce qui ne marche pas dans mon code? :
<?
$table = "NomDeMaTable";
$user = "User";
$password = "Pass";
$host = "localhost";
$temps=3600;
mysql_connect($host, $user, $password);
mysql_select_db($table);
$heure=date("U");
$ip=$REMOTE_ADDR;
$result=mysql_query("SELECT * FROM visites");
$res=mysql_query("SELECT * FROM visites WHERE ip='$ip'");
if (mysql_num_rows($res))
{
mysql_query("UPDATE visites SET time='$heure' WHERE ip='$ip'");
$res1=mysql_query("SELECT nb FROM visites WHERE ip='$ip'");
if ($res1==0){echo "Vous avez eu vos $res1 essais, fini pour aujourd'hui";}
}
else
{
mysql_query("INSERT INTO visites (ip, time) VALUES ('$ip', '$heure')");
$res1=mysql_query("SELECT nb FROM visites WHERE ip='$ip'");
if ($res1>0){echo "il vous reste $res1 essais";}
$nb--;
mysql_query("UPDATE visites SET nb='$nb'");
}
$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.
2) 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
3) Est-ce que ça fait 3 fois qu'elle est déjà venue aujourd'hui?
4) 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.
cs_lugdanum
Messages postés58Date d'inscriptionsamedi 23 novembre 2002StatutMembreDernière intervention12 décembre 2006 1 mars 2006 à 23:50
Désolé, j'ai remis le code qui n'était pas passé
<?
$table = "NomDeMaTable";
$user = "User";
$password = "Pass";
$host = "localhost";
$temps=3600;
mysql_connect($host, $user, $password);
mysql_select_db($table);
$heure=date("U");
$ip=$REMOTE_ADDR;
$result=mysql_query("SELECT * FROM visites");
$res=mysql_query("SELECT * FROM visites WHERE ip='$ip'");
if (mysql_num_rows($res))
{
mysql_query("UPDATE visites SET time='$heure' WHERE ip='$ip'");
$res1=mysql_query("SELECT nb FROM visites WHERE ip='$ip'");
if ($res1==0){echo "Vous avez eu vos $res1 essais, fini pour aujourd'hui";}
}
else
{
mysql_query("INSERT INTO visites (ip, time) VALUES ('$ip', '$heure')");
$res1=mysql_query("SELECT nb FROM visites WHERE ip='$ip'");
if ($res1>0){echo "il vous reste $res1 essais";}
$nb--;
mysql_query("UPDATE visites SET nb='$nb'");
}
$heuremax=$heure-$temps;
mysql_query("DELETE FROM visites WHERE time<'$heuremax'");
?>
cs_Arnauti
Messages postés392Date d'inscriptionmercredi 24 novembre 2004StatutMembreDernière intervention26 septembre 2009 2 mars 2006 à 10:48
Est ce que tu as une erreur ? Que ce passe t-il avec ce script ?
A++
<hr size="2" width="100%">Si un des membres a posté une reponse qui convient, acceptez la !
Mon blog : http://blogs.rf.lv/arnauti
cs_lugdanum
Messages postés58Date d'inscriptionsamedi 23 novembre 2002StatutMembreDernière intervention12 décembre 2006 2 mars 2006 à 11:53
Oui à la première venue, je n'est que : "l vous reste essais" qui apparaît."
Ensuite à la deuxième, je n'est que : "Vous avez eu vos essais, fini pour aujourd'hui" et après il ne reste affiché que ça. J'ai regarder dans la base, l'IP est bien là.
j'ai de nouveau essayé avec ce code.
Je le poste en 2fois ?! :
cs_lugdanum
Messages postés58Date d'inscriptionsamedi 23 novembre 2002StatutMembreDernière intervention12 décembre 2006 2 mars 2006 à 11:53
<?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'");
?>
Vous n’avez pas trouvé la réponse que vous recherchez ?