본인의 이름 "김철수님" 클릭 시,
마이페이지로 이동
1. mypage.php
기본 회원 정보가 출력되며,
이름과 ID는 수정 불가능하게 설정돼 있다.
비밀번호 혹은 이메일 수정 시,
현재 비밀번호를 입력받아 일치한지 체크한다.
<?php
require_once("function/session.php");
?>
<!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, intial-scale=1.0'>
<title>마이페이지</title>
<link rel="stylesheet" href="/css/account.css">
</head>
<body>
<div class="account-form">
<h2>회원정보</h2>
// update.php로 사용자 입력 정보 전송
<form action="update.php" method="post">
// placeholder 속성 & disabled 속성 참고
<p><input type="text" name="name" placeholder="<?=$name?>" class="text-field" disabled></p>
<p><input type="text" name="userid" placeholder="<?=$userid?>" class="text-field" disabled></p>
<p><input type="password" name="currentpw" placeholder="현재 비밀번호" required class="text-field"></p>
<p><input type="password" name="changepw" placeholder="변경할 비밀번호" class="text-field"></p>
<p><input type="text" name="changeemail" placeholder="<?=$email?>" class="text-field"></p>
<p><input type="submit" value="회원정보 수정" class="submit-btn"></p>
</form>
</div>
</body>
</html>
2.update.php
<?php
// 세션 & DB 연결 받아오기
require_once("function/session.php");
// 에러 메시지 출력
error_reporting( E_ALL );
ini_set( "display_errors", 1 );
// 사용자 정보 받아오기
$currentpw = $_POST['currentpw'];
$changepw = $_POST['changepw'];
$changeemail = $_POST['changeemail'];
// 비밀번호 일치 여부 확인
if ($currentpw == $userpw) {
// 비밀번호 수정
if ($changepw) {
$sql = "update users set userpw='$changepw' where userid='$userid'";
mysqli_query($conn, $sql);
}
// 이메일 수정
if ($changeemail) {
$sql = "update users set email='$changeemail' where userid='$userid'";
mysqli_query($conn, $sql);
}
echo "<script>alert('회원정보 수정 성공!');</script>";
echo "<script>location.replace('index.php')</script>";
} else {
echo "<script>alert('비밀번호가 일치하지 않습니다.');</script>";
echo "<script>location.replace('mypage.php')</script>";
}
// DB 연결 종료
mysql_close($conn);
?>
'Web > Develop_PHP+MySQL' 카테고리의 다른 글
웹 사이트 만들기 - 게시판(글쓰기) (0) | 2024.05.13 |
---|---|
JWT 로그인 구현 (0) | 2024.05.10 |
웹 페이지 만들기 - 비밀번호 일치 체크하기 (2) | 2024.04.26 |
DB - PHP 연동 과제 (0) | 2024.04.25 |
웹 사이트 만들기 - ID 중복 처리하기 (0) | 2024.04.24 |