我正在使用这段代码,它可以很好地存储在数据库中的参数值,但我想在数据库中存储另外 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/