프로그래밍 538

Node.js 생활코딩 정리 – 첫번째 MYSQL을 이용해서 웹애플리케이션 구현하기

MYSQL을 이용해서 웹애플리케이션 구현 app_mysql.js var express = require('express');//익스프레스를 가져옴 var bodyParser = require('body-parser') var fs = require('fs'); var mysql = require('mysql'); var conn = mysql.createConnection({ host : 'localhost', user : 'root', password : 'qwer1234', database : 'o2', port : 3307 }); conn.connect();//database 접속 완료 var app = express(); var multer = require('multer');//업로드를 위한 m..

Node.js 생활코딩 정리 – node-mysql 사용하기

node-mysql 1 : 접속 node-mysql 설치 database_mysql.js var mysql = require('mysql'); var conn = mysql.createConnection({ host : 'localhost', user : 'root', password : 'qwer1234', database : 'o2', port : 3307 }); conn.connect(); //connection.query('SELECT 1 + 1 AS solution', function(err, rows, fields) { // if (err) throw err; // // console.log('The solution is: ', rows[0].solution); //}); var sql = '..

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..