https://hoowave.tistory.com/28
회원가입 페이지 만들기 - 1
https://hoowave.tistory.com/26 로그인 페이지 만들기 - 설계웹 서버까지 세팅이 완료가 되었다면, 홈페이지 구조를 만들어줍니다.홈페이지 구조 main : 로그인 페이지 관련 폴더입니다.admin : 관리자
hoowave.tistory.com
회원가입 정보를 Front 단에서 입력받았다면
이번엔 Back 단에서 처리를 해볼게요
앞 게시글에서 완성하지 못한
script.js -> ajax 처리 함수
function call_ajax_main(type = null) {
$.ajax({
url: 'ajax_main.php',
type: "post",
data: {
type: type,
id: $("#user_id").val(),
pw: $("#user_pw").val(),
},
success: function (result) {
var result = JSON.parse(result);
alert(result.message);
if (result.url) {
location.href = result.url;
}
},
error: function (xhr, status, error) {
alert("ERROR xhr :" + xhr + ", status : " + status + ", error :" + error);
}
})
}
로그인 페이지에서만 공통으로 사용할 생각이어서
회원가입, 로그인 등의 처리를 할 type , 입력받은 id, pw를 Back 단으로 넘겨줬습니다.
처리 후 결괏값을 받아서 메세지창을 띄우고 url 값이 있다면 페이지 이동 되게 해놨습니다.
ajax_main.php -> 회원가입
<?
include '../_common.php';
$type = $_POST['type'];
$id = $_POST['id'];
$pw = $_POST['pw'];
if(!$type)
{
echo "올바르지 않은 접근입니다.";
}
if($type == "join")
{
$sql = "insert into users values (null, '$id', '$pw', 1)";
$sql_result = $db_cls->execute($sql);
if($sql_result)
{
$result = array("message"=>"회원가입 성공", "url"=>"main.html");
}
else
{
$result = array("message"=>"이미 존재하는 아이디입니다.");
}
echo json_encode($result);
exit;
}
?>
Front 단에서 전달받은 값을 SQL 문과 조합하여 DB에 입력시킵니다.
상태 값을 비교하여 insert에 성공하면 상태 메시지와 로그인 페이지의 url을 Front 단으로 리턴 시킵니다.
실패라면 상태 메시지만 리턴 시킵니다.
json으로 데이터를 주고받았습니다.
결과 화면
이미 제가 만들었던 아이디에요. sql_result가 false일 경우가 되겠네요.
그와 반대의 상황인 경우. 자동으로 로그인 페이지로 넘어갑니다.
'Legacy > JS+PHP+SQL' 카테고리의 다른 글
권한에 따라 페이지 비정상 접근 방지 (0) | 2025.02.16 |
---|---|
로그인 페이지 만들기 - 처리 (1) | 2025.02.16 |
회원가입 페이지 만들기 - 1 (0) | 2025.02.16 |
DB Connection - Class (0) | 2025.02.16 |
로그인 페이지 만들기 - 설계 (0) | 2025.02.16 |