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

home2 게시판 Node.js, Express 게시판 댓글 만들기 오류

댓글 만들기 오류

2 글 보임 - 1 에서 2 까지 (총 2 중에서)
  • 글쓴이
  • #64734

    이해욱
    참가자
    server.js
    
    app.get('/detail/:id',로그인했니, function(요청, 응답){
      var id= parseInt(요청.params.id);
      var park= 요청.user[0].user_id;
      var park2=요청.user[0].gp;
      var admin='admin'
      var kim = false;
      var sql = 'SELECT * FROM post INNER JOIN comment ON post.id=comment.cnumber INNER JOIN login ON login.id=post.numberid WHERE post.id=?';
      connection.query(sql,[id],function(err,topcis){
        if (topcis.length == 0)
        {
          응답.render('detail.ejs', {posts: topcis,came: id});
        }
        else
        {
          var sql2= 'UPDATE post INNER JOIN login ON login.id=post.numberid SET hit=hit+1 WHERE post.id=?';
          connection.query(sql2,[id],function(err,topcis2){
            if(err)
            {
              console.log(err);
              응답.status(500).send('Internal Server Error');
            }
            else
            {
              if(topcis[0].user_id==park || park2==admin)
              {
                kim=true;
              }
              else if(topcis[0].user_id!=park)
              {
                kim=false;
              }
              
          
              응답.render('detail.ejs', {posts: topcis,kim: kim,came: id});
            }
          })
        }
      })
    })
    app.get('/list/:page', function(req, res, next){ 
      var page = req.params.page; // :page 로 맵핑할 req 값을 가져온다
      var lastdate = moment().format('YYYY-MM-DD hh:mm:ss');
      var newdate = moment().format('YYYY-MM-DD hh:mm:ss');
      var sql = "SELECT post.id, login.user_id, title,post.lastdate, " +   
      "post.newdate ,hit FROM login INNER JOIN post ON login.id=post.numberid order by post.id desc";
      connection.query(sql,function(err,rows){
        if(err)
        {
          console.log(err);
          res.status(500).send('Internal Server Error');
        }
        else
        {
          res.render('page', {title : '공지사항', posts:rows, page:page, length:rows.length-1, page_num:10, pass:true});
          console.log(rows.length-1);
        }
      })
    });
    detail.ejs
    <dt>글쓴이</dt>
                                    <dd class="user_id"><%= posts[0].user_id %></dd>
                                </dl>
                                <dl>
                                    <dt>작성일</dt>
                                    <dd class="lastdate"><%= posts[0].lastdate %></dd>
                                </dl>
                                <dl>
                                    <dt>조회</dt>
                                    <dd><%= posts[0].hit %></dd>
                                </dl>
                            </div>
                            <div class="cont">
                                <%= posts[0].content %>
    
    list.ejs
    <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="lastdate"><%= posts[i].lastdate %></div>
                                <div class="count"><%= posts[i].hit %></div>
                                <% } %>
    
    
    ERR
    TypeError: C:\Users\atolo\Desktop\server\node\views\detail.ejs:31
        29|                     <div class="board_view">
        30|                         <div class="title2">
     >> 31|                             <%= posts[0].title %>
        32|                         </div>
        33|                         <div class="info">
        34|                             <dl>
    Cannot read properties of undefined (reading 'title')
    
    
    list에서 게시물이 없을경우는 그냥 posts 값 없으면 걍 아무것도 출력 안되는데
    여기선 posts값 이 없으면 값을 못찾는다고합니다
    ㅠㅠ
     
    #64757

    codingapple
    키 마스터
    ejs파일 보내기 전에 topcis 부터 잘 나오나 출력해봅시다
2 글 보임 - 1 에서 2 까지 (총 2 중에서)
  • 답변은 로그인 후 가능합니다.

About

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

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

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