hallo , ich arbeite gerade an einer Node.js Applikation , nun kriege ich immer wieder den Fehler :
listening on *:3000
C:\xampp\htdocs\nodejs\database.js:27
io.sockets.connected[allClients[xyz]].emit('socketid',allClients[xyz]);
^
TypeError: Cannot read property 'emit' of undefined
at Timeout._onTimeout (C:\xampp\htdocs\nodejs\database.js:27:4 1)
at ontimeout (timers.js:475:11)
at tryOnTimeout (timers.js:310:5)
at Timer.listOnTimeout (timers.js:270:5)
C:\xampp\htdocs\nodejs>node database.js
listening on *:3000
C:\xampp\htdocs\bithunter\nodejs\database.js:28
io.sockets.connected[allClients[xyz]].emit('socketid',allClients[xyz]);
^
TypeError: Cannot read property 'emit' of undefined
at Timeout._onTimeout (C:\xampp\htdocs\nodejs\database.js:28:4 1)
at ontimeout (timers.js:475:11)
at tryOnTimeout (timers.js:310:5)
at Timer.listOnTimeout (timers.js:270:5)
Eigentlich funktioniert alles doch ich hier irgendwie Probleme mit den Verhältnissen der Funktionen , komme aber mit this. auch nicht wirklich weiter ,falls mir jmd. helfen könnte , wäre ich sehr dankbar !
listening on *:3000
C:\xampp\htdocs\nodejs\database.js:27
io.sockets.connected[allClients[xyz]].emit('socketid',allClients[xyz]);
^
TypeError: Cannot read property 'emit' of undefined
at Timeout._onTimeout (C:\xampp\htdocs\nodejs\database.js:27:4 1)
at ontimeout (timers.js:475:11)
at tryOnTimeout (timers.js:310:5)
at Timer.listOnTimeout (timers.js:270:5)
C:\xampp\htdocs\nodejs>node database.js
listening on *:3000
C:\xampp\htdocs\bithunter\nodejs\database.js:28
io.sockets.connected[allClients[xyz]].emit('socketid',allClients[xyz]);
^
TypeError: Cannot read property 'emit' of undefined
at Timeout._onTimeout (C:\xampp\htdocs\nodejs\database.js:28:4 1)
at ontimeout (timers.js:475:11)
at tryOnTimeout (timers.js:310:5)
at Timer.listOnTimeout (timers.js:270:5)
Eigentlich funktioniert alles doch ich hier irgendwie Probleme mit den Verhältnissen der Funktionen , komme aber mit this. auch nicht wirklich weiter ,falls mir jmd. helfen könnte , wäre ich sehr dankbar !
Code:
var app = require('express')(); var http = require('http').Server(app); var io = require('socket.io')(http); var mysql = require('mysql'); var con = mysql.createConnection({host: "localhost",user: "root",password: "",database: "XXX"}); // MARIADB VERBINDUNDSSYNTAX con.connect(); //var getusername = setInterval(function () //{ //io.on('username',function(msg){console.log(username);}); //console.log("test"); //var format = JSON.stringify(data); //var queryone = 'SELECT `userbalance` FROM `users` WHERE username = '+format; //con.query(queryone,function(err, result, fields){var balance = JSON.stringify(result); var balance = balance.replace(/[^0-9]/g,''); console.log(balance)}); //},1000); var allClients = []; io.sockets.on('connection', function(socket) { this.io = io = require('socket.io')(http); allClients.push(socket.id); socket.on('disconnect', function() { var i = allClients.indexOf(socket.id); allClients.splice(i, 1); }); var x = setInterval(function () { for (xyz = 0 ;xyz < allClients.length ; xyz++) { io.sockets.connected[allClients[xyz]].emit('socketid',allClients[xyz]); socket.on('username', function (username,io){io.connected[allClients[xyz]].emit('balance',"you have a account"); var format = JSON.stringify(username);var queryone = 'SELECT `userbalance` FROM `users` WHERE username = '+format; con.query(queryone,function(err, result, fields,socket){var balance = JSON.stringify(result); var balance = balance.replace(/[^0-9]/g,'');}); }); } },1000);}); // var format = JSON.stringify(data); // var queryone = 'SELECT `userbalance` FROM `users` WHERE username = '+format; // con.query(queryone,function(err, result, fields){var balance = JSON.stringify(result); var balance = balance.replace(/[^0-9]/g,''); http.listen(4041, function(){ console.log('listening on *:3000'); });
Kommentar