Tạo bởi Trắc Nghiệm Việt|
Học PHP

[Share Code] Viết website quản lý sinh viên PHP & MySQL - Lập Trình PHP - C2307L

Viết website quản lý sinh viên PHP & MySQL - Lập Trình PHP

#config.php

<?php
define('HOSTING', 'localhost:3307');
// define('USERNAME', 'gokisoft');
define('USERNAME', 'root');
// define('PWD', 'iv@*NIFyTdKEgh]D');
define('PWD', '');
define('DATABASE', 'c2307l');

/**
* Query: insert, update, delete
*/
function query($sql) {
	// $conn = mysqli_connect('localhost:3307', 'gokisoft', 'iv@*NIFyTdKEgh]D', 'c2307l');
	$conn = mysqli_connect(HOSTING, USERNAME, PWD, DATABASE);
	mysqli_set_charset($conn, 'utf8');

	//B2. Thuc hien insert du lieu vao CSDL
	// $sql = "insert into users (fullname, email, phone_number, address, created_at, updated_at) values ('TRAN VAN AAA', 'tranvana@gmail.com', '1234567890', 'Ha Noi', '2023-01-02 09:30:00', '2023-01-02 09:30:00')";
	// $sql = "delete from users where id = ".$id;
	mysqli_query($conn, $sql);

	//B3. Dong ket noi
	mysqli_close($conn);
}

function select($sql) {
	$conn = mysqli_connect(HOSTING, USERNAME, PWD, DATABASE);
	mysqli_set_charset($conn, 'utf8');

	//B2. Thuc hien insert du lieu vao CSDL
	// $sql = "insert into users (fullname, email, phone_number, address, created_at, updated_at) values ('TRAN VAN AAA', 'tranvana@gmail.com', '1234567890', 'Ha Noi', '2023-01-02 09:30:00', '2023-01-02 09:30:00')";
	// $sql = "select * from users";
	$resultset = mysqli_query($conn, $sql);
	$dataList = [];

	while(($row = mysqli_fetch_array($resultset, 1)) !== null) {
		$dataList[] = $row;
	}

	//B3. Dong ket noi
	mysqli_close($conn);

	return $dataList;
}

#index.php

<!DOCTYPE html>
<html>
<head>
	<title>Project Management</title>
	<meta charset="utf-8">
</head>
<body>
<p>
	<a href="student/index.php">Quản lý sinh viên</a>
</p>
</body>
</html>

#readme.txt

B1. Tạo CSDL
create table student (
	id int primary key auto_increment,
	fullname varchar(150),
	age int,
	address varchar(200)
)

B2. Tạo dự án
	CRUD
		module (student - folder)
			index.php
			add.php
			edit.php
			delete.php
		

#add.php

<?php
require_once('../config.php');

if(!empty($_POST)) {
	$fullname = $_POST['fullname'];
	$age = $_POST['age'];
	$address = $_POST['address'];

	$sql = "insert into student(fullname, age, address) values ('$fullname', '$age', '$address')";
	query($sql);

	header('Location: index.php');
}
?>

<!DOCTYPE html>
<html>
<head>
	<title>Thêm Sinh Viên</title>
	<meta charset="utf-8">
	<meta name="viewport" content="width=device-width, initial-scale=1.0" />
	<!-- Latest compiled and minified CSS -->
	<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/css/bootstrap.min.css" rel="stylesheet">
	<!-- Latest compiled JavaScript -->
	<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.1/jquery.min.js"></script>
	<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/js/bootstrap.bundle.min.js"></script>
	<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.1/font/bootstrap-icons.css">
	<style type="text/css">
		.form-group {
			margin-bottom: 20px;
		}
	</style>
</head>
<body>
<div class="container">
	<div class="card">
		<div class="card-header bg-info text-white">
			NHAP THONG TIN SINH VIEN
		</div>
		<div class="card-body">
			<form method="post">
				<div class="form-group">
					<label>Ten Sinh Vien:</label>
					<input required type="text" name="fullname" class="form-control">
				</div>
				<div class="form-group">
					<label>Tuoi:</label>
					<input required type="number" name="age" class="form-control">
				</div>
				<div class="form-group">
					<label>Dia Chi:</label>
					<input required type="text" name="address" class="form-control">
				</div>
				<div class="form-group">
					<button class="btn btn-success">Luu</button>
					<button type="reset" class="btn btn-warning">Xoa Form</button>
				</div>
			</form>
			<p>
				<a href="index.php">Quay về danh sách</a>
			</p>
		</div>
	</div>
</div>
</body>
</html>

#delete.php

<?php
require_once('../config.php');

if(!empty($_POST)) {
	$id = $_POST['id'];
	query("delete from student where id = $id");

	header('Location: index.php');
}

$id = $_GET['id'];
$stdList = select("select * from student where id = $id");
if($stdList == null || count($stdList) == 0) {
	header('Location: index.php');
}

$std = $stdList[0];
?>

<!DOCTYPE html>
<html>
<head>
	<title>Thêm Sinh Viên</title>
	<meta charset="utf-8">
	<meta name="viewport" content="width=device-width, initial-scale=1.0" />
	<!-- Latest compiled and minified CSS -->
	<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/css/bootstrap.min.css" rel="stylesheet">
	<!-- Latest compiled JavaScript -->
	<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.1/jquery.min.js"></script>
	<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/js/bootstrap.bundle.min.js"></script>
	<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.1/font/bootstrap-icons.css">
	<style type="text/css">
		.form-group {
			margin-bottom: 20px;
		}
	</style>
</head>
<body>
<div class="container">
	<div class="card">
		<div class="card-header bg-info text-white">
			XÁC MINH TÀI KHOẢN XÓA
		</div>
		<div class="card-body" style="width: 50%;">
			<table class="table table-bordered">
				<tr>
					<th>Ho ten</th>
					<td><?=$std['fullname']?></td>
				</tr>
				<tr>
					<th>Tuoi</th>
					<td><?=$std['age']?></td>
				</tr>
				<tr>
					<th>Dia chi</th>
					<td><?=$std['address']?></td>
				</tr>
			</table>
			<form method="post">
				<input type="hidden" name="id" value="<?=$id?>">
				<button class="btn btn-danger">Bạn chắc chắn muốn xóa sinh viên này</button>
			</form>
			<br/>
			<br/>
			<p>
				<a href="index.php">Quay về danh sách</a>
			</p>
		</div>
	</div>
</div>
</body>
</html>

#edit.php

<?php
require_once('../config.php');

if(!empty($_POST)) {
	$id = $_POST['id'];
	$fullname = $_POST['fullname'];
	$age = $_POST['age'];
	$address = $_POST['address'];

	$sql = "update student set fullname='$fullname', age='$age', address = '$address' where id = $id";
	query($sql);

	header('Location: index.php');
}

$id = $_GET['id'];
$stdList = select("select * from student where id = $id");
if($stdList == null || count($stdList) == 0) {
	header('Location: index.php');
}

$std = $stdList[0];
?>

<!DOCTYPE html>
<html>
<head>
	<title>Thêm Sinh Viên</title>
	<meta charset="utf-8">
	<meta name="viewport" content="width=device-width, initial-scale=1.0" />
	<!-- Latest compiled and minified CSS -->
	<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/css/bootstrap.min.css" rel="stylesheet">
	<!-- Latest compiled JavaScript -->
	<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.1/jquery.min.js"></script>
	<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/js/bootstrap.bundle.min.js"></script>
	<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.1/font/bootstrap-icons.css">
	<style type="text/css">
		.form-group {
			margin-bottom: 20px;
		}
	</style>
</head>
<body>
<div class="container">
	<div class="card">
		<div class="card-header bg-info text-white">
			NHAP THONG TIN SINH VIEN
		</div>
		<div class="card-body">
			<form method="post">
				<div class="form-group">
					<label>Ten Sinh Vien:</label>
					<input type="hidden" name="id" value="<?=$id?>">
					<input required type="text" name="fullname" class="form-control" value="<?=$std['fullname']?>">
				</div>
				<div class="form-group">
					<label>Tuoi:</label>
					<input required type="number" name="age" class="form-control" value="<?=$std['age']?>">
				</div>
				<div class="form-group">
					<label>Dia Chi:</label>
					<input required type="text" name="address" class="form-control" value="<?=$std['address']?>">
				</div>
				<div class="form-group">
					<button class="btn btn-success">Luu</button>
					<button type="reset" class="btn btn-warning">Xoa Form</button>
				</div>
			</form>
			<p>
				<a href="index.php">Quay về danh sách</a>
			</p>
		</div>
	</div>
</div>
</body>
</html>

#index.php

<?php
require_once('../config.php');
if(isset($_GET['s']) && $_GET['s'] != "") {
	$s = $_GET['s'];
	$sql = "select * from student where fullname like '%$s%' order by fullname asc";
	// echo $sql;
} else {
	$sql = "select * from student order by fullname asc";
}

$dataList = select($sql);
?>

<!DOCTYPE html>
<html>
<head>
	<title>Quản Lý Sinh Viên</title>
	<meta charset="utf-8">
	<meta name="viewport" content="width=device-width, initial-scale=1.0" />
	<!-- Latest compiled and minified CSS -->
	<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/css/bootstrap.min.css" rel="stylesheet">
	<!-- Latest compiled JavaScript -->
	<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.1/jquery.min.js"></script>
	<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/js/bootstrap.bundle.min.js"></script>
	<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.1/font/bootstrap-icons.css">
	<style type="text/css">
		.form-group {
			margin-bottom: 20px;
		}
	</style>
</head>
<body>
<div class="container">
	<div class="row">
		<div class="col-md-12 mt-3">
			<a href="add.php"><button class="btn btn-success" style="float: left;">Them moi</button></a>
			<form method="get">
				<input type="text" name="s" placeholder="Tim kiem ..." class="form-control" style="width: 200px; float: right;">
			</form>
		</div>
		<div class="col-md-12">
			<div class="card mt-3">
				<div class="card-header bg-info text-white">
					DANH SACH SINH VIEN
				</div>
				<div class="card-body">
					<table class="table table-bordered">
						<thead>
							<tr>
								<th>STT</th>
								<th>Ten SV</th>
								<th>Tuoi</th>
								<th>Dia Chi</th>
								<th style="width: 180px;"></th>
							</tr>
						</thead>
						<tbody>
		<?php
		$count = 0;
		foreach ($dataList as $item) {
			echo '<tr>
					<td>'.(++$count).'</td>
					<td>'.$item['fullname'].'</td>
					<td>'.$item['age'].'</td>
					<td>'.$item['address'].'</td>
					<td>
						<a href="edit.php?id='.$item['id'].'"><button class="btn btn-warning">Sua</button></a>
						<a href="delete.php?id='.$item['id'].'"><button class="btn btn-danger">Xoa</button></a>
					</td>
				</tr>';
		}
		?>
						</tbody>
					</table>
				</div>
			</div>
		</div>
	</div>
</div>
</body>
</html>



Phản hồi từ học viên

5

Tổng 0 đánh giá

Đăng nhập để làm bài kiểm tra

Chưa có kết quả nào trước đó