Bonjour, je suis entrain de suite le tutoriel cité dans le titre du sujet et je suis bloqué au niveau de la déconnexion.

Sa ne supprime pas l'utilisateur déconnecté de objet et non plus de ma liste de connectés

Mon code serveur.js
[code]
var express = require('express');
var app = express();
var server = require('http').createServer(app);
var io = require('socket.io').listen(server);
var ent = require('ent');
var fs = require('fs');
var php = require('phpjs');

app.use(express.static(__dirname + '/'));

app.get('/', function(req, res)
{
res.sendfile(__dirname + '/index.html');
});

var utilisateurs = {};

io.sockets.on('connection', function(socket)
{
var utilisateur = false;
var id = php.uniqid();
console.log('nouveau utilisateur');

for(var k in utilisateurs)
{
    socket.emit('nouveau_utilisateur', utilisateurs[k]);
}

socket.on('login', function(utilisateur)
{
    utilisateur.prenom = php.ucfirst(utilisateur.prenom);
    utilisateur.id = id;
    console.log(utilisateur);
    socket.emit('connecter');
    utilisateurs[utilisateur.id] = utilisateur;
    console.log(utilisateurs);
    io.sockets.emit('nouveau_utilisateur', utilisateur);
});

socket.on('disconnect', function()
{
    console.log('utilisateur quitte');
    if(!utilisateur) {return false;}
    console.log(utilisateur.id);
    delete utilisateurs[utilisateur.id];
    console.log(utilisateurs);
    io.sockets.emit('deconnection', utilisateur);
});

});

server.listen(8888);
[/code]

Mon code client.js
[code]
$(function()
{
var socket = io.connect('http://localhost:8888');

$('#connection').submit(function(event)
{
    event.preventDefault();
    socket.emit('login', {
        prenom : $('#prenom').val(),
        genre  : $('#genre').val()
    });
});

socket.on('connecter', function()
{
    $('#lightbox').fadeOut();
    $('#connection').fadeOut();
});

socket.on('nouveau_utilisateur', function(utilisateur)
{
    console.log(utilisateur);
    $('aside ul').append('<li id="' + utilisateur.id + '"><img src="./image/' + utilisateur.genre + '.png"><p>' + utilisateur.prenom + '</p></li>');

});

socket.on('deconnection', function(utilisateur)
{
    console.log(utilisateur);
    $('#' + utilisateur.id).remove();
});

});
[/code]

Mon fichier index.html
[code]
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="UTF-8">
<title>Liste à faire</title>
<!--[if lt IE 9]>
<script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<link rel="icon" type="image/png" href="image/mafavicon.png" />
<link rel="stylesheet" href="css/style.css">
<script type="text/javascript" src="js/browser-update.js"></script>
<script type="text/javascript" src="js/angular.min.js"></script>
<script type="text/javascript" src="js/jquery-1.11.1.min.js"></script>
<script type="text/javascript" src="http://localhost:8888/socket.io/socket.io.js"></script>
<script type="text/javascript" src="js/client.js"></script>
</head>
<body>
<div id="lightbox"></div>
<div id="connection">
<form>
<p>Veulliez-vous identifier</p>
<input id="prenom" type="text" name="prenom" autofocus required placeholder="Votre prénom" size="15">
<input id="genre" type="text" name="genre" required placeholder="Votre genre" size="15">
<!--<select name="sexe" required>
<option>Votre genre</option>
<option value="homme">Homme</option>
<option value="femme">Femme</option>
</select>-->
<input type="submit" value="Enregister !!">
</form>
</div>
<section>
<aside>
<div>Liste de connectées</div>
<ul>
<!--<li><img src="./image/homme.png"><p>Stéphane</p></li>
<li><img src="./image/femme.png"><p>Mélodie </p></li>-->
</ul>
</aside>
<div id="espace"></div>
<article>
<div>Liste des choses à faire</div>
<ul>
<li>
<img src="./image/supprimer.png" alt=" Supprimer" title="Supprimer">
<img src="./image/modifier.png" alt="Modifier" title="Modifier">
<img src="./image/valider.png" alt="Fait" title="Fait">
<p>Acheter du paim</p>
</li>
<li>
<img src="./image/supprimer.png" alt=" Supprimer" title="Supprimer">
<img src="./image/modifier.png" alt="Modifier" title="Modifier">
<img src="./image/valider.png" alt="Fait" title="Fait">
<p>Payer la fecture EDF</p>
</li>
</ul>
</article>
</section>
</body>
</html>
[/code]

Sa fait un moment que je cherche et revoie la vidéo sens comprendre ce qui marche pas

Merci de votre aide

Aucune réponse