Bonjour à tous, je suis en train de créer un jeu de carte en ligne et j'ai un souci pour mon espace joueur.

Mon problème : Voici un exemple :

Par exemple les personnes connectés qui seront dans cette div :


Code : Sélectionner tout - Visualiser dans une fenêtre à part
echo'<div id="connectes">'.$pseudo->afficheMembresCo().'</div>';

J'aimerais que le contenu de la div id="connectes" s'actualise toutes les secondes afin que les personnes connectés s'affichent dynamiquement. Je sais qu'il existe un fonction en jquery load() ou avec AJAX mais je n'arrive pas à l'adapter à mon modèle.

Auriez vous une solution ou un exemple qui se rapproche du mien ?
Merci de votre aide



Voila la page d'affichage


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
34
35
36
37
38
39
40
 
<?php
session_start();
include'connect_bdd.php'; 
include_once 'membre.class.php';
$pseudo = new Membre($_SESSION['pseudo']); 
?>
<html>
<head>
<link href="styles/style.css" rel="stylesheet" type="text/css" />
</head>
<body>  
<?php
if(isset($_SESSION['pseudo']) && $_SESSION['pseudo'] != "")
{
echo'<div class="espace_profil">';
// Partie gauche
echo'<div class="profil_gauche">';
echo'<div class="titre_profil"> <b> Bienvenue '.$pseudo->getPseudo().'</b> </div>';
echo'<br><br>';
include'classement.php'; 
echo'</div>';
// Partie droite
echo'<div class="profil_droite">';
echo'<div id="connectes">'.$pseudo->afficheMembresCo().'</div>';
echo'<br><br>';
echo'<div class="titre_profil"><b>Espace de demande</b></div>';
$pseudo->afficheDemande();
echo'<br><br>';
echo'<div class="titre_profil"><b>Espace de reception</b></div>';
$pseudo->afficheReception();
$pseudo->afficheRedirection();
echo'</div>';
// Fin Partie droite
echo'</div>';
}
else echo'Accès refusée';
?>
</body>
</html>

Voila ma classe membre


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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
<?php
 
Class Membre
{
	private $pseudo;
 
	public function __construct($session)
		{
			include'connect_bdd.php';
			$this->pseudo = $session;
			$pseudo_online = $bdd->query('select count(pseudo) as nb from cpt_connectes where pseudo="'.$session.'"')->fetchColumn();
				if($pseudo_online<=0)
				{
					$bdd->exec('insert into cpt_connectes (pseudo) values ("'.$session.'")');
				}		
		}
 
	public function getPseudo()
		{
		return $this->pseudo;
		}
 
 
	public function afficheMembresCo()
		{
			include'connect_bdd.php';
			$inter = $bdd->query('select pseudo from cpt_connectes'); 
			$nb_online = $inter->rowCount();
			$membre_dispo = $nb_online-1;
			if($nb_online == 1)
				echo '<div class="membres_dispo"><b>Il y a aucun membre disponible</b></div><br>';
			else 
				echo '<div class="membres_dispo"><b>Membres disponibles ('.$membre_dispo.')</b></div><br> ';
			if($nb_online>0)
				{
				echo'<table>';
				while($donnees = $inter->fetch())
					{
					if( $donnees['pseudo'] != $this->pseudo)
						echo '<tr><td><font style="font-family:Verdana; font-size:13px">'.$donnees['pseudo'].'</font></td><td><img onclick="demande_jeu(\''.$donnees['pseudo'].'\');" style="margin-left:5px;cursor:pointer" src="img/demande_jeu.jpg" width="28px"/></td></tr>';
					}
				echo'</table>';
				}
		}
 
	public function afficheDemande()
		{
			include'connect_bdd.php';
			$emetteur = $this->pseudo;
			$verif_demande = $bdd->query("SELECT id FROM demande_jeu WHERE emetteur = '$emetteur'");
			$count = $verif_demande->rowCount(); 
			if($count ==1)
				{
				$verif_dest = $bdd->query("SELECT * FROM demande_jeu WHERE emetteur = '$emetteur'");
				while ($donnees = $verif_dest->fetch()) 
					{
					if($donnees['reponse_dest'] == 'attente' )	
						echo '<br>Attente du joueur '.$donnees['destinataire'].'';	
					else 
						echo '<br>'.$donnees['destinataire'].' a accepté !';
					}
				}
			else
				echo '<br>Aucune demande de jeu';
 
			$verif_demande->closeCursor();	
		}
 
	public function afficheReception()
		{
			include'connect_bdd.php';
			$destinataire = $this->pseudo;
			// On recherche si une demande a été faite
			$verif_destinataire = $bdd->query("SELECT id FROM demande_jeu WHERE destinataire = '$destinataire'");
			$count = $verif_destinataire->rowCount();
				if($count ==1)
				{
				// Si la demande a été faite, on affiche la demande avec l'emetteur
				$verif_em = $bdd->query("SELECT * FROM demande_jeu WHERE destinataire = '$destinataire'");
				while ($donnees = $verif_em->fetch()) 
					{
					if($donnees['partie_prete']!= 'oui' && $donnees['reponse_dest']!='oui' )
						{
						echo 'Vous avez une demande de '.$donnees['emetteur'].'<br> Voulez-vous accepter ? <br>
						<input type="submit" value="Oui" onclick="demande(\'acceptation.php\');rafraichir_rec();"/><input type="submit" onclick="demande(\'sup_dem.php\');" value="Non"/> ';
						}
 
					if($donnees['reponse_dest']=='oui' && $donnees['partie_prete']!= 'oui')
						echo 'Création de la partie, veuillez patienter ...';
					}
				$verif_em->closeCursor();
				}
				else
					echo '';
 
		}
 
 
		public function afficheRedirection()
		{
		include'connect_bdd.php';
		$joueur = $this->pseudo;
		$redirection_joueur1 = $bdd->query("SELECT * FROM demande_jeu WHERE emetteur = '$joueur'");
		while ($donnees = $redirection_joueur1->fetch()) 
			{
			$verif_redirection_j1 = $donnees['reponse_dest'];
			if($verif_redirection_j1=='oui')
			echo'<a href="creation_jeu.php"> Démarrer la partie</a>'; 
			}
		$redirection_joueur2 = $bdd->query("SELECT * FROM demande_jeu WHERE destinataire = '$joueur'");
		while ($donnees = $redirection_joueur2->fetch()) 
			{
			$verif_redirection_j2 = $donnees['partie_prete'];
			if($verif_redirection_j2=='oui')
			echo'<a href="creation_jeu.php"> Démarrer la partie</a>'; 
			}
		}
 
 
 
}
 
?>