[16. 회원정보 페이지]

Minseok Jo·2025년 9월 12일
post-thumbnail

개발 대상은 [회원정보] 페이지이다.
구성은 다음과 같다.

mypage.php : 회원 정보 출력 페이지
mypage.css : 회원 정보 페이지 CSS


1. Frontend & Backend

<mypage.php>

<?php
    session_start();
    if (!isset($_SESSION["user_id"])) {
        echo "<script>
            alert('권한이 없습니다.');
            history.go(-1);
        </script>";
        exit;
    }

    include "../db/db_con.php";


    $sql = "select * from user where user_id = '{$_SESSION['user_id']}'";
    $result = mysqli_query($con, $sql);
    $row = mysqli_fetch_assoc($result);

    if (empty($row["user_mail"]))
        $user_mail = "이메일 미등록";
    else
        $user_mail = $row["user_mail"];
?>

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>마이페이지</title>
        <link rel="stylesheet" href="../css/mypage.css">
    </head>
    <body>
        <?php include "../include/header.php" ?>
        
        <div class="mypage-container">
            <h2>마이페이지</h2>
            <form class="mypage-form">
                <div class="mypage-row">
                    <label>아이디</label>
                    <input value="<?php echo $row["user_id"]?>" disabled>
                </div>

                <div class="mypage-row">
                    <label>사용자명</label>
                    <input value="<?php echo $row["user_name"]?>" disabled>
                </div>

                <div class="mypage-row">
                    <label>이메일(선택)</label>
                    <input value="<?php echo $user_mail?>" disabled>
                </div>

                <div class="mypage-actions">
                    <input type="button" onclick="location.href='./mypage_edit.php'" value="회원정보 수정">
                </div>
            </form>
        </div>
    </body>
</html>

mypage.php

[1. 회원정보 조회]

  • 1) Session을 통해 사용자 정보 획득:
    세션을 사용하여 로그인시 할당받은 user_id 세션값을 확인한다.
    → 만약 할당된 값이 없다면 비로그인 상태이므로 이전 페이지로 돌아간다.

  • 2) user_id 세션값을 토대로 user 테이블 조회:
    세션에 저장된 user_id값과 테이블에 저장된 user_id값이 일치하는 유저를 조회한다.

[2. 회원정보 출력]

  • row 배열에서 값을 추출하여 페이지에 출력:
    마이페이지에서 출력되는 정보는 아이디, 사용자명, 이메일이다.
    user테이블을 조회한 결과에서 user_id, user_name, user_mail 값을 출력하여 현재 회원정보를 보여준다.

0개의 댓글