-
회원 관리 시스템데이터베이스/SQL 2023. 12. 29. 16:13
- 초기 화면(main.html)
<HTML> <HEAD> <META http-equiv="content-type" content="text/html; charset=utf-8"> </HEAD> <BODY> <h1> 회원 관리 시스템</h1> <a href="select.php"> (1) 회원 조회 (조회 후 수정/삭제 가능) </a> <br><br> <a href="insert.php"> (2) 신규 회원 등록 </a> <br><br> <FORM METHOD="get" ACTION="update.php"> (3) 회원 수정 - 회원 아이디 : <INPUT TYPE="text" NAME="userID"> <INPUT TYPE="submit" VALUE="수정"> </FORM> <FORM METHOD="get" ACTION="delete.php"> (4) 회원 삭제 - 회원 아이디 : <INPUT TYPE="text" NAME="userID"> <INPUT TYPE="submit" VALUE="삭제"> </FORM> </BODY> </HTML>
메인을 보면 연결된 php는 4개
- 회원 조회 화면(select.php)
<?php $con=mysqli_connect("localhost", "root", "1234", "sqlDB") or die("MariaDB 접속 실패"); $sql ="SELECT * FROM userTBL"; $ret = mysqli_query($con, $sql); if($ret) { $count = mysqli_num_rows($ret); } else { echo "userTBL 데이터 조회 실패"."<br>"; echo "실패 원인 : ".mysqli_error($con); exit(); } echo "<h1> 회원 조회 결과 </h1>"; echo "<TABLE border=1>"; echo "<TR>"; echo "<TH>아이디</TH><TH>이름</TH><TH>출생연도</TH><TH>지역</TH><TH>국번</TH>"; echo "<TH>전화번호</TH><TH>키</TH><TH>가입일</TH><TH>수정</TH><TH>삭제</TH>"; echo "</TR>"; while($row = mysqli_fetch_array($ret)) { echo "<TR>"; echo "<TD>", $row['userID'], "</TD>"; echo "<TD>", $row['name'], "</TD>"; echo "<TD>", $row['birthYear'], "</TD>"; echo "<TD>", $row['addr'], "</TD>"; echo "<TD>", $row['mobile1'], "</TD>"; echo "<TD>", $row['mobile2'], "</TD>"; echo "<TD>", $row['height'], "</TD>"; echo "<TD>", $row['mDate'], "</TD>"; echo "<TD>", "<a href='update.php?userID=", $row['userID'], "'>수정</a></TD>"; echo "<TD>", "<a href='delete.php?userID=", $row['userID'], "'>삭제</a></TD>"; echo "</TR>"; } mysqli_close($con); echo "</TABLE>"; echo "<br> <a href='main.html'> <-- 초기 화면</a> "; ?>
위 메인에서 (1) 회원 조회를 누르면 select.php로 이동, 초기 화면 버튼을 누르면 main.html로 다시 이동
- 신규 회원 등록(insert.php)
<HTML> <HEAD> <META http-equiv="content-type" content="text/html"; charset="utf-8"> </HEAD> <BODY> <h1> 신규 회원 입력 </h1> <FORM METHOD="post" ACTION="insert_result.php"> 아이디: <INPUT TYPE="text" NAME="userID"> <br> 이름: <INPUT TYPE="text" NAME="name"> <br> 출생연도: <INPUT TYPE="text" NAME="birthYear"> <br> 지역: <INPUT TYPE="text" NAME="addr"> <br> 휴대폰 국번: <INPUT TYPE="text" NAME="mobile1"> <br> 휴대폰 전화번호: <INPUT TYPE="text" NAME="mobile2"> <br> 신장: <INPUT TYPE="text" NAME="height"><br> <BR><BR> <INPUT TYPE="submit" VALUE="회원 입력"> </FORM> </BODY> </HTML>
html 형식으로 적은 파일의 확장자를 php로 저장해도 문제 없이 실행
회원 입력 버튼을 누르면 insert_result.php에 전달됨
- 신규 회원 입력 결과(insert_result.php)
<?php $con=mysqli_connect("localhost", "root", "1234", "sqlDB") or die("MariaDB 접속 실패"); $userID = $_POST["userID"]; $name = $_POST["name"]; $birthYear = $_POST["birthYear"]; $addr = $_POST["addr"]; $mobile1 = $_POST["mobile1"]; $mobile2 = $_POST["mobile2"]; $height = $_POST["height"]; $mDate = date("Y-m-j"); $sql =" INSERT INTO userTBL VALUES('".$userID."','".$name."',".$birthYear; $sql = $sql.",'".$addr."','".$mobile1."','".$mobile2."',".$height.",'".$mDate."')"; $ret = mysqli_query($con, $sql); echo "<h1> 신규 회원 입력 결과 </h1>"; if($ret) { echo "데이터가 성공적으로 입력됨"; } else { echo "데이터 입력 실패"."<br>"; echo "실패 원인 : ".mysqli_error($con); } mysqli_close($con); echo "<br> <a href='main.html'> <-- 초기 화면</a> "; ?>
에러 생기는 경우
- 회원 정보 수정(update.php)
<?php $con=mysqli_connect("localhost", "root", "1234", "sqlDB") or die("MariaDB 접속 실패"); $sql ="SELECT * FROM userTBL WHERE userID='".$_GET['userID']."'"; $ret = mysqli_query($con, $sql); if($ret) { $count = mysqli_num_rows($ret); if ($count==0) { echo $_GET['userID']." 아이디의 회원이 없음"."<br>"; echo "<br> <a href='main.html'> <-- 초기 화면</a> "; exit(); } } else { echo "데이터 조회 실패"."<br>"; echo "실패 원인 : ".mysqli_error($con); echo "<br> <a href='main.html'> <-- 초기 화면</a> "; exit(); } $row = mysqli_fetch_array($ret); $userID = $row['userID']; $name = $row["name"]; $birthYear = $row["birthYear"]; $addr = $row["addr"]; $mobile1 = $row["mobile1"]; $mobile2 = $row["mobile2"]; $height = $row["height"]; $mDate = $row["mDate"]; ?> <HTML> <HEAD> <META http-equiv="content-type" content="text/html; charset=utf-8"> </HEAD> <BODY> <h1> 회원 정보 수정 </h1> <FORM METHOD="post" ACTION="update_result.php"> 아이디: <INPUT TYPE="text" NAME="userID" VALUE=<?php echo $userID ?> READONLY> <br> 이름: <INPUT TYPE="text" NAME="name" VALUE=<?php echo $name ?>> <br> 출생연도: <INPUT TYPE="text" NAME="birthYear" VALUE=<?php echo $birthYear ?>> <br> 지역: <INPUT TYPE="text" NAME="addr" VALUE=<?php echo $addr ?>> <br> 휴대폰 국번: <INPUT TYPE="text" NAME="mobile1" VALUE=<?php echo $mobile1 ?>> <br> 휴대폰 전화번호: <INPUT TYPE="text" NAME="mobile2" VALUE=<?php echo $mobile2 ?>> <br> 신장: <INPUT TYPE="text" NAME="height" VALUE=<?php echo $height ?>> <br> 회원 가입일: <INPUT TYPE="text" NAME="mDate" VALUE=<?php echo $mDate ?> READONLY><br> <BR><BR> <INPUT TYPE="submit" VALUE="정보 수정"> </FORM> </BODY> </HTML>
- 회원 정보 수정 결과(update_result.php)
<?php $con=mysqli_connect("localhost", "root", "1234", "sqlDB") or die("MariaDB 접속 실패"); $userID = $_POST["userID"]; $name = $_POST["name"]; $birthYear = $_POST["birthYear"]; $addr = $_POST["addr"]; $mobile1 = $_POST["mobile1"]; $mobile2 = $_POST["mobile2"]; $height = $_POST["height"]; $mDate = $_POST["mDate"]; $sql = "UPDATE userTBL SET name='".$name."', birthYear=".$birthYear.", addr='".$addr."', mobile1='".$mobile1."', mobile2='".$mobile2."', height=".$height.", mDate='".$mDate."' WHERE userID='".$userID."'"; $ret = mysqli_query($con, $sql); echo "<h1> 회원 정보 수정 결과 </h1>"; if($ret) { echo "데이터가 성공적으로 수정됨"; } else { echo "데이터 수정 실패"."<br>"; echo "실패 원인 : ".mysqli_error($con); } mysqli_close($con); echo "<br> <a href='main.html'> <-- 초기 화면 </a> "; ?>
- 회원 정보 삭제(delete.php)
<?php $con=mysqli_connect("localhost", "root", "1234", "sqlDB") or die("MariaDB 접속 실패"); $sql ="SELECT * FROM userTBL WHERE userID='".$_GET['userID']."'"; $ret = mysqli_query($con, $sql); if($ret) { $count = mysqli_num_rows($ret); if ($count==0) { echo $_GET['userID']." 아이디의 회원이 없음"."<br>"; echo "<br> <a href='main.html'> <-- 초기 화면</a> "; exit(); } } else { echo "데이터 조회 실패"."<br>"; echo "실패 원인 : ".mysqli_error($con); echo "<br> <a href='main.html'> <-- 초기 화면</a> "; exit(); } $row = mysqli_fetch_array($ret); $userID = $row['userID']; $name = $row["name"]; ?> <HTML> <HEAD> <META http-equiv="content-type" content="text/html; charset=utf-8"> </HEAD> <BODY> <h1> 회원 삭제 </h1> <FORM METHOD="post" ACTION="delete_result.php"> 아이디: <INPUT TYPE="text" NAME="userID" VALUE=<?php echo $userID ?> READONLY> <br> 이름: <INPUT TYPE="text" NAME="name" VALUE=<?php echo $name ?>> <br> <BR><BR> 위 회원을 삭제하겠습니까? <INPUT TYPE="submit" VALUE="회원 삭제"> </FORM> </BODY> </HTML>
- 회원 삭제 결과(delete_result.php)
<?php $con=mysqli_connect("localhost", "root", "1234", "sqlDB") or die("MariaDB 접속 실패"); $userID = $_POST["userID"]; $sql = "DELETE FROM userTBL WHERE userID='".$userID."'"; $ret = mysqli_query($con, $sql); echo "<h1> 회원 삭제 결과 </h1>"; if($ret) { echo $userID." 회원이 성공적으로 삭제됨. "; } else { echo "데이터 삭제 실패"."<br>"; echo "실패 원인 : ".mysqli_error($con); } mysqli_close($con); echo "<br><br> <a href='main.html'> <-- 초기 화면 </a> "; ?>
select.php 창에서도 수정 / 삭제 가능
'데이터베이스 > SQL' 카테고리의 다른 글
트리거 (0) 2024.01.25 PHP와 MariaDB 연동 (0) 2023.12.28 PHP 기본 문법 (0) 2023.12.28 MariaDB 생성 및 Query Practice (0) 2023.12.21 XAMPP 설치 (0) 2023.12.14