WebApp/Node.js-MySQL (5) 썸네일형 리스트형 Node.js - MySQL security 인젝션 즉 주소창의 id값에 ?id=1;DROP TABLE topic;등과 같은 입력값으로써의 공격을 방어하기위하여 db.query의 첫번째 파라미터로 ?를 주고 두번째 파라미터로 배열로써 순차적으로 그 대입값을 입력하는 방법으로 방어 이스케이핑 즉 사용자가 스크립트등의 태그를 입력값으로 주어 공격하는 것을 방어하기 위하여 sanitizehtml이라는 라이브러리를 가져와 사용 Node.js-MySQL ,authorlist CRUD 내가 직접 구현한 authorlist CRUD 1.새로운모듈 template.Author(틀) 와 template.TRList(표) 2.author 기본화면 구성 3.create 구성 4.update 구성 *TRList 에서update를 눌렀을때 ?id={queryData.id}로 가게 만들어 각각의 고유 식별자를 주어 그 주소장의 식별자로 값으로 post전송하여 update_process를 만들고 테이블의 각 요소를 하나씩 뽑은 후(select * from author where id=${queryData.id}) placeholder를 만듬 5.delete 구성 *TRList에서 로 각각의 값에 고유한 식별자 id를 주어 delete버튼을 눌러 /delete_process로 post전송해주면 그걸 받.. Node.js-MySQL-module로 정리정돈 moudule사용하여 정리정돈하기 1. lib폴더에 topic.js파일 생성 2. 여러개의 모듈을 밖으로 수출할때 exports.name 사용 *topic.js 파일안에서 코드작성 중 require할때 같은 파일 내에 있는 다른 파일을 가져올때 파일위치 주의 *기존 모듈을 수출받는 파일과 연동을 해야하기때문에 매개변수가 있는 함수를 사용 *log기록으로 에러를 찾아서 순차적으로 코드 보완하기 Node.js-MySQL JOIN 1. 2개의 table을 관계지어서 by name 표시하기 * topic TABLE과 author TABLE 관계짓기 sql문 : SELECT * FROM topic LEFT JOIN author ON topic.author_id = author.id 2. SELECT BOX로 author create 구현 ${tag}에서 name은 select안의 내용이 post방식으로 전송될때 데이터의 이름이고 var ${tag} =○에서 value는 post방식으로 전송된 데이터의 값을 말한다 따라서 ☆에는 sql문으로 가져온 배열속 객체의 방식인 authors TABLE의 id값을 주고 ○에는 name값을 주어 UI에 나타내는것이다 이러한 방식으로 3개의 UI를 만들고 마지막으로 선택한 option의 value .. Node.js-MySQL 1. Node.js에서 MySQL 연동하기 1. npm install --save mysql로 mysql package 설치하기 2. mysql.js 파일 생성후 node.js를 mysql client로써 사용할 수 있게 해주는 module을 불러오는 코드 작성 후 관련 api 코드를 작성하면 기존에 mysql server에 생성해놓았던 database table을 객체의 형식으로 가져올 수 있다 *본질적으로는 아래의 코드만으로 작성가능 connection.query('SELECT * FROM topic', function (error, results) { console.log(results); }); //첫번째 인자는 sql문이 오고 두번째인자는 첫번째 인자의 sql문이 실행된 후에 서버가 응답할 것인.. 이전 1 다음