Sau đây mình xin chữa đề kiểm tra thết kế và triển khai website đề bài
Đề 1 : Trên máy chủ nội bộ của một thư viện lưu trữ CSDL gồm 2 bảng như sau :
Sách(Mahang,Tensach,Loáiach,Tacgia,MaNXB)
Nhaxuatban(MaNXB,TenNXB,DiaChi)
Trong đó Manxb là trường liên kết 2 bảng trong cơ sở dữ liệu
Tạo 1 file themsach.php cho phép người dùng sử dụng thêm 1 bản ghi vào CSDL sau đó hiện ra tất cả thôgn tin trong CSDL đó theo mẫu sau :
(Ten truy cập: root, mật khẩu : abc123, tên CSDL: thuvien)
Bảng sách :

Bảng nhà xuất bản

Code lập trình :
Đây là những thứ cần để kết nối đến cơ sở dữ liệu và chuẩn bị cho công đoạn show dữ liệu ra và insert dữ liệu vào bảng.
<?php
// mysql_query là câu lệnh kết nối đến server chứa data
$connect = mysql_connect('localhost','root','');
if(!$connect){
// if này để check xem nó có kết nối được đến data ko
echo 'không thành công';
}
//mysql_select_db dùng để chọn cơ sở dữ liệu trên server
$select_db = mysql_select_db('baitest');
if(!$select_db){
//Tương tự cái này để check xem chọn cơ sở dữ liệu có thành công không
echo 'lỗi rồi';
}
mysql_query("set names 'utf8'");
// set này để cài cho sql là ngôn ngữ tiếng việt
?>
Tiếp theo là code để thực hiện các câu truy vấn để insert dữ liệu cũng như show dữ liệu ra ngoài màn hình mình đã có chú thích cho các bạn không hiểu cứ hỏi thoải mái
$result_all = mysql_query('select * from `sach`,`nhaxuatban` where `sach`.`manxb`=`nhaxuatban`.`manxb`');
// select này để lấy toàn bộ dữ liệu từ bảng phone để show ra bảng
// Vì kết quả mình phải lấy dữ liệu từ 2 bảng nên câu truy vấn where này mình cần nối 2 bảng với nhau qua câu where
//nối bảng sách với bảng nhà xuất bản theo trường mã nhà xuất bản
$result_nxb = mysql_query('select * from `nhaxuatban`');
//select nhà xuất bản đề lấy ra các nhà xuất bản đề đổ ra select option
//Code thêm dữ liệu
if(isset($_POST['them'])){
$masach = $_POST['masach'];
$tensach = $_POST['tensach'];
$loaisach = $_POST['loaisach'];
$tacgia = $_POST['tacgia'];
$manxb = $_POST['manxb'];
$string_insert = sprintf('INSERT INTO `sach`( `masach`, `tensach`, `loaisach`, `tacgia`, `manxb`) VALUES ("%s","%s","%s","%s",%d)',$masach,$tensach,$loaisach,$tacgia,$manxb);
$insert = mysql_query($string_insert);
if($insert){
echo 'Thành công rồi';
header("Refresh:0");
}
else{
echo 'lỗi rồi Mời bạn thêm lại';
}
}
Dưới đây là đoạn html để hiển thị được như ảnh mình show ở trên
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Bài test</title>
</head>
<body>
<form action="" method="POST">
<table>
<tr>
<td>Mã sách</td>
<td><input type="text" name="masach"/></td>
</tr>
<tr>
<td>Tên sách</td>
<td><input type="text" name="tensach" /></td>
</tr>
<tr>
<td>Loại sách</td>
<td><input type="text" name="loaisach" /></td>
</tr>
<tr>
<td>Tác Giả</td>
<td><input type="text" name="tacgia" /></td>
</tr>
<tr>
<td>Nhà xuất bản</td>
<td>
<select name="manxb">
<?php
if(isset($result_nxb) && !empty($result_nxb)){
while($row = mysql_fetch_assoc($result_nxb)){
?>
<option value="<?php echo $row['manxb'] ?>"><?php echo $row['tennxb'] ?></option>
<?php
}
}
?>
</select>
</td>
</tr>
<tr>
<td><input type="submit" name="them" value="Thêm" /></td>
</tr>
</table>
</form>
<table border="1">
<tr>
<td>Mã Sách</td>
<td>Tên sách</td>
<td>Loại sách</td>
<td>Tác Giả</td>
<td>Nhà xuất bản </td>
<td>Địa Chỉ</td>
</tr>
<?php if(isset($result_all) && !empty($result_all)){
while ($row = mysql_fetch_assoc($result_all)) {
?>
<tr>
<td><?php echo $row['masach'] ?></td>
<td><?php echo $row['tensach'] ?></td>
<td><?php echo $row['loaisach'] ?></td>
<td><?php echo $row['tacgia'] ?></td>
<td><?php echo $row['tennxb'] ?></td>
<td><?php echo $row['diachi'] ?></td>
</tr>
<?php
}
} ?>
</table>
</body>
</html>
Có vấn đề gì các bạn cứ comment ngay ở dưới mình sẽ trả lời ngay :D
À có đề nào cứ inbox cho mình sẽ làm gấp cho các bạn và hướng dẫn luôn :D