shadow125
Messages postés50Date d'inscriptionsamedi 16 avril 2005StatutMembreDernière intervention 3 octobre 2008
-
9 avril 2006 à 12:09
cs_Anthomicro
Messages postés9433Date d'inscriptionmardi 9 octobre 2001StatutMembreDernière intervention13 avril 2007
-
9 avril 2006 à 18:45
Bonjour,
Voici mon problème : J'ai fait un petit script pour enregistrer les points de mes membres qui correspondent aux jours de visites ( 3 jours de visites = 30 points )
Mais voila, mon code ajoutera 10 points a chaque visite du site, hors je veux que lorsqu'on l'a visité 1 fois pour la journée, le compteur n'augmente pas.
Mes points sont dans des fichiers textes donc je pense qu'il faut utiliser des conditions sur les valeurs du fichier txt ...
Voici mon code actuel :
Petite explain : $pseudo est la valeur lorsque le membre se logue .
J'ai trouvé un code de sondage qui lui restreint l'accès ! Je vous met la partie du code qui me parait être la clé du problème :
<?
// INFORMATIONS SUR LE SONDAGE $titre 'sondage'; // nom du fichier dans lequel est stocké les votes
$question = 'Qui voulez vous voir gagner ?';
$reponse[1] = 'Kaiba';
$reponse[2] = 'Mokuba';
$nb_max_votes = 1; // 0 si illimité
// MODIFICATION DU SONDAGE
$choix = count($reponse);
if (isset($_GET['vote']))
{
$resultats = fopen("$titre.txt", "r+");
$vote = $_GET['vote'];
for ($numero = 1; $numero <= $choix; $numero ++)
{
$ligne[$numero] = (int) fgets($resultats);
if ($numero == $vote)
{
$ligne[$numero] ++;
}
if (isset($donnees_votes))
{
$donnees_votes = $donnees_votes . "\n" . $ligne[$numero];
$nb_votes += $ligne[$numero]; // comptage du nombre de votes
}
else
{
$donnees_votes = $ligne[$numero];
$nb_votes = (int) $ligne[$numero];
}
}
fseek ($resultats, 0);
if($nb_votes<=$nb_max_votes OR $nb_max_votes==0)
fputs ($resultats, $donnees_votes); // écriture des données
fclose($resultats);
} // la partie de lecture a été coupée volontairement
Merci de prendre 5 minutes pour m'expliquer comment faire :)
Evangun
Messages postés1980Date d'inscriptiondimanche 20 février 2005StatutMembreDernière intervention24 septembre 20124 9 avril 2006 à 13:28
Salut,
utilise des cookies.
genre :
if(empty($_COOKIE["visite"])){
setcookie('visite', 'ok', time()+1*24*3600); // le cookie expire après 1 jour
+TON CODE QUI AJOUTE 10 POINTS
}
else {
+le code à exécuter si le lvisiteur est déjà venu
}
cs_Anthomicro
Messages postés9433Date d'inscriptionmardi 9 octobre 2001StatutMembreDernière intervention13 avril 20078 9 avril 2006 à 18:45
Salut,
si tu as un fichier texte pour chaque membre, utilise plutôt le filemtime() qui correspond à la date de dernière modification du fichier. Tu la compares avec time() (en fait faut transformer les dates ou non pour savoir si le jour est le même). En fonction de ça tu ajoutes ou non les points.