개발 꿀팁/PHP

PHP는 Mysql에 연결하여 기본적인 추가, 삭제, 변경, 조사-사용자 관리 시스템 구현

Jammie 2022. 7. 5. 14:40
반응형

서언
최근 PHP와 Mysql을 공부하면서 책을 읽으면서 코드를 치면서 간단한 사용자 관리 시스템을 시도했는데, 간단한 조작을 할 뿐, low(자동으로 큰 소를 차단하는 하하)가 조금 있지만, 요약해 봅시다, 인상을 깊게 할 수 있을 것 같습니다, 잘못된 점은 지적하고, 함께 배우고, 함께 소통하는 것이 좋습니다.

개술하다
PHP는 서버 측에서 실행하는 HTML 문서가 내장된 객체지향 해석형 스크립트 언어로 c언어와 유사한 언어다.모든 CGI(커먼게이트웨이 인터페이스, 서버와 클라이언트 프로그램이 대화하는 일종의 도구)를 구현하는 강력한 기능으로 일반 CGI보다 빠른 실행 속도를 자랑한다.
다음의 접속 조작은 WAMP 플랫폼 환경에서 이루어진다.아직 환경이 구축되지 않은 파트너가 있다면 아래 링크를 참고하면 된다.http://www.imooc.com/learn/54은 동영상 2장에서 자세히 설명하고 있다.

데이터베이스 만들기
Mysql 데이터베이스에 접속해야 하기 때문에 db_user라는 데이터베이스를 구축하겠습니다.

--데이터베이스 만들기db_user
create database db_user;

--현재 데이터베이스 지정db_user
use db_user;

--사용자 정보 시트users
create table users
(
user_id int not null auto_increament primary key,
user_name char(10) not null,
user_psw char(10) not null,
user_sex char(1) not null,
user_age int null,
user_dept int not null,
user_group int not null
);
--부문표dept
create table dept
(
dept_id int not null auto_increment primary key,
dept_name char(20) not null,
dept_leader char(10) not null,
dept_location char(50) not null
);
--사용자 그룹 테이블usergroup
create table usergroup
(
group_id int not null auto_increment primary key,
group_name char(20) not null,
group_desc char(50) not null
);
--권한 목록func
create table func
(
func_id int not null auto_increment primary key,
func_name char(20) not null,
func_link char(20) not null
);
--사용자 그룹 권한groupfunc
create table groupfunc
(
id int not null auto_increment primary key,
group_id int not null,
func_id int not null
);

--테스트 데이터 삽입
insert into db_user.users(`user_id`, `user_name`, `user_psw`, `user_sex`, `user_age`, `user_dept`, `user_group`) values (2, '옆집 왕씨', '2396', '남자', 33, 0, 1);

시스템 구현
모든 페이지 파일 목록은 다음과 같습니다.

다음으로 각 페이지 파일의 기능과 구현에 대해 단계별로 설명하겠습니다.

1.홈페이지
시스템의 메인 페이지 파일 index.html을 만듭니다. 구현 코드:다음:

<html>
<head>
<title>간단한 사용자 관리 시스템 예</title>
</head>
<body>
<h2>사용자 관리 시스템</h2>
<h3>사용자 관리</h3>
<a href="add_user.php">사용자 추가</a><br/>
<a href="show_user.php">사용자 보기</a>

<h3>부서관리</h3>
<a href="add_dept.php">부서 추가</a><br/>
<a href="show_dept.php">부서 보기</a>

<h3>사용자 그룹 관리</h3>
<a href="add_usergroup.php">사용자 그룹 추가</a><br/>
<a href="show_usergroup.php">사용자 그룹 보기</a>

<h3>권한 관리</h3>
<a href="add_fun.php">권한 추가</a><br/>
<a href="show_fun.php">권한 보기</a>
</body>
</html>

효과:

2.공통 코드 모듈
새 commonphp 파일, 데이터베이스 서버에 접속하기 위한 다음과 같은 코드. 여기서 우리는 데이터베이스에 접속하는 조작을 하나의 공통 코드 모듈로 캡슐화하고, 아래의 각 페이지 파일에서 <?를 통과한다.php require_once "common.php";?" > 를 도입합니다. 연결 코드를 다시 작성할 필요가 없습니다

<?php
$con=mysql_connect("localhost:3306","root","642765") or die("数据库服务器连接失败!<br>");
mysql_select_db("db_user",$con) or die("데이터베이스 선택 실패!<br>");
mysql_query("set names 'gbk'");//중국어 문자 집합 설정
?>

PHP에서는 다음 두 가지 함수를 이용하여 Mysql 데이터베이스 서버와의 연결을 설정할 수 있습니다.
mysql_connect(): 영구적이지 않은 연결 설정
mysql_pconnect(): 영구 연결 설정
여기서 설정한 것은 비영구적 연결입니다.

3. 페이지별 디자인과 구현
사용자 추가
사용자의 웹 페이지 파일 추가 add_user.php 구현 코드는 다음과 같습니다.

<?php require_once "common.php";?>
<html>
<head>
<title>사용자 추가</title>
</head>
<body>
<h3>사용자 추가</h3>
<form id="add_user" name="add_user" method="post" action="insert_user.php">
사용자 이름:<input type="text" name="user_name"/><br/>
사용자 비밀번호:<input type="text" name="user_psw"/><br/>
사용자 성별:<input type="text" name="user_sex"/><br/>
사용자 연령:<input type="text" name="user_age"/><br/>
소속 부서:<select name="show_user_name">
<?php
$sql="select * from dept";
$result=mysql_query($sql,$con);
while($rows=mysql_fetch_row($result)){
echo "<option value=".$rows[0].">".$rows[1]."</option>";
}
?>
</select><br/>

사용자 그룹 이름:<select name="user_group">
    <?php
    $sql="select * from usergroup";
    $result=mysql_query($sql,$con);
    while($rows=mysql_fetch_row($result)){
        echo "<option value=".$rows[0].">".$rows[1]."</option>";
    }
    ?>
    </select><br/>
    <br/>
<input type="submit" value="添加"/>
</form>
</body>
</html>

Wamp 플랫폼 환경에 프로그램을 배치하고 브라우저에 "http: // localhost: 포트 번호/ 파일 경로"를 입력하면 효과를 볼 수 있습니다. URL에서 내 포트 번호는 8080입니다. 기본 포트 번호는 80입니다.
효과:

성공적으로 추가되면, 페이지는 자동으로 다음 웹 페이지 이동

 

사용자 보기
사용자의 웹페이지 파일 show_user.php 구현코드는 다음과 같으며, 사용자의 이름 또는 사용자가 속한 부서를 지정하여 해당 사용자의 모든 개인정보를 볼 수 있습니다.

<?php require_once "common.php";?>
<html>
<head><title>사용자 보기</title>
</head>
<body>
<h3>사용자 보기</h3>
<form id="show_user" name="show_user" method="post" action="select_user.php">
사용자 이름:<input type="text" name="show_user_name"/><br/>
소속 부서:<select name="show_user_dept">
<option value=0>전 부서</option>
<?php
$sql="select * from dept";
$result=mysql_query($sql,$con);
while($rows=mysql_fetch_row($result)){
echo "<option value=".$rows[0].">".$rows[1]."</option>";
}
?>
</select><br/>
<br/>
<input type="submit" value="찾아 보다"/>
</form>
</body>
</html>

 

효과:

보기 단추를 누르면 다음 페이지로 넘어갑니다

그림에서 알 수 있듯이 이 사용자의 결과 보기 페이지에는 해당 사용자의 수정과 삭제 작업을 수행하는 하이퍼링크 포털이 포함되어 있으며 각각 change_user.php와 delete_user.php 파일에 대응하고 있다.

사용자 수정
사용자의 웹 페이지 파일 change_user.php를 수정하기 위한 구현 코드는 다음과 같다

 

<?php require_once "common.php";?>
<html>
<head><title>사용자 수정</title>
</head>
<body>
    <h3>사용자 수정</h3>
    <form id="add_user" name="add_user" method="post" action="update_user.php?user_id=
        <?php echo trim($_GET['user_id']);?>" >
   사용자 이름:<input type="text" name="user_name"/><br/>
    사용자 비밀번호:<input type="text" name="user_psw"/><br/>
    사용자 성별:<input type="text" name="user_sex"/><br/>
    사용자 연령:<input type="text" name="user_age"/><br/>
    소속 부서:<select name="user_dept">
    <option value=0>부서를 선택하십시오</option>
    <?php
    $sql="select * from dept";
    $result=mysql_query($sql,$con);
    while($rows=mysql_fetch_row($result)){
        echo "<option value=".$rows[0].">".$rows[1]."</option>";
    }
    ?>
    </select><br/>
사용자 그룹 이름:<select name="user_group">
    <option value=0>사용자 그룹을 선택하십시오</option>
    <?php
    $sql="select * from usergroup";
    $result=mysql_query($sql,$con);
    while($rows=mysql_fetch_row($result)) {
        echo "<option value=".$row[0].">".$rows[1]."</option>";
    }
    ?>
    </select><br/>
<br/>
<input type="submit" value="사용자 정보 수정"/>
</form>
</body>
</html>

위 페이지에 새로운 사용자 정보를 입력한 후 버튼을 클릭하면 다음 내용을 포함하는 애플리케이션 계층에서 사용자 조작을 수정하기 위한 비즈니스 로직 처리 코드 update_user.php를 호출할 수 있습니다.

<?php require_once "common.php";
$user_id=trim($_GET['user_id']);
$user_name=trim($_POST['user_name']);
$user_psw=trim($_POST['user_psw']);
$user_sex=trim($_POST['user_sex']);
$user_age=trim($_POST['user_age']);
$user_dept=trim($_POST['user_dept']);
$user_group=trim($_POST['user_group']);
$sql="UPDATE users SET user_name='".$user_name."',user_psw='".$user_psw."',user_sex='".$user_sex."',user_age='".$user_age."',user_dept='".$user_dept."',user_group='".$user_group."'  WHERE user_id=";
$sql=$sql.$user_id;
if(mysql_query($sql,$con))
    echo "사용자 수정 성공!<br>";
else
    echo "사용자 수정 실패!<br>";
?>

사용자 삭제
사용자 보기 결과 페이지에 사용자를 삭제하는 하이퍼링크가 있습니다. 클릭하면 아래의 논리 처리 코드 delete_user.php를 호출하여 현재 사용자에 대한 삭제를 할 수 있습니다

<?php require_once "common.php";?>
<html>
<head><title>사용자 삭제</title>
</head>
<body>
    <?php
    $user_id=trim($_GET['user_id']);
    $sql="DELETE FROM users WHERE user_id=";
    $sql=$sql.$user_id;
    if(mysql_query($sql,$con))
        echo "사용자 삭제 성공!<br>";
    else
        echo "사용자 삭제 실패!<br>";
    ?>
</body>
</html>

삭제가 성공하면 다음 페이지로 넘어갑니다

반응형