반응형
예제 그림:
PHP실현 로그인 등록
index.php (첫 페이지)
login.php (로그인)
register.php (등록)
index.php
코드:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="vie등록 로그인wport" content="width=device-width, initial-scale=1">
<title>Zhe - </title>
<link rel="stylesheet" type="text/css" href="https://www.layuicdn.com/layui/css/layui.css" />
<script src="https://www.layuicdn.com/layui/layui.js" charset="utf-8"></script>
</head>
<body>
<fieldset class="layui-elem-field layui-field-title" style="margin-top: 20px;">
<legend>Zhe - 로그인 데모</legend>
</fieldset>
<div style="padding: 20px; background-color: #F2F2F2;">
<div class="layui-row layui-col-space15">
<div class="layui-col-md6">
<div class="layui-card">
<div class="layui-card-header">회원가입</div>
<div class="layui-card-body">
<form class="layui-form" action="register.php" method="post" onsubmit="return checkForm(this)" lay-filter="example">
<div class="layui-form-item">
<label class="layui-form-label">입력 상자</label>
<div class="layui-input-block">
<input type="text" name="username" placeholder="계좌번호를 입력해주세요" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">암호 상자</label>
<div class="layui-input-block">
<input type="password" name="password" placeholder="비밀번호를 입력해 주세요." class="layui-input">
</div>
</div>
<div class="layui-form-item">
<div class="layui-input-block">
<input type="submit" class="layui-btn layui-btn-normal" value="즉시 등록"/>
</div>
</div>
</form>
</div>
</div>
</div>
<div class="layui-col-md6">
<div class="layui-card">
<div class="layui-card-header">로그인</div>
<div class="layui-card-body">
<form class="layui-form" action="login.php" method="post" onsubmit="return checkForm(this)" lay-filter="example">
<div class="layui-form-item">
<label class="layui-form-label">입력 상자</label>
<div class="layui-input-block">
<input type="text" name="username" placeholder="계좌번호를 입력해주세요" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">암호 상자</label>
<div class="layui-input-block">
<input type="password" name="password" placeholder="비밀번호를 입력해 주세요." class="layui-input">
</div>
</div>
<div class="layui-form-item">
<div class="layui-input-block">
<input type="submit" class="layui-btn layui-btn-normal" value="지금 로그인"/>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
<script type="text/javascript">
// 입력이 비어 있지 않은 스크립트 코드 확인
function checkForm(form) {
if(form.username.value == "") {
alert("사용자 이름은 비워 둘 수 없음!");
form.username.focus();
return false;
}
if(form.password.value == "") {
alert("비밀번호는 비워둘 수 없습니다!");
form.password.focus();
return false;
}
return true;
login.php
코드:
<?php
session_start();
header("content-type:text/html;charset=utf-8");
//데이터베이스 연결
$link = mysqli_connect("localhost","pay_com_cn","pay_com_cn","pay_com_cn");
if (!$link) {
die("연결 실패: " . mysqli_connect_error());
}
//$_POST 사용자 이름과 암호 받기
$username = $_POST['username'];
$password = $_POST['password'];
//테이블 user 사용자 이름과 비밀번호 및 전송 값이 동일한지 보기
$sql = "SELECT * FROM user WHERE username = '$username' AND password = '$password'";
//result필수 규정 사유 mysqli_query()、mysqli_store_result() 或 mysqli_use_result() 반환된 결과 집합 식별자
$result = mysqli_query($link,$sql);
$num = mysqli_num_rows($result);//함수는 결과 집합의 행 수를 반환합니다.
//로그인 여부 판단 후 표시 또는 건너뛰기
if($num){
echo '로그인 성공';
}else{
echo'로그인을 실패하였습니다.';
}
mysqli_close($link);//데이터베이스 닫기
?>
register.php
코드:
<?php
header("content-type:text/html;charset=utf-8");
//데이터베이스 연결
$link = mysqli_connect("localhost","pay_com_cn","pay_com_cn","pay_com_cn");
if (!$link) {
die("연결 실패: " . mysqli_connect_error());
}
//$_POST 사용자 이름과 암호 받기
$username=$_POST['username'];
$password=$_POST['password'];
//테이블 user 사용자 이름이 있거나 비어 있는지 보기
$sql_select = "SELECT * FROM user WHERE username = '$username'";
//result필수 규정 사유 mysqli_query()、mysqli_store_result() 또는 mysqli_use_result() 반환된 결과 집합 식별자。
$select = mysqli_query($link,$sql_select);
$num = mysqli_num_rows($select);//함수는 결과 집합의 행 수를 반환합니다.
if($username == "" || $password == "")
{
echo "메시지 무결성을 확인하세요";
}else if($num){
echo "존재하는 사용자 이름";//계정 이름 출력 오류 발생
}else{
$sql="insert into user(username,password) values('$username','$password')";
$result=mysqli_query($link,$sql);
//등록여부 판단 후 내용 표시
if(!$result)
{
echo "등록이 실패!"."<br>";//출력 오류
echo "<a href='index.php'>返回</a>";//첫 페이지에 하이퍼링크
}
else
{
echo "회원가입 성공!"."<br/>";//출력 성공
echo "<a href='index.hphp'>즉시 로그인하다</a>";//첫 페이지에 하이퍼링크
}
}
?>
반응형
'개발 꿀팁 > PHP' 카테고리의 다른 글
ImageMagick php 확장 윈도 설치 (0) | 2022.06.25 |
---|---|
PHP Mailer를 통해 메일 보내기 (0) | 2022.06.25 |
php 학생정보관리시스템(소스) (0) | 2022.06.25 |
PHP제어반전(IOC) (0) | 2022.06.25 |
php에서 \r\n과 \n의 치환되지 않는 오류 해결 (0) | 2022.06.24 |