테스트 사이트 - 개발 중인 베타 버전입니다

회원(유저) 신청 게시판 채택완료

한시오십분 1년 전 조회 1,571

이용권 게시판을 만들고 

이용권들을 하나의 게시글 형태로 만들었을 때,

유저들이 해당 게시글(이용권)을 클릭해서 본인 정보를 남기면

그 정보를 관리자에서 확인하고 싶습니다 

 

혹시 해당 기능 구현하는 방법이 있을까요?? 제가 생각한건,

이용권게시판 / 회원신청 게시판을 각각 만들고

이용권 게시판 목록에서 이용권 선택시 회원 신청 게시판 write 페이지로 

이동해서 정보를 남기는건데요

이렇게 되면 회원신청 게시판의 db을 관리자에서 출력만 하면 되는데,

문제는 이 회원이 선택한 이용권게시판의 게시글이 어떤건지 가져오는 방법을 모르겠습니다

 

이 외에 다른 방법이 있을까요 ㅠㅠ 한 게시판 내에서 모두 처리하는게 편하긴 합니다..

댓글을 작성하려면 로그인이 필요합니다.

답변 4개

채택된 답변
+20 포인트
glitter0gim
1년 전

♠ 전체적인 개요;

  - DB 설정

  - 게시글 페이지 작성

  - 게시글 목록 페이지

  - 신청정보 입력 체이지

  - 신챵정보 저장 처리

  - 확인 검토 페이지

  - 승인 처리 페이지

 

※ 게시판에 이용권(ex, 2개) 게시글을 생성하고,

사용자가 해당 이용권을 클릭하여 요청 정보를 입력한 후,

관리자가 이를 확인하고 승인하는 coding ~~

 

- write_update.php를 만들어, 게시판에 이용권 게시글 작성_load.

- 각 게시글은 제목, 내용 필드로 이용권 정보 저장.

- 이용권 크릭 > 사용자 정보 form 게시

  > write_comment_update.php를 참고하여 요청양식 파일 추가.

    - 기존의 write.php에 추가할 수도 있음

 

- DB에 테이블(구조) 만들기

</p>

<p>CREATE TABLE board (

    id INT AUTO_INCREMENT PRIMARY KEY,

    wr_subject VARCHAR(255) NOT NULL,

    wr_content TEXT NOT NULL,

    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP

);</p>

<p>

 

두 개의 이용권 게시글 작성

write.php

</p>

<p><?php

include_once('../lib/connect.lib.php'); 

if ($_SERVER['REQUEST_METHOD'] === 'POST') {

    $wr_subject = $_POST['wr_subject'];

    $wr_content = $_POST['wr_content'];

    $sql = "INSERT INTO board (wr_subject, wr_content) VALUES ('$wr_subject', '$wr_content')";

    mysqli_query($conn, $sql);</p>

<p>    echo "이용권 게시글 작성.";

} else {

?>

<!DOCTYPE html>

<html lang="ko">

<head>

    <meta charset="UTF-8">

    <title>이용권 게시글 작성</title>

</head>

<body>

    <h1>이용권 게시글 작성</h1>

    <form action="write.php" method="post">

        <label for="wr_subject">이용권 제목:</label>

        <input type="text" id="wr_subject" name="wr_subject" required>

</p>

<p>        <label for="wr_content">이용권 설명:</label>

        <textarea id="wr_content" name="wr_content" rows="4" cols="50" required></textarea>

</p>

<p>        <button type="submit">게시글 작성</button>

    </form>

</body>

</html></p>

<p>

  > 게시글을 저장할 DB 테이블이 필요 < 테이블을 먼저 만듬.

 

- connect.lib.php

</p>

<p><?php

$host = "localhost"; 

$user = "db_user";   

$password = "db_pass"; 

$database = "database_name"; </p>

<p>$conn = mysqli_connect($host, $user, $password, $database);</p>

<p>if (!$conn) {

    die("DB 연결 실패: " . mysqli_connect_error());

}</p>

<p>

  >> write.php에서 connect.lib.php 파일을 통해 데이터베이스 연결

 

- 요청 양식이 제출되면 해당 정보를 받아 DB에 저장

</p>

<p><?php

include_once('../lib/connect.lib.php');

$user_name = $_POST['user_name'];

$user_email = $_POST['user_email'];

$ticket_id = $_POST['ticket_id'];

$sql = "INSERT INTO requests (user_name, user_email, ticket_id, status) VALUES ('$user_name', '$user_email', '$ticket_id', 'pending')";

mysqli_query($conn, $sql);

echo "이용 요청 완료.";</p>

<p>

 

- 확인 / 승인할 페이지 >  adm폴더에 생성

adm/request_list.php (확인)

</p>

<p><?php

include_once('../lib/connect.lib.php');

$sql = "SELECT * FROM requests WHERE status = 'pending'";

$result = mysqli_query($conn, $sql);

while($row = mysqli_fetch_assoc($result)) {

    echo "<div>";

    echo "<p>사용자: " . $row['user_name'] . "</p>";

    echo "<p>이메일: " . $row['user_email'] . "</p>";

    echo "<p>이용권 ID: " . $row['ticket_id'] . "</p>";

    echo "<a href='request_approve.php?id=" . $row['id'] . "'>승인</a>";

    echo "</div>";

}</p>

<p>

 

adm/request_approve.php (승인)

</p>

<p><?php

include_once('../lib/connect.lib.php');

$request_id = $_GET['id'];

$sql = "UPDATE requests SET status = 'approved' WHERE id = $request_id";

mysqli_query($conn, $sql);

header('Location: request_list.php');</p>

<p>

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

12개월 전

당연히 선택했을때도 DB 에 남겨야죠....

선택했을때 이전 게시판의 보드ID 와 wr_id 도 넘겨서 GET 으로 등록하면됩니다.

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

12개월 전
로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

12개월 전

정말 소중한 답변 드릴려고 5번 읽어봤는데 이해가 어렵네요...

조금 쉽게 설명 해주실 수는 없을지요 ?

아예 이해가 안갑니다.

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인