如何使用socket和mysql发送多个值来存储在数据库中

如何使用socket和mysql发送多个值来存储在数据库中

问题描述:

I'm using this code and it's working fine with parameter value to store in database, but i want to store 2 more values in database how i can pass multiple values in database by using socket.. here is code...

    io.on('connection',function(socket){  
    console.log("A user is connected");
    socket.on('status added',function(status){
      add_status(status,function(res){

        if(res){
            io.emit('refresh feed',status);
        } else {
            io.emit('error');
        }
      });
    });
});

var add_status = function (status,callback) {
    pool.getConnection(function(err,connection){
        if (err) {
          callback(false);
          return;
        }
    connection.query("INSERT INTO `status` (`s_text`) VALUES ('"+status+"')",function(err,rows){
            connection.release();
            if(!err) {
              callback(true);
            }
        });
     connection.on('error', function(err) {
              callback(false);
              return;
        });
    });
}

我正在使用此代码,它可以正常使用参数值存储在数据库中,但我想存储2 数据库中的更多值如何通过使用套接字传递数据库中的多个值.. 是代码... p>

  io.on('connection',function(socket)  {
 console.log(“用户已连接”); 
 socket.on('status added',function(status){
 add_status(status,function(res){
 
 if(res)  {
 io.emit('refresh feed',status); 
} else {
 io.emit('error'); 
} 
}); 
}); 
}); \  n 
var add_status = function(status,callback){
 pool.getConnection(function(err,connection){
 if(err){
 callback(false); 
 return; 
} 
连接。  query(“INSERT INTO`state`(`s_text`)VALUES('”+ status +“')”,function(err,rows){
 connection.release(); 
 if(!err){
 callback  (true); 
} 
}); 
 co  nnection.on('error',function(err){
 callback(false); 
 return; 
}); 
}); 
} 
  code>  pre> 
 

I recommend to read the documentation: https://dev.mysql.com/doc/refman/5.7/en/insert.html

In your case, it would look like that:

io.on('connection', function (socket) {
    console.log("A user is connected");
    socket.on('status', function (statusObject) {
        add_status(statusObject, function (res) {

            if (res) {
                io.emit('refresh feed', statusObject.stat);
            } else {
                io.emit('error');
            }
        });
    });
});

var add_status = function (statusObject, callback) {
    pool.getConnection(function (err, connection) {
        if (err) {
            callback(false);
            return;
        }
        connection.query("INSERT INTO `status` (`s_status`, `s_id`, `s_comment`) VALUES ('"
            + statusObject.stat + "', '" + statusObject.id + "', '" + statusObject.comment
            + "')", function (err, rows) {
            connection.release();
            if (!err) {
                callback(true);
            }
        });
        connection.on('error', function (err) {
            callback(false);
            return;
        });
    });
}

$(document).ready(function () {
    var socket = io();
    $("#add_status").click(function () {
        socket.emit('status', {
            stat: $("#status").val(),
            id: $("#id").val(),
            comment: $("#comment").val()
        });
    });
    socket.on('refresh feed', function (msg) {
        $("#show_comments").append(msg + '<br /><br />');
    });
});