Я пытаюсь сохранить данные из формы html в базу данных mysql. Очевидно, я новичок в этом, поэтому я знаю, что делаю что-то не так, но после долгих исследований я все еще не могу понять это. Я создал простую версию своей формы для тестирования.
<!DOCTYPE html>
<html>
</head>
<body>
<script src="scripts/test.js"></script>
<form>
<input id="firstName" type="text" class="form-control" name="firstName" placeholder="First Name">
<input id="lastName" type="text" class="form-control" name="lastName" placeholder="Last Name">
<input id="userName" type="text" class="form-control" name="userName" placeholder="Username">
<input id="inputText" type="text" class="form-control" name="email" placeholder="Email">
<input id="currentPassword" type="password" class="form-control" name="currentPassword" placeholder="Current Password">
<input type="submit" onclick="saveAccount()" id="createAccountButton" class="button2" value="Create Account"></input>
</form>
</body>
</html>
Мой javascript код:
function saveAccount(){
var mysql = require('mysql');
var con = mysql.createConnection({
host: "localhost",
user: "root",
password: "abc123",
database: "PBSC_Parking_DB"
});
con.connect(function(err) {
if (err) throw err;
console.log("connected");
});
var firstName = document.getElementById("firstName");
var lastName = document.getElementById("lastName");
var psw = document.getElementById("psw");
var userName = document.getElementById("userName");
var email = document.getElementById("inputText");
var sql = "INSERT INTO accounts (UserName, FirstName, LastName, Email, UserPassword) VALUES ('"+userName+ "', '"+firstName+"','"+lastName+"','"+email+"','"+psw+"')";
con.query(sql, function (err, result) {
if (err) {
throw err;
}
console.log(result.affectedRows + " record(s) updated");
});
}
Я читал, что вы предполагаете подключиться к базе данных вне функции, но ее перемещение вне функции не кажется, чтобы решить мою проблему. Мне также сказали, что я не должен использовать «документ». но я не уверен, как еще получить данные из формы, которая будет использоваться в моем операторе sql.
Я пытался жестко кодировать значения в операторе INSERT, не используя функцию, а просто запуская файл js через командную строку. Это работает для обновления моей базы данных, поэтому я знаю, что я правильно подключаюсь ... Я просто не знаю, как заставить это работать с формой.
примечание: я также пытался искать учебники, используя nodejs и e js, но после тщательного изучения учебников я все еще не мог заставить их работать.