Socket.io、Node.js:如何在 javascript.js 中将 javascript 变量传递给 mysql 查询?
Posted
技术标签:
【中文标题】Socket.io、Node.js:如何在 javascript.js 中将 javascript 变量传递给 mysql 查询?【英文标题】:Socket.io, Node.js: How can a javascript variable be passed to mysql query from in a javascript.js? 【发布时间】:2020-09-25 10:00:49 【问题描述】:尝试将值为'222.222.222.222'
的变量传递到mysql 查询时出错,但在将值为'2'
的变量传递到同一个mysql 查询时不会出错。
任何帮助将不胜感激。
这给出了错误:
var javascriptVariable = '222.222.222.222';
$query = 'INSERT INTO misc_table (misc_field) VALUES ('+javascriptVariable+')';
connection.query($query, function(err, rows, fields)
if(err)
console.log("An error ocurred performing the query.");
return;
console.log("Query succesfully executed: ", rows);
);
这不会给出错误:
var javascriptVariable = '2';
$query = 'INSERT INTO misc_table (misc_field) VALUES ('+javascriptVariable+')';
connection.query($query, function(err, rows, fields)
if(err)
console.log("An error ocurred performing the query.");
return;
console.log("Query succesfully executed: ", rows);
);
【问题讨论】:
$query = 'INSERT INTOmisc_table
(misc_field) VALUES ('+javascriptVariable+')'; :)
这真的很基础,只是尝试再次了解 js 基础知识,我猜你那里需要一些问题.????
编辑了问题,但仍然无法正常工作。有错误:An error ocurred performing the query.
哦,好吧,我看到你得到了答案,最好以 bdw 的方式使用它。谢谢@Vasyl Moskalov
【参考方案1】:
从未想过以这种方式更新数据库。 第一的。事实上,你尝试执行下一段代码
INSERT INTO misc_table (misc_field) VALUES (222.222.222.222)
第二。这是sql注入的直接方法
第三。试试这样的
var javascriptVariable = '222.222.222.222';
let $query = 'INSERT INTO misc_table (misc_field) VALUES (?)';
connection.query(
$query,[ javascriptVariable ],
function (...args)
....
);
【讨论】:
以上是关于Socket.io、Node.js:如何在 javascript.js 中将 javascript 变量传递给 mysql 查询?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Node.js 中从请求参数获取经过身份验证的用户到 socket.io
如何将 Asterisk ARI 与 socket.io 和 Node.js 一起使用
Socket.io、Node.js:如何在 javascript.js 中将 javascript 变量传递给 mysql 查询?