Bonsoir,

Je code un calendrier de l'avent sur mon site qui offre chaque jour un cadeau.. Mais j'ai un blocage.

Lorsqu'un utilisateur ouvre la case "1 Décembre" par exemple, j'aimerais que la deuxième fois ou il re-clique qu'un message lui dise qu'il a déjà ouvert cette case.

J'ai donc essayer moi même et le problème est que l'utilisateur peut ouvrir la case 1 Décembre autant de fois qu'il le veut.

Voici le code:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
 
$j = date('d');
$query = $db->prepare("SELECT * FROM calendrier_avent WHERE d=:d AND uid=:id");
	$query->execute(array(
		'd' => $j,
		'uid' => $user['id']
	));
$nb = $query->rowCount();
if($nb==0):
	if($j>date('j')):
		$t = "Tu devras attendre encore un peu avant d'avoir les cadeaux pour ce jour !";
	elseif($j<date('j')):
		$t = "Trop tard :) cette date est passée";
	else:
		$queryAvent = $db->prepare("INSERT INTO calendrier_avent VALUES ('',:d,:uid)");
			$queryAvent->execute(array(
			'd' => $j,
			'uid' => $user['id']
		));
 
		if($j==1):
			$text = "1 badge + 5 Duckets !";
			$query2 = $db->prepare("UPDATE users SET points = points + 5 WHERE id = :uid");
				$query2->execute(array(
				'uid' => $user['id'],
			));
	endif;
else:
	$t = "Tu as déjà eu tes cadeaux pour le ".$j." Décembre 2014 :) si tu ne les vois pas il te suffit de te reconnecter!";
endif;
 
if(isset($_GET['j']))
	exit();