• 로그인
  • 장바구니에 상품이 없습니다.

home2 게시판 Node.js, Express 게시판 날짜를 받는 moment 라이브러리를 사용하는데

날짜를 받는 moment 라이브러리를 사용하는데

10 글 보임 - 1 에서 10 까지 (총 25 중에서)
  • 글쓴이
  • #61487

    이해욱
    참가자
    server.js
    app.post('/add', 로그인했니, function(req, res){
      var sql2= 'SELECT * FROM login INNER JOIN post ON login.id=post.numberid';
      connection.query(sql2, function(err, result2){
        var title = req.body.title;
        var content = req.body.content;
        var numberid = req.user[0].id;
        var lastdate = moment().format("YYYY/MM/DD hh:mm ");
        var newdate = moment().format("YYYY/MM/DD hh:mm ");
        var sql = 'INSERT INTO post (title, content, numberid, lastdate, newdate) VALUES(?, ?, ?, ?, ?)';
        connection.query(sql, [title, content, numberid, lastdate, newdate], function(err, result){
          if(err)
          {
            console.log(err);
            res.status(500).send('Internal Server Error');
          }
          else
          {
            var sql = 'UPDATE count SET totalpost = totalpost +1';
            connection.query(sql,function(err,good){
            if(err)
            {
              console.log(err);
              res.status(500).send('Internal Server Error');
            }
            else
            {
              res.render('index.ejs',{posts : result2[0]});
            }
          })
          }
        })
      })
    })
    에러
    sqlMessage: "Unknown column 'lastdate' in 'field list'",
      sql: "INSERT INTO post (title, content, numberid, lastdate, newdate)
     VALUES('test', 'test', 4, '2023/01/07 02:20 ', '2023/01/07 02:20 ')"
    
    lastdate newdate 타입은 DATE,DATETIME 둘다 해도 에러뜨네요
    
    
    #61519

    codingapple
    키 마스터
    초단위까지 저장합시다
    #61526

    이해욱
    참가자
    sqlMessage: "Unknown column 'lastdate' in 'field list'",
      sql: "INSERT INTO post (title, content, numberid, lastdate, newdate) VALUES('ll', 'pp', 5, '2023/01/07 06:19:01', '2023/01/07 06:19:01')"
    }
    
    데이더 타입은 DATETIME 으로 했는데도 오류뜹니다
    #61540

    이해욱
    참가자
    app.post('/add', 로그인했니, function(req, res){
      var sql2= 'SELECT * FROM login INNER JOIN post ON login.id=post.numberid';
      connection.query(sql2, function(err, result2){
        var title = req.body.title;
        var content = req.body.content;
        var numberid = req.user[0].id;
        var lastdate = moment().format("YYYY/MM/DD hh:mm:ss");
        var newdate = moment().format("YYYY/MM/DD hh:mm:ss");
        var sql = 'INSERT INTO post (title, content, numberid, lastdate, newdate) VALUES(?, ?, ?, ?, ?)';
        connection.query(sql, [title, content, numberid, lastdate, newdate], function(err, result){
          if(err)
          {
            console.log(err);
            res.status(500).send('Internal Server Error');
          }
          else
          {
            var sql = 'UPDATE count SET totalpost = totalpost +1';
            connection.query(sql,function(err,good){
            if(err)
            {
              console.log(err);
              res.status(500).send('Internal Server Error');
            }
            else
            {
              res.render('index.ejs',{posts : result2[0]});
            }
          })
          }
        })
      })
    })
    
    
    sqlMessage: "Unknown column 'lastdate' in 'field list'",
      sql: "INSERT INTO post (title, content, numberid, lastdate, newdate) VALUES('ll', 'pp', 5, '2023/01/07 06:19:01', '2023/01/07 06:19:01')"
    }
    시 분 초 까지 입력 받았는데 안되네요 데이더 타입은 DATETIME 으로 했는데도 오류뜹니다
    #61579

    codingapple
    키 마스터
    datetime은 YYYY-MM-DD hh:mm:ss 형식입니다
    #61595

    이해욱
    참가자
    server.js
    app.post('/add', 로그인했니, function(req, res){
      var sql2= 'SELECT * FROM login INNER JOIN post ON login.id=post.numberid';
      connection.query(sql2, function(err, result2){
        var title = req.body.title;
        var content = req.body.content;
        var numberid = req.user[0].id;
        var lastdate = moment().format("YYYY-MM-DD hh:mm:ss");
        var newdate = moment().format("YYYY-MM-DD hh:mm:ss");
        var sql = 'INSERT INTO post (title, content, numberid, lastdate,newdate) VALUES(?, ?, ?, ?, ?)';
        connection.query(sql, [title, content, numberid, lastdate, newdate], function(err, result){
          if(err)
          {
            console.log(err);
            res.status(500).send('Internal Server Error');
          }
          else
          {
            var sql = 'UPDATE count SET totalpost = totalpost +1';
            connection.query(sql,function(err,good){
            if(err)
            {
              console.log(err);
              res.status(500).send('Internal Server Error');
            }
            else
            {
              res.render('index.ejs',{posts : result2[0]});
            }
          })
          }
        })
      })
    })
    
    에러
    code: 'ER_BAD_FIELD_ERROR',
      errno: 1054,
      sqlState: '42S22',
      sqlMessage: "Unknown column 'lastdate' in 'field list'",
      sql: "INSERT INTO post (title, content, numberid, lastdate,newdate) VALUES('kk', 'kk', 9, '2023-01-08 12:52:38', '2023-01-08 12:52:38')"
    }
    
    그래도 에러뜹니다 ㅠㅠ
    #61686

    codingapple
    키 마스터
    문제되는 테이블에 lastdate라는 컬럼명이 없다는 소리같습니다
    #61695

    이해욱
    참가자
     var lastdate = moment().format('YYYY-MM-DD');
     var newdate = moment().format('YYYY-MM-DD');
        
    
    로 해서 오늘 날짜를 구하고
    db에  DATE 타입으로 저장을했습니다
    
    예를들어 지금 시간이 2023-01-08이면  2023-01-08로 저장이 됬는데
    
    출력할떄는 
    
    
    
    이렇게 떠서 안이쁜데 moment  직접홈페이지 가서 봤는데
    아무리 해도 저렇게뜨네요 
    db에도 2023-01-08로저장으로 되는데 
    뜰떄만 저렇게 뜹니다
    포맷설정 다 해봣는데도 무슨짓을해도 저렇게 뜹니다
    #61727

    codingapple
    키 마스터
    출력만 잘 되면 상관없고 자바스크립트로 년월일만 뽑는 문법쓰면 됩니다
    #61795

    이해욱
    참가자
    <script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.24.0/moment.min.js"></script>
    
                               <div class="line">
                                <input value="<%= posts.id %>" name="id" style="display : none;">
                                <% for(var i=0; i < posts.length; i++) { %>
                                <div class="num"><%= posts[i].id %></div>
                                <div class="title">"><%= posts[i].title %></div>
                                <div class="writer"><%= posts[i].user_id %></div>
                                <div class="date"><%= posts[i].lastdate %></div>
                                <div class="count">33</div>
                                <% } %>
                            </div>
        <script>
        $('.date').html(moment(posts[i].lastdate).format('YYYY-MM-DD hh:mm:ss'));
        </script>
    
      흠 자바스크립트로 어떻게 변환할수있을까요 반복문떄문에 저 값을 못받아드릴텐데
    자바스크립트로 년 월 일 만 나오게어떻게하죠?ㅠㅠ
10 글 보임 - 1 에서 10 까지 (총 25 중에서)
  • 답변은 로그인 후 가능합니다.

About

현재 월 700명 신규수강중입니다.

  (09:00~20:00) 빠른 상담은 카톡 플러스친구 코딩애플 (링크)
  admin@codingapple.com
  이용약관
ⓒ Codingapple, 강의 예제, 영상 복제 금지
top

© Codingapple, All rights reserved. 슈퍼로켓 에듀케이션 / 서울특별시 강동구 고덕로 19길 30 / 사업자등록번호 : 212-26-14752 온라인 교육학원업 / 통신판매업신고번호 : 제 2017-서울강동-0002 호 / 개인정보관리자 : 박종흠