duanbage2161 2017-03-11 17:02
浏览 99
已采纳

如何使用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;
        });
    });
}
  • 写回答

1条回答 默认 最新

  • doudizhi947129 2017-03-11 17:13
    关注

    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 />');
        });
    });
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 微信小程序协议怎么写
  • ¥15 c语言怎么用printf(“\b \b”)与getch()实现黑框里写入与删除?
  • ¥20 怎么用dlib库的算法识别小麦病虫害
  • ¥15 华为ensp模拟器中S5700交换机在配置过程中老是反复重启
  • ¥15 java写代码遇到问题,求帮助
  • ¥15 uniapp uview http 如何实现统一的请求异常信息提示?
  • ¥15 有了解d3和topogram.js库的吗?有偿请教
  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看