일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- sql
- 소켓
- 웹
- 자바 Array list
- 쿠키
- 서버
- lord of sqlinjection`
- sqlinjection
- 자바
- 세션
- 웹 개발
- php
- 자바 is-a
- lord of sqlinjectin
- 마이크로서비스 아키택트
- XSS
- 보안
- injection
- 자바 has-a
- 해킹
- 스프링구조
- Los
- 세션쿠키
- 자바 문법
- 스프링 특징
- 스프링
- Lord of sqlinjection
- APM
- 스프링 종류
- 클라이언트
- Today
- Total
LJ
웹 개발 (2) 로그인 환경 본문
소수분류 | 파일명 | 기능 |
PHP | dbconn.php | 데이터베이스 연결 페이지 |
function.php | 함수 라이브러리 페이지 | |
login.php | 로그인 페이지 | |
login_check.php | 로그인 처리 페이지 | |
logout.php | 로그아웃 처리 페이지 | |
register.php | 회원가입 페이지 | |
register_update.php | 회원가입 처리 페이지 | |
register_update_mail.php | 회원가입 인증 메일 전송 페이지 | |
email_certify.php | 매일인증 처리 페이지 | |
기타 | style.css | 스타일 시트 파일 |
PHPMailer(폴더) | 매일 전송 라이브러리 |
앞으로 전개될 회원가입 및 로그인 , 쪽지프로그램은 PHP와 데이터베이스 MySQL을 연결하기 위한 dbconn.php파일과 함수들을 모아 놓은 function.php 파일이 반드시 필요합니다.
먼저 프로그래밍에 앞서 필요한 데이터베이스 테이블을 만들어 보도록 하겠습니다.
회원가입에 필요한 테이블은 정보가 저장이 되는 회원테이블입니다.
dbconn.php
function.php
<?php
include_once('./PHPMailer/PHPMailerAutoload.php');
function mailer($fname, $fmail, $to, $subject, $content)
{
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->SMTPSecure = "ssl";
$mail->SMTPAuth = true;
$mail->Host = "smtp.naver.com";
$mail->Post = 465;
$mail->Username = "jejunli@naver.com";
$mail->Password = "dhwlrwnaks@2";
$mail->CharSet = 'UTF-8';
$mail->From = $fmail;
$mail->FromName = $fname;
$mail->Subject = $subject;
$mail->msgHTML($content);
$mail->addAddress($to);
return $mail->send();
}
?>
login.php
<?php
include("./dbconn.php"); // DB연결을 위한 같은 경로의 dbconn.php를 인클루드합니다.
?>
<html>
<head>
<title>Login</title>
<link href="./style.css" rel="stylesheet" type="text/css">
</head>
<body>
<?php if(!isset($_SESSION['ss_mb_id'])) { // 로그인 세션이 있을 경우 로그인 화면 ?>
<h1>로그인</h1>
<form action="./login_check.php" method="post">
<table>
<tr>
<th>아이디</th>
<td><input type="text" name="mb_id"></td>
</tr>
<tr>
<th>비밀번호</th>
<td><input type="password" name="mb_password"></td>
</tr>
<tr>
<td colspan="2" class="td_center">
<input type="submit" value="로그인">
<a href="./register.php">회원가입</a>
</td>
</tr>
</table>
</form>
<?php } else { // 로그인 세션이 없을 경우 로그인 완료 화면 ?>
<h1>로그인을 환영합니다.</h1>
<?php
$mb_id = $_SESSION['ss_mb_id'];
$sql = " select * from member where mb_id = TRIM('$mb_id') ";
$result = mysqli_query($conn, $sql);
$mb = mysqli_fetch_assoc($result);
mysqli_close($conn); // 데이터베이스 접속 종료
?>
<table>
<tr>
<th>아이디</th>
<td><?php echo $mb['mb_id'] ?></td>
</tr>
<tr>
<th>이름</th>
<td><?php echo $mb['mb_name'] ?></td>
</tr>
<tr>
<th>이메일</th>
<td><?php echo $mb['mb_email'] ?></td>
</tr>
<tr>
<th>성별</th>
<td><?php echo $mb['mb_gender'] ?></td>
</tr>
<tr>
<th>직업</th>
<td><?php echo $mb['mb_job'] ?></td>
</tr>
<tr>
<th>관심언어</th>
<td><?php echo $mb['mb_language'] ?></td>
</tr>
<tr>
<th>이메일인증일</th>
<td><?php echo $mb['mb_email_certify'] ?></td>
</tr>
<tr>
<th>회원가입일</th>
<td><?php echo $mb['mb_datetime'] ?></td>
</tr>
<tr>
<th>회원정보 수정일</th>
<td><?php echo $mb['mb_modify_datetime'] ?></td>
</tr>
<tr>
<td colspan="2" class="td_center">
<a href="./register.php?mode=modify">회원정보수정</a>
<a href="./logout.php">로그아웃</a>
</td>
</tr>
</table>
<?php } ?>
</body>
</html>
login_check.php
<?php
include("./dbconn.php"); // DB연결을 위한 같은 경로의 dbconn.php를 인클루드합니다.
?>
<html>
<head>
<title>Login</title>
<link href="./style.css" rel="stylesheet" type="text/css">
</head>
<body>
<?php if(!isset($_SESSION['ss_mb_id'])) { // 로그인 세션이 있을 경우 로그인 화면 ?>
<h1>로그인</h1>
<form action="./login_check.php" method="post">
<table>
<tr>
<th>아이디</th>
<td><input type="text" name="mb_id"></td>
</tr>
<tr>
<th>비밀번호</th>
<td><input type="password" name="mb_password"></td>
</tr>
<tr>
<td colspan="2" class="td_center">
<input type="submit" value="로그인">
<a href="./register.php">회원가입</a>
</td>
</tr>
</table>
</form>
<?php } else { // 로그인 세션이 없을 경우 로그인 완료 화면 ?>
<h1>로그인을 환영합니다.</h1>
<?php
$mb_id = $_SESSION['ss_mb_id'];
$sql = " select * from member where mb_id = TRIM('$mb_id') ";
$result = mysqli_query($conn, $sql);
$mb = mysqli_fetch_assoc($result);
mysqli_close($conn); // 데이터베이스 접속 종료
?>
<table>
<tr>
<th>아이디</th>
<td><?php echo $mb['mb_id'] ?></td>
</tr>
<tr>
<th>이름</th>
<td><?php echo $mb['mb_name'] ?></td>
</tr>
<tr>
<th>이메일</th>
<td><?php echo $mb['mb_email'] ?></td>
</tr>
<tr>
<th>성별</th>
<td><?php echo $mb['mb_gender'] ?></td>
</tr>
<tr>
<th>직업</th>
<td><?php echo $mb['mb_job'] ?></td>
</tr>
<tr>
<th>관심언어</th>
<td><?php echo $mb['mb_language'] ?></td>
</tr>
<tr>
<th>이메일인증일</th>
<td><?php echo $mb['mb_email_certify'] ?></td>
</tr>
<tr>
<th>회원가입일</th>
<td><?php echo $mb['mb_datetime'] ?></td>
</tr>
<tr>
<th>회원정보 수정일</th>
<td><?php echo $mb['mb_modify_datetime'] ?></td>
</tr>
<tr>
<td colspan="2" class="td_center">
<a href="./register.php?mode=modify">회원정보수정</a>
<a href="./logout.php">로그아웃</a>
</td>
</tr>
</table>
<?php } ?>
</body>
</html>
'IT > 웹 개발' 카테고리의 다른 글
세션과 쿠키 (0) | 2022.10.19 |
---|---|
웹 기본 (0) | 2022.02.08 |
웹 개발 -APM 설치 (2) (0) | 2021.10.28 |
웹 개발- APM 설치하기 ubuntu 초기 설정(1) (0) | 2021.10.27 |
웹 개발 환경(1) (0) | 2021.10.21 |