为什么在将电子邮件数据发送到我的数据库时出现错误?
Why i'm getting and error while sending email data to my database?
所以我的问题是我收到了这个错误:Uncaught Error: SQLITE_ERROR: near "@gmail": syntax error
当我在数据库中插入或更新时。
我正在使用 sqlite3 和 electron。这是我的代码:
function addPatient(){
var req = 'INSERT INTO patient(nom, prenom, age, tel, mail, sexe, paiement) VALUES('+li_nom.value+','+li_prenom.value+','+li_age.value+','+li_tel.value+','+li_mail.value+','+li_sexe.value+','+li_paiement.value+')';
db.run(req);
event.preventDefault();
console.log("done");
}
PS: 我正在从表单值中获取数据。
如果您需要更多信息,请随时询问。
感谢您的帮助:)
您正在通过字符串连接创建 SQL 查询,这使其容易受到 SQL 注入和其他格式错误查询的攻击。
当数据库接收到查询时,您的查询基本上看起来像这样:
INSERT INTO patient(nom, prenom, age, tel, mail, sexe, paiement) VALUES(name,prename,25,555555555,example@gmail.com,male,500)
这里的问题:
- 您的查询中需要引用字符串值
@
符号用于变量(当不是真实字符串的一部分或未被引用时)
您需要使用参数化查询。这将解决这两个问题 和 保护您免受几乎任何 SQL 注入。您在查询中创建占位符,然后通过库以编程方式填充它们。
所以我的问题是我收到了这个错误:Uncaught Error: SQLITE_ERROR: near "@gmail": syntax error
当我在数据库中插入或更新时。
我正在使用 sqlite3 和 electron。这是我的代码:
function addPatient(){
var req = 'INSERT INTO patient(nom, prenom, age, tel, mail, sexe, paiement) VALUES('+li_nom.value+','+li_prenom.value+','+li_age.value+','+li_tel.value+','+li_mail.value+','+li_sexe.value+','+li_paiement.value+')';
db.run(req);
event.preventDefault();
console.log("done");
}
PS: 我正在从表单值中获取数据。
如果您需要更多信息,请随时询问。
感谢您的帮助:)
您正在通过字符串连接创建 SQL 查询,这使其容易受到 SQL 注入和其他格式错误查询的攻击。
当数据库接收到查询时,您的查询基本上看起来像这样:
INSERT INTO patient(nom, prenom, age, tel, mail, sexe, paiement) VALUES(name,prename,25,555555555,example@gmail.com,male,500)
这里的问题:
- 您的查询中需要引用字符串值
@
符号用于变量(当不是真实字符串的一部分或未被引用时)
您需要使用参数化查询。这将解决这两个问题 和 保护您免受几乎任何 SQL 注入。您在查询中创建占位符,然后通过库以编程方式填充它们。