-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathapp.js
87 lines (76 loc) · 1.9 KB
/
app.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
const express = require('express');
const mysql = require('mysql');
const app = express();
app.use(express.static('public'));
app.use(express.urlencoded({extended: false}));
const connection = mysql.createConnection({
host: 'localhost',
user: 'root',
password: 'kimbowa',
database: 'shopping_list'
});
//homepage route
app.get('/', (req, res) => {
res.render('top.ejs');
});
//route to listing items page
app.get('/index', (req, res) => {
connection.query(
'SELECT * FROM items',
(error, results) => {
console.log(results);
res.render('index.ejs', {items: results});
}
);
});
//route to adding new teanant
app.get('/addTenant', (req, res)=> {
connection.query(
'SELECT * FROM '
)
})
//route to create new item page
app.get('/new', (req, res) => {
res.render('new.ejs');
});
app.post('/create', (req, res) => {
//create item in db
connection.query(
'INSERT INTO items (name) VALUES (?)',
[req.body.itemName],
(error, results) => {
res.redirect('/index');
}
);
});
app.post('/delete/:id', (req, res) => {
//delete item
connection.query(
'DELETE FROM items WHERE id = ?',
[req.params.id],
(error, results) => {
res.redirect('/index');
}
);
});
app.get('/edit/:id', (req, res) => {
//select item, take it to edit page
connection.query(
'SELECT * FROM items WHERE id = ?',
[req.params.id],
(error, results) => {
res.render('edit.ejs', {item: results[0]});
}
);
});
app.post('/update/:id', (req, res) => {
// update the selected item
connection.query(
'UPDATE items SET name=? WHERE id =?',
[req.body.itemName, req.params.id],
(error, results) => {
res.redirect('/index');
}
);
});
app.listen(3000);