Структура документа:
|-public/
|-js/
|-shop.js
|-views/
|-routes/
|app.js
Я определил свое sql-соединение в своем app.js
const mysql = require('mysql');
const db = mysql.createConnection({
host: '127.0.0.1',
user: 'root',
password: 'password',
database: 'pfis'
});
db.connect((err) => {
if (err) {
throw err;
}
console.log('Connected to database');
});
global.db = db;
Все sql запросы в app.js работают нормально!
Моя проблема в том, что у меня есть файл shop.js (см. Структуру каталогов), в который нужно вставить некоторые sql (хранимые процедуры) после того, как они нажали на элемент кнопки на моей странице. И я не могу понять, как этого добиться.
пример shop.js (который не работает!):
function purchaseClicked() {
var stoel = prompt("Enter your chairnumber: ");
alert('Someone is on this way with the ATM-machine');
var cartItems = document.getElementsByClassName('cart-items')[0];
while (cartItems.hasChildNodes()) {
var itemTitle = document.getElementsByClassName('cart-item-title')[0].innerHTML;
var itemQuantity = document.getElementsByClassName('cart-quantity-input')[0].value;
db.query("Call test1_insert(" + itemTitle + ", " + itemQuantity + ", " + stoel + ");",
function (error, results, fields) {
if (error) {
alert("Something went wrong, try again!");
}
alert("Looks like all good!");
});
cartItems.removeChild(cartItems.firstChild);
}
updateCartTotal();
}
Я пытался добавить тот же код соединения с БД из app.js (см. Фрагмент кода выше) в файл shop.js, но это тоже не нравится.
Кто может мне помочь, как выполнить SQL из "внешнего" файла .js?