Здравствуйте, вот код:
var io = require('socket.io').listen(8080);
var sql = require('mysql');
function sqlstart() {
var sqlcon = sql.createConnection({
host: 'localhost',
user: 'socket',
password: 'socket',
database: 'socket'
});
return sqlcon;
}
function isauth(value) {
var sqlcon = sqlstart();
sqlcon.connect();
sqlcon.query("SELECT * FROM users WHERE sess='"+ value +"'", function (err, rows, fields) {
if(err) throw err;
if(rows.length>0) {
return true;
}else{
return false;
}
});
sqlcon.end();
}
io.set('log level', 1);
io.sockets.on('connection', function (socket) {
var ID = (socket.id).toString().substr(0, 5);
socket.json.send({'event': 'connect', 'name': ID});
socket.on('message', function (msn) {
if(msn.event === "auth") {
if(isauth(msn.sess)) {
socket.json.send({'event': 'authSuccess'});
}else{
socket.json.send({'event': 'authError', 'param': 'wrong sess'});
}
}
});
});
Функция isauth возвращает undefined хотя должна true/false.
function isauth(value) {
var sqlcon = sqlstart();
sqlcon.connect();
sqlcon.query("SELECT * FROM users WHERE sess='"+ value +"'", function (err, rows, fields) {
if(err) throw err;
if(rows.length>0) {
return true;
}else{
return false;
}
});
sqlcon.end();
}
Подскажите что не так.