프로그래밍 536

Node.js 생활코딩 정리 – MYSQL 데이터베이스 사용법

MYSQL 데이터베이스 사용법 mysql 실행 비트나미 설치 경로\mysql\bin에서 mysql-uroot –p 를 치면 비번을 넣으라고 나옴 비번 치면 접속 완료 ./mysql –hlocalhost –P3306 –uroot -p 위와 같이 해도됨 -h는 mysql 서버명 명시 –P는 3306 포트를 의미함 데이터베이스 생성하기 CREATE DATABASE o2 CHARACTER SET utf8 COLLATE utf8_general_ci; show databases로 데이터베이스 생성 확인 use o2 //o2라는 이름의 데이터베이스를 사용함 show tables로 테이블이 제대로 생성된 것을 볼 수 있음. 데이터 삽입 INSERT INTO topic (title, description, author)..

Node.js 생활코딩 정리 - 파일업로드 준비

파일업로드 준비 multer라는 모듈을 설치해보자 npm install –save multer 파일업로드 2: 업로드 폼 jade 파일에서 form을 지정할 때 enctype="multipart/form-data"를 반드시 유의하자(파일업로드시에는 필요) var express = require('express');//익스프레스를 가져옴 var bodyParser = require('body-parser') var fs = require('fs'); var app = express(); var multer = require('multer');//업로드를 위한 multer를 가져옴 var upload = multer({dest: 'uploads/'});//uploads라는 폴더가 업로드 폴더임 app.use..

Node.js 생활코딩 정리 - 웹앱 제작 코드 개선하기

웹앱 제작 6 : 코드의 개선 1. 라우팅 중복의 제거 방법 : 글목록 표시 부분 2. 글작성하기를 좀 더 세련되게 표현 3. 글작성후 redirect를 통해 바로 쓴 글로 이동 var express = require('express');//익스프레스를 가져옴 var bodyParser = require('body-parser') var fs = require('fs'); var app = express(); app.use(bodyParser.urlencoded({ extended: false }));//body parser를 사용함 app.locals.pretty = true;//템플릿 줄바꿈 app.set('views', './views_file');//템플릿 폴더 위치 표시 app.set('view..

Node.js 생활코딩 정리 – 웹앱 제작 파일로 된 본문 읽기

웹앱 제작5 : 파일로 된 본문 읽기 //글을 클릭했을때 옴 app.get('/topic/:id', function(req, res){ var id = req.params.id;//id로 접근을 함 //다음부분은 topics:files때문에 그런것임 fs.readdir('data', function(err, files){//첫번째는 에러 두번째는 파일목록을 전송받음 if(err){//에러가 있다면 여기서 처리 res.status(500).send('Internal Server Error'); } fs.readFile('data/'+id, 'utf8', function(err, data){ if(err){//에러가 있다면 여기서 처리 res.status(500).send('Internal Server Er..

Node.js 생활코딩 정리 – 웹 앱제작 글목록 만들기

웹앱 제작4 : 글 목록 만들기 jade template 엔진에서 Iteration 사용법을 알아야 글목록을 출력 할 수 있다. app_file.js에서 추가한 내용 //글목록을 표시 app.get('/topic', function(req, res){ fs.readdir('data', function(err, files){//첫번째는 에러 두번째는 파일목록을 전송받음 if(err){//에러가 있다면 여기서 처리 res.status(500).send('Internal Server Error'); } res.render('view', {topics:files});//템플릿 사용 topics라는 이름으로 files를 넘김 }); }); 여기서 topics라는 이름으로 files를 넘겨준다. files는 다음 ..

Node.js 생활코딩 정리 – 웹애플리케이션 제작 첫번째 라우팅 및 파일 생성

웹애플리케이션 제작 topic/new로 접속시 폼 출력함 첫 라우팅 하기 소스 app_file.js var express = require('express');//익스프레스를 가져옴 var app = express(); var url app.locals.pretty = true;//템플릿 줄바꿈 app.set('views', './views_file');//템플릿 폴더 위치 표시 app.set('view engine', 'jade');//템플릿 엔진을 jade로 명시함 //글작성하기 폼 app.get('/topic/new', function(req, res){ res.render('new'); }); //폼에서 작성한 것을 여기서 받음 app.post('/topic', function(req, res){..

Node.js 생활코딩 정리 - POST방식을 이용한 정보의 전달

POST 방식을 이용한 정보의 전달 app.js 파일 추가후 //POST를 위한 예제 app.get('/form', function(req, res){ res.render('form'); }); app.get('/form_receiver', function(req, res){ var title = req.query.title; var description = req.query.description; res.send(title+','+description); }); form.jade 파일 doctype html html head meta(charset='utf-8') body form(action='/form_receiver' method='post') p input(type='text' name='tit..

Node.js 생활코딩 정리 - Express프레임워크 템플릿 엔진(Jade 또는 pug) 사용 방법

왼쪽화면을 오른쪽의 소스로 만들수 있는 것이 템플릿 엔진이다. (즉 for문 사용가능) 이제 jade가 pug으로 이름이 바뀜 var express = require('express'); var app = express(); app.locals.pretty = true;//jade에서 자동 줄바꿈해줌 //view engine은 템플릿 엔진이라는 의미 jade와 express를 연결하는 코드임 app.set('view engine', 'jade'); app.set('views', './views');//views라는 폴더를 만들고 jade파일을 여기에 넣어야함 app.use(express.static('public'));//public 폴더를 정적으로 변환 //템플릿 엔진을 쓰면 send가 아닌 rende..

반응형