By GokiSoft.com|
19:46 19/05/2022|
Học PHP
[Source Code] Hướng dẫn kết nối CSDL MySQL trong PHP - Khóa học PHP/MySQL
#add.php
<?php
$username = $email = $pwd = "";
if(!empty($_POST)) {
$username = $_POST['username'];
$email = $_POST['email'];
$pwd = $_POST['pwd'];
// Them du lieu vao CSDL
// B1. Cach ket noi CSDL
$conn = mysqli_connect('localhost', 'root', '', 'c2110l');
mysqli_set_charset($conn, 'utf8');
// B2. Luu du lieu
$sql = "insert into student (username, email, password) values ('$username', '$email', '$pwd')";
mysqli_query($conn, $sql);
// B3. Ngat ket noi toi CSDL
mysqli_close($conn);
}
?>
<!DOCTYPE html>
<html>
<head>
<title>Add student account page</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css" rel="stylesheet">
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.bundle.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
<style type="text/css">
.form-group {
margin-bottom: 20px;
}
</style>
</head>
<body>
<div class="container">
<form method="post" onsubmit="return validateData()">
<div class="form-group">
<label>User Name: </label>
<input required="true" type="text" name="username" class="form-control">
</div>
<div class="form-group">
<label>Email: </label>
<input required="true" type="email" name="email" class="form-control">
</div>
<div class="form-group">
<label>Password: </label>
<input required="true" type="password" name="pwd" class="form-control">
</div>
<div class="form-group">
<label>Confirm Password: </label>
<input required="true" type="password" name="confirmPwd" class="form-control">
</div>
<div class="form-group">
<p><a href="list.php">Back List</a></p>
<button class="btn btn-success">Add Student</button>
</div>
</form>
</div>
<script type="text/javascript">
function validateData() {
var pwd = $('[name=pwd]').val()
var confirmPwd = $('[name=confirmPwd]').val()
if(pwd != confirmPwd) {
alert('Mat khau khong khop')
return false
}
return true
}
</script>
</body>
</html>
#delete.php
<?php
if(!empty($_POST)) {
$id = $_POST['id'];
// Them du lieu vao CSDL
// B1. Cach ket noi CSDL
$conn = mysqli_connect('localhost', 'root', '', 'c2110l');
mysqli_set_charset($conn, 'utf8');
// B2. Luu du lieu
$sql = "delete from student where id = $id";
mysqli_query($conn, $sql);
// B3. Ngat ket noi toi CSDL
mysqli_close($conn);
header('Location: list.php');
}
?>
<!DOCTYPE html>
<html>
<head>
<title>Delete student account page</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css" rel="stylesheet">
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.bundle.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
<style type="text/css">
.form-group {
margin-bottom: 20px;
}
</style>
</head>
<body>
<div class="container">
<form method="post">
<h2>Are you sure to delete this student?</h2>
<div class="form-group" style="display: none;">
<label>ID: </label>
<input required="true" type="text" name="id" class="form-control" value="<?=$_GET['id']?>">
</div>
<div class="form-group">
<button class="btn btn-danger">Delete Student</button>
</div>
</form>
</div>
</body>
</html>
#edit.php
<?php
$username = $email = $pwd = "";
if(!empty($_POST)) {
$username = $_POST['username'];
$email = $_POST['email'];
$pwd = $_POST['pwd'];
$id = $_POST['id'];
// Them du lieu vao CSDL
// B1. Cach ket noi CSDL
$conn = mysqli_connect('localhost', 'root', '', 'c2110l');
mysqli_set_charset($conn, 'utf8');
// B2. Luu du lieu
$sql = "update student set username = '$username', email = '$email', password = '$pwd' where id = '$id'";
mysqli_query($conn, $sql);
// B3. Ngat ket noi toi CSDL
mysqli_close($conn);
header('Location: list.php');
}
$id = $_GET['id'];
// Them du lieu vao CSDL
// B1. Cach ket noi CSDL
$conn = mysqli_connect('localhost', 'root', '', 'c2110l');
mysqli_set_charset($conn, 'utf8');
// B2. Luu du lieu
$sql = "select * from student where id = $id";
$resultset = mysqli_query($conn, $sql);
$std = mysqli_fetch_array($resultset, 1);
// B3. Ngat ket noi toi CSDL
mysqli_close($conn);
?>
<!DOCTYPE html>
<html>
<head>
<title>Update student account page</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css" rel="stylesheet">
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.bundle.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
<style type="text/css">
.form-group {
margin-bottom: 20px;
}
</style>
</head>
<body>
<div class="container">
<form method="post" onsubmit="return validateData()">
<div class="form-group" style="display: none;">
<label>ID: </label>
<input required="true" type="text" name="id" class="form-control" value="<?=$std['id']?>">
</div>
<div class="form-group">
<label>User Name: </label>
<input required="true" type="text" name="username" class="form-control" value="<?=$std['username']?>">
</div>
<div class="form-group">
<label>Email: </label>
<input required="true" type="email" name="email" class="form-control" value="<?=$std['email']?>">
</div>
<div class="form-group">
<label>Password: </label>
<input required="true" type="password" name="pwd" class="form-control" value="<?=$std['password']?>">
</div>
<div class="form-group">
<label>Confirm Password: </label>
<input required="true" type="password" name="confirmPwd" class="form-control" value="<?=$std['password']?>">
</div>
<div class="form-group">
<button class="btn btn-warning">Update Student</button>
</div>
</form>
</div>
<script type="text/javascript">
function validateData() {
var pwd = $('[name=pwd]').val()
var confirmPwd = $('[name=confirmPwd]').val()
if(pwd != confirmPwd) {
alert('Mat khau khong khop')
return false
}
return true
}
</script>
</body>
</html>
#list.php
<?php
// Them du lieu vao CSDL
// B1. Cach ket noi CSDL
$conn = mysqli_connect('localhost', 'root', '', 'c2110l');
mysqli_set_charset($conn, 'utf8');
// B2. Luu du lieu
$sql = "select * from student";
$resultset = mysqli_query($conn, $sql);
$data = [];
while(($row = mysqli_fetch_array($resultset, 1)) != null) {
$data[] = $row;
}
// B3. Ngat ket noi toi CSDL
mysqli_close($conn);
// var_dump($data);
?>
<!DOCTYPE html>
<html>
<head>
<title>List student account page</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css" rel="stylesheet">
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.bundle.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
<style type="text/css">
.form-group {
margin-bottom: 20px;
}
</style>
</head>
<body>
<div class="container">
<a href="add.php"><button class="btn btn-success">Add Student</button></a>
<table class="table table-bordered">
<thead>
<tr>
<th>No</th>
<th>User Name</th>
<th>Email</th>
<th style="width: 60px"></th>
<th style="width: 60px"></th>
</tr>
</thead>
<tbody>
<?php
$count = 0;
foreach ($data as $item) {
?>
<tr>
<td><?=++$count?></td>
<td><?=$item['username']?></td>
<td><?=$item['email']?></td>
<td>
<a href="edit.php?id=<?=$item['id']?>"><button class="btn btn-warning">Edit</button></a>
</td>
<td>
<a href="delete.php?id=<?=$item['id']?>"><button class="btn btn-danger">Delete</button></a>
</td>
</tr>
<?php
}
?>
</tbody>
</table>
</div>
</body>
</html>
#readme.txt
Nôi dung kiến thức:
- Thiết kế CSDL trên phpmyadmin (MySQL)
- Chương trình quản lý sinh viên
CRUD: Thêm/sửa/xóa/hiển thị thông tin sinh viên
=============================================================================
CSDL: Quản lý sinh viên
- student
- username
- email
- password
create database C2110L
create table student (
id int primary key auto_increment,
username varchar(50) not null,
email varchar(150) not null,
password varchar(32)
)
Thong tin ket noi toi CSDL
host: localhost
database: C2110L
username: root
password:
==============================================================================
Chức năng dự án:
- Chức năng dự án: add.php
Tags:
Phản hồi từ học viên
5
(Dựa trên đánh giá ngày hôm nay)
![GokiSoft.com [Teacher]](https://www.gravatar.com/avatar/fc6ba9324e017d540af3613b3a77dd21.jpg?s=80&d=mm&r=g)
GokiSoft.com
2022-05-19 13:46:08
#list.php
<?php
require_once('dbhelper.php');
$sql = "select * from student";
$data = executeResult($sql);
?>
<!DOCTYPE html>
<html>
<head>
<title>List student account page</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css" rel="stylesheet">
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.bundle.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
<style type="text/css">
.form-group {
margin-bottom: 20px;
}
</style>
</head>
<body>
<div class="container">
<a href="add.php"><button class="btn btn-success">Add Student</button></a>
<table class="table table-bordered">
<thead>
<tr>
<th>No</th>
<th>User Name</th>
<th>Email</th>
<th style="width: 60px"></th>
<th style="width: 60px"></th>
</tr>
</thead>
<tbody>
<?php
$count = 0;
foreach ($data as $item) {
?>
<tr>
<td><?=++$count?></td>
<td><?=$item['username']?></td>
<td><?=$item['email']?></td>
<td>
<a href="edit.php?id=<?=$item['id']?>"><button class="btn btn-warning">Edit</button></a>
</td>
<td>
<a href="delete.php?id=<?=$item['id']?>"><button class="btn btn-danger">Delete</button></a>
</td>
</tr>
<?php
}
?>
</tbody>
</table>
</div>
</body>
</html>
#edit.php
<?php
require_once('dbhelper.php');
$username = $email = $pwd = "";
if(!empty($_POST)) {
$username = $_POST['username'];
$email = $_POST['email'];
$pwd = $_POST['pwd'];
$id = $_POST['id'];
$sql = "update student set username = '$username', email = '$email', password = '$pwd' where id = '$id'";
execute($sql);
header('Location: list.php');
}
$id = $_GET['id'];
$sql = "select * from student where id = $id";
$std = executeResult($sql, true);
?>
<!DOCTYPE html>
<html>
<head>
<title>Update student account page</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css" rel="stylesheet">
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.bundle.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
<style type="text/css">
.form-group {
margin-bottom: 20px;
}
</style>
</head>
<body>
<div class="container">
<form method="post" onsubmit="return validateData()">
<div class="form-group" style="display: none;">
<label>ID: </label>
<input required="true" type="text" name="id" class="form-control" value="<?=$std['id']?>">
</div>
<div class="form-group">
<label>User Name: </label>
<input required="true" type="text" name="username" class="form-control" value="<?=$std['username']?>">
</div>
<div class="form-group">
<label>Email: </label>
<input required="true" type="email" name="email" class="form-control" value="<?=$std['email']?>">
</div>
<div class="form-group">
<label>Password: </label>
<input required="true" type="password" name="pwd" class="form-control" value="<?=$std['password']?>">
</div>
<div class="form-group">
<label>Confirm Password: </label>
<input required="true" type="password" name="confirmPwd" class="form-control" value="<?=$std['password']?>">
</div>
<div class="form-group">
<button class="btn btn-warning">Update Student</button>
</div>
</form>
</div>
<script type="text/javascript">
function validateData() {
var pwd = $('[name=pwd]').val()
var confirmPwd = $('[name=confirmPwd]').val()
if(pwd != confirmPwd) {
alert('Mat khau khong khop')
return false
}
return true
}
</script>
</body>
</html>
#delete.php
<?php
require_once('dbhelper.php');
if(!empty($_POST)) {
$id = $_POST['id'];
$sql = "delete from student where id = $id";
execute($sql);
header('Location: list.php');
}
?>
<!DOCTYPE html>
<html>
<head>
<title>Delete student account page</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css" rel="stylesheet">
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.bundle.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
<style type="text/css">
.form-group {
margin-bottom: 20px;
}
</style>
</head>
<body>
<div class="container">
<form method="post">
<h2>Are you sure to delete this student?</h2>
<div class="form-group" style="display: none;">
<label>ID: </label>
<input required="true" type="text" name="id" class="form-control" value="<?=$_GET['id']?>">
</div>
<div class="form-group">
<button class="btn btn-danger">Delete Student</button>
</div>
</form>
</div>
</body>
</html>
#dbhelper.php
<?php
require_once('config.php');
function execute($sql) {
// Them du lieu vao CSDL
// B1. Cach ket noi CSDL
$conn = mysqli_connect(HOST, USERNAME, PASSWORD, DATABASE);
mysqli_set_charset($conn, 'utf8');
// B2. Luu du lieu
// $sql = "delete from student where id = $id";
mysqli_query($conn, $sql);
// B3. Ngat ket noi toi CSDL
mysqli_close($conn);
}
function executeResult($sql, $isSingle = false) {
// Them du lieu vao CSDL
// B1. Cach ket noi CSDL
$conn = mysqli_connect(HOST, USERNAME, PASSWORD, DATABASE);
mysqli_set_charset($conn, 'utf8');
// B2. Luu du lieu
$resultset = mysqli_query($conn, $sql);
if($isSingle) {
$data = mysqli_fetch_array($resultset, 1);
} else {
$data = [];
while(($row = mysqli_fetch_array($resultset, 1)) != null) {
$data[] = $row;
}
}
// B3. Ngat ket noi toi CSDL
mysqli_close($conn);
return $data;
}
#config.php
<?php
define('HOST', 'localhost');
define('USERNAME', 'root');
define('PASSWORD', '');
define('DATABASE', 'C2110L');
#add.php
<?php
require_once('dbhelper.php');
// require_once('config.php');
// require_once('config.php');
// require_once('config.php');
// require_once('config.php');
// include_once('config.php');
// require('config.php');
// require('config.php');
// require('config.php');
// require('config.php');
// require('config.php');
$username = $email = $pwd = "";
if(!empty($_POST)) {
$username = $_POST['username'];
$email = $_POST['email'];
$pwd = $_POST['pwd'];
$sql = "insert into student (username, email, password) values ('$username', '$email', '$pwd')";
execute($sql);
}
?>
<!DOCTYPE html>
<html>
<head>
<title>Add student account page</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css" rel="stylesheet">
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.bundle.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
<style type="text/css">
.form-group {
margin-bottom: 20px;
}
</style>
</head>
<body>
<div class="container">
<form method="post" onsubmit="return validateData()">
<div class="form-group">
<label>User Name: </label>
<input required="true" type="text" name="username" class="form-control">
</div>
<div class="form-group">
<label>Email: </label>
<input required="true" type="email" name="email" class="form-control">
</div>
<div class="form-group">
<label>Password: </label>
<input required="true" type="password" name="pwd" class="form-control">
</div>
<div class="form-group">
<label>Confirm Password: </label>
<input required="true" type="password" name="confirmPwd" class="form-control">
</div>
<div class="form-group">
<p><a href="list.php">Back List</a></p>
<button class="btn btn-success">Add Student</button>
</div>
</form>
</div>
<script type="text/javascript">
function validateData() {
var pwd = $('[name=pwd]').val()
var confirmPwd = $('[name=confirmPwd]').val()
if(pwd != confirmPwd) {
alert('Mat khau khong khop')
return false
}
return true
}
</script>
</body>
</html>