我正在为学校开发电子应用程序。当我想使用nodejs在我的sqlite数据库中插入数据时,它将用空值填充数据库。我从输入值中获取数据。
数据库图片:https://i.imgur.com/N9dUmBQ.png
这是我的代码:
<!DOCTYPE html>
<html>
<head>
<title>Tableau de patient</title>
<link rel="stylesheet" href="index.css">
</head>
<body>
<h1>Ajouter un patient</h1>
<input type="text" name="nom" placeholder="nom" id="lastname">
<input type="text" name="prenom" placeholder="prenom" id="name">
<br>
<input type="text" name="age" placeholder="age" id="year">
<input type="text" name="sexe" placeholder="sexe" id="genre">
<br>
<button type="button" name="sendData" id="send">Creer</button>
<script>
const sqlite3 = require('sqlite3').verbose();
// open the database
let db = new sqlite3.Database('./database.db', sqlite3.OPEN_READWRITE, (err) => {
if (err) {
console.error(err.message);
}
console.log('Connected to the database.');
});
var Inom = document.querySelector('#lastname').value;
var Iprenom = document.querySelector('#name').value;
var Iage = document.querySelector('#year').value;
var Isexe = document.querySelector('#genre').value;
var parameters = [Inom, Iprenom, Iage, Isexe];
var sql = 'INSERT INTO patient(nom, prenom, age, sexe) VALUES (?, ?, ?, ?)';
var btn = document.getElementById("send")
btn.addEventListener('click', function(){
console.log("ok")
db.run(sql, [parameters],function(err) {
if (err) {
console.error(err.message);
}
})
db.close((err) => {
if (err) {
console.error(err.message);
}
console.log('Close the database connection.');
});
})
</script>
</body>
</html>
我不是问题的出处。感谢您的帮助:)
答案 0 :(得分:1)
Dred, 您的querySelector值在clickevent之外。 页面加载时无法访问元素 将您的区块置于点击事件中
var btn = document.getElementById("send")
btn.addEventListener('click', function(){
var Inom = document.querySelector('#lastname').value;
var Iprenom = document.querySelector('#name').value;
var Iage = document.querySelector('#year').value;
var Isexe = document.querySelector('#genre').value;
var parameters = [Inom, Iprenom, Iage, Isexe];
var sql = 'INSERT INTO patient(nom, prenom, age, sexe) VALUES (?, ?, ?, ?)';
console.log("ok")
db.run(sql, [parameters],function(err) {
if (err) {
console.error(err.message);
}
})
db.close((err) => {
if (err) {
console.error(err.message);
}
console.log('Close the database connection.');
});
})