클릭
버튼을 클릭하면 명언이 나와요
-이름이 나와요
최종 완성된 모습
저번에 HTML로 만든 게시판을 학원에서 PHP로 바꾸어서
글쓰기, 수정하기, 삭제하기로 만들었습니다.
그리고 다시 미션이 주어졌네요
1.게시판 글을 클릭하면 id값 가져올 것
2. 확인 / 취소 버튼 중에서 취소버튼 클릭시 아무일도 일어나지 않아야 함.
3.수정하기 버튼을 클릭할떄 해당하는 유저여야 할 것
4.수정하기 버튼을 클릭할떄 쓴사람==비밀번호가 같아야 함
(저는 실력이 후달려서 3번이 끝이네요.)
PHP게시판 코드
<?php
include "../connect/connect.php";
include "../connect/session.php";
if($_SESSION['memberID']){
}
else {
// alert("로그인을 하신 후 글을 수정해주세요.^~^");
echo "<script>alert('로그인을 하신 후 글을 수정해주세요.^~^');</script>";
echo "<script>location.href='../login/login.php'</script>";
}
?>
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>게시판 만들기</title>
<?php include "../include/head.php" ?>
<!-- //head -->
</head>
<body class="gray">
<?php include "../include/skip.php" ?>
<!-- //skip -->
<?php include "../include/header.php" ?>
<!-- header -->
<main id="main" class="container">
<div class="intro__inner bmStyle center">
<picture class="intro__images small">
<source srcset="../assets/img/intro01.png, ../assets/img/intro01@2x.png 2x, ../assets/img/intro01@3x.png 3x" />
<img src="../assets/img/intro01.png" alt="소개이미지">
</picture>
<h2>게시글 수정 하기</h2>
<p class="intro__text">
웹디자이너, 웹퍼블리셔, 프론트엔드 개발자를 위한 게시판입니다.<br>
관련된 문의사항은 여기서 확인하세요!
</p>
</div>
<div class="board__inner">
<div class="board__write">
<form action="boardModifySave.php" name="boardWriteSave" method="post">
<fieldset>
<legend class="blind">게시글 작성하기</legend>
<?php
// $boardID = $_GET['boardID'];
// $sql = "SELECT boardID, boardTitle, boardContents, FROM board WHERE boardID = {$boardID}";
// $result = $connect -> query($sql);
// if($result){
// $info = $result -> fetch_array(MYSQLI_ASSOC);
// echo "<div style='display:none'><label for='boardTitle'>번호</label><input type='text' id='boardID' name='boardTitle' class='inputStyle' value='".$info['boardID']."'></div>";
// echo "<div><label for='boardTitle'>제목</label><input type='text' id='boardTitle' name='boardTitle' class='inputStyle' value='".$info['boardTitle']."'></div>";
// // echo "<div><label for='boardContents'>내용</label><textarea name='boardContents' id='boardContents' rows='20' class='inputStyle'>".$info['boardContents']."</textarea></div>";
// echo "<div><label for='boardContents'>내용</label><textarea name='boardContents' id='boardContents' rows='20' class='inputStyle'>".$info['boardContents']."</textarea></div>";
// }
$boardID = $_GET['boardID'];
$sql = "SELECT boardID, boardTitle, boardContents FROM board WHERE boardID = {$boardID}";
$result = $connect -> query($sql);
if($result){
$info = $result -> fetch_array(MYSQLI_ASSOC);
echo "<div style='display:none'><label for='boardID'>번호</label><input type='text' id='boardID' name='boardID' class='inputStyle' value='".$info['boardID']."'></div>";
echo "<div><label for='boardTitle'>제목</label><input type='text' id='boardTitle' name='boardTitle' class='inputStyle' value='".$info['boardTitle']."'></div>";
echo "<div><label for='boardContents'>내용</label><textarea name='boardContents' id='boardContents' rows='20' class='inputStyle'>".$info['boardContents']."</textarea></div>";
}
?>
<!-- <div>
<label for="boardTitle">제목</label>
<input type="text" class="inputStyle" id="boardTitle" name="boardTitle" >
</div>
<div>
<label for="boardContents">내용</label>
<textarea name="boardContents" class="inputStyle" id="boardContents" rows="20"></textarea>
</div> -->
<button type="submit" class="btnStyle3">저장하기</button>
</fieldset>
</form>
</div>
</div>
</main>
<!-- //main -->
<?php include "../include/footer.php"?>
코드 설명
1.
if($_SESSION['memberID']) {}
else {
// alert("로그인을 하신 후 글을 수정해주세요.^~^");
echo "<script>alert('로그인을 하신 후 글을 수정해주세요.^~^');</script>";
echo "<script>location.href='../login/login.php'</script>";
}
- if($_SESSION['memberID']){} 는 세션에 저장된 아이디 값을 불러옵니다.
- (아이디가 있으면 로그인이 된거기 떄문에 냅둡니다.~_~)
- 2. 세션에 저장된 값이 없으면 로그인이 안된거기 때문에 alert()창을 띄우고 로그인 페이지로 이동시켜 버립니다.
로그인 안했을 떄
로그인 했을때
2.
<main id="main" class="container">
<div class="intro__inner bmStyle center">
<picture class="intro__images small">
<source srcset="../assets/img/intro01.png, ../assets/img/intro01@2x.png 2x, ../assets/img/intro01@3x.png 3x" />
<img src="../assets/img/intro01.png" alt="소개이미지">
</picture>
<h2>게시글 수정 하기</h2>
<p class="intro__text">
웹디자이너, 웹퍼블리셔, 프론트엔드 개발자를 위한 게시판입니다.<br>
관련된 문의사항은 여기서 확인하세요!
</p>
</div>
<div class="board__inner">
<div class="board__write">
<form action="boardModifySave.php" name="boardWriteSave" method="post">
<fieldset>
<legend class="blind">게시글 작성하기</legend>
이 부분은 게시글에 작성에 필요한 input을 생성할 곳입니다.
근데 form태그 부분이 짤렸죠
php로 작성하기 위해서 짤렸네요
3.
<?php
$boardID = $_GET['boardID'];
$sql = "SELECT boardID, boardTitle, boardContents FROM board WHERE boardID = {$boardID}";
$result = $connect -> query($sql);
if($result){
$info = $result -> fetch_array(MYSQLI_ASSOC);
echo "<div style='display:none'><label for='boardID'>번호</label><input type='text' id='boardID' name='boardID' class='inputStyle' value='".$info['boardID']."'></div>";
echo "<div><label for='boardTitle'>제목</label><input type='text' id='boardTitle' name='boardTitle' class='inputStyle' value='".$info['boardTitle']."'></div>";
echo "<div><label for='boardContents'>내용</label><textarea name='boardContents' id='boardContents' rows='20' class='inputStyle'>".$info['boardContents']."</textarea></div>";
}
?>
<!-- <div>
<label for="boardTitle">제목</label>
<input type="text" class="inputStyle" id="boardTitle" name="boardTitle" >
</div>
<div>
<label for="boardContents">내용</label>
<textarea name="boardContents" class="inputStyle" id="boardContents" rows="20"></textarea>
</div> -->
<button type="submit" class="btnStyle3">저장하기</button>
</fieldset>
</form>
</div>
</div>
</main>
<!-- //main -->
<?php include "../include/footer.php"?>
POST방식인 $_GET으로 전달된 값을 받습니다.
그리고 query문으로 데이터베이스에 "SELECT"문을 넣어줍니다.
그리고 input과 label태그를 화면에 뿌려줍니다.
4.
<a href="boardModift.php?boardID=<?=$_GET['boardID'] ?>" class="btnStyle3">수정하기</a>
<a href="boardRemove.php?boardID=<?=$_GET['boardID'] ?>" class="btnStyle3" onclick="return confirm('정말 삭제할거야?')">삭제하기</a>
<a href="board.php" class="btnStyle3">목록보기</a>
onclick="return confirm()"은 삭제 버튼 클릭시 아무일도 일어나지 않게 작성하였습니다.

오늘도 PHP가 끝났네요..
많이 복습하니 눈에 들어오기 시작하네요. 신기해요~