-
(기능추가4-4) 댓글기능 구현프로젝트/프로젝트_사진첩 2023. 9. 12. 00:59
<추가사항>
image_display.php : 댓글 입력창과 출력창 구현
$sql2 = "SELECT * FROM comment WHERE image_id={$filtered_id}";$result2 = mysqli_query($conn, $sql2);while ($row = mysqli_fetch_array($result2)){$escaped_comment = htmlspecialchars($row['comment']);$comment_list = $comment_list."<li>{$escaped_comment}</li>"; //댓글을 리스트로 표현}<div class="chatLayout"> //댓글입력창과 출력창 구현<ol><?=$comment_list?></ol></div><div class="chatInputLayout"><form action="process_comment_create.php" method="post"><input type="hidden" name="image_id" value="<?=$_GET['id']?>"><input type="text" id="comment" name="comment" placeholder="댓글을 입력하세요."><input type="submit" id="submit" value="남기기"></form></div>process_comment_create.php : 댓글을 DB로 전송하여 추가
<?php$conn=mysqli_connect("localhost:81","root","password","project_memories");$filtered = array('image_id'=>mysqli_real_escape_string($conn, $_POST['image_id']),'comment'=>mysqli_real_escape_string($conn, $_POST['comment']),);
$sql = "INSERT INTO comment(comment, created, image_id)VALUES('{$filtered['comment']}',NOW(),'{$filtered['image_id']}')";
$result = mysqli_query($conn, $sql);if($result == false){echo "저장하는 과정에서 문제가 생겼읍니다.";error_log(mysqli_error($conn));} else {header("Location: image_display230906.php?id=".$filtered['image_id']);}?><느낀점>
-댓글 테이블에 대해 어떤식으로 구성할까 고민햇는데, image 테이블의 id를 1대 다 형식으로 연결하여 구현했음.
처음에는 image 테이블에서 id값에 따라 각각의 테이블을 만들까도 생각했는데, 그렇게 한다면 테이블이 너무 많아져 힘들어질거 같아서 테이블 한개로 모든 comment를 관리하기로 했음
comment 테이블 초기 기획안 -생활코딩에서 활용했던 코드들을 가져다가 수정하면서 사용하니 금방 만들었음. 코드에 대해 잘 이해하고 잘 가져다 쓰고 잘 고치는 능력이 중요한것 같음.
<결과물>
댓글 입력창과 출력창 구현 '프로젝트 > 프로젝트_사진첩' 카테고리의 다른 글
(기능추가4-6) 댓글삭제기능 구현(백엔드) (0) 2023.09.17 (기능추가4-5) 댓글삭제기능 구현(프론트) (0) 2023.09.13 (기능추가4-3) 작성자 테이블 구축, 양식초기화, select 태그 (0) 2023.09.09 (기능추가4-2) 상세페이지 내용 DB에서 불러오기 (0) 2023.09.09 (기능추가4-1)상세팝업 레이아웃 구현하기 (0) 2023.09.06