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 :
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
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
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>';
}
}
}
?> |
Partager