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

标签 php jquery mysql sockets

我正在使用这段代码,它可以很好地存储在数据库中的参数值,但我想在数据库中存储另外 2 个值,如何使用套接字在数据库中传递多个值。 这是代码...

    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;
        });
    });
}

最佳答案

我建议阅读文档: https://dev.mysql.com/doc/refman/5.7/en/insert.html

就您而言,它看起来像这样:

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 />');
    });
});

关于php - 如何使用socket和mysql发送多个值存储在数据库中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42738055/

相关文章:

javascript - 带有附加参数的按钮(非 ajax)

mysql SELECT EXISTS 存在于多个表上

javascript - 如何使用 jQuery POST 将 get 变量从 JavaScript 传递到 PHP Mysql

php - 如何创建布局模板 - 静态网站

php - 将 PHP 变量传递给 JavaScript 函数

javascript - 需要对显示内容的 ajax 数据结果加载效果

javascript - 在这个场景中事件是如何传递的?

php - 将数组的值插入 MYSQL

php - 如何在处理 PHP 脚本时用 Javascript 打印报告?

php - JQuery 自动完成 PHP 文件的源路径