-----
Phần 92. PDO
– thêm thực đơn
Để ý là mấy phần thực hành này đặt tên biến, tên tập tin,
tên hàm, có vẻ lung tung quá. Tạm thời bỏ qua cái này để làm thực hành cho dễ,
rồi sẽ chuẩn hóa lại khi làm việc chính thức. Vì thực tế không phải chỉ có một
cách quy ước đặt tên.
Xem và làm theo clip số 18 của thầy Nguyễn Anh Tuấn:
Lưu lại các đoạn mã để tham khảo.
[thuvien.js]
function kiem_tra_thuc_don() {
var ten_thuc_don
= document.getElementById('th_ten_thuc_don');
if(ten_thuc_don.value
== ""){
alert('Nhập
tên thực đơn');
ten_thuc_don.focus();
return
false;
}
return true;
}
[default.css]
body { background: #ccc; }
h1 { text-align: center; color: #F00; }
#main { width: 700px; margin: 0 auto; border: #f00 solid 1px;
background: #fff; }
.khung { width: 680px; height: 200px; border-bottom: #999 solid
1px; padding: 10px; }
.khung img { width: 250px; float: left; margin-right: 10px; }
[connection.php]
<?php
try
{
//Khai báo đối
tượng PDO
$pdo = new
PDO("mysql:host=localhost;dbname=ql_nha_hang","root","");
//Xuất tiếng
Việt
$pdo->query("SET
NAMES UTF8");
}
catch (PDOException $ex)
{
die($ex->getMessage());
}
?>
[them_thuc_don.php]
<!DOCTYPE html>
<html lang="en">
<head>
<meta
charset="UTF-8">
<title>Thêm
thực đơn</title>
<link
rel="stylesheet" href="default.css">
<script
src="thuvien.js"></script>
</head>
<?php
include("connection.php");
$err = '';
if(isset($_POST['th_luu'])){
//Lấy
thông tin từ form gán vào các biến
$ma_thuc_don
= NULL;
$ten_thuc_don
= $_POST['th_ten_thuc_don'];
$don_gia
= $_POST['th_don_gia'];
$don_gia_khuyen_mai
= $_POST['th_don_gia_khuyen_mai'];
$noi_dung
= $_POST['th_noi_dung'];
$hinh
= $_FILES['th_hinh']['error'] == 0 ? $_FILES['th_hinh']['name'] : '';
//Tạo
lệnh thêm dữ liệu vào CSDL
$sql
= 'INSERT INTO thuc_don VALUES(?,?,?,?,?,?)';
//Khai
báo mảng tham số
$param
= array($ma_thuc_don,$ten_thuc_don,$don_gia,$don_gia_khuyen_mai,$noi_dung,$hinh);
$stmt
= $pdo -> prepare($sql);
$kq
= $stmt -> execute($param);
if($kq){
$err
= 'Thêm dữ liệu thành công!';
//Di
chuyển hình về thư mục chứa hình
if($hinh
!=''){
$kt
= move_uploaded_file($_FILES['th_hinh']['tmp_name'], "images/$hinh");
if($kt){
$err
.= 'upload hình thành công';
}else{
$err
.= 'upload hình không thành công';
}
}
}else{
$err
= 'Quá trình thêm dữ liệu không thành công!';
}
}
?>
<body>
<h3 style="color:red"><?php echo $err;
?></h3>
<div id="main">
<h1>Thực
đơn mới</h1>
<form
action="them_thuc_don.php" name="ManHinhThemThucDon"
method="POST" enctype="multipart/form-data">
<table
cellpadding="2px">
<tr>
<td
width="150px" bgcolor="B0D1EA">Tên thực đơn</td>
<td
colspan="3"><input type="text"
name="th_ten_thuc_don" id="th_ten_thuc_don"
style="width:300px" value=""></td>
</tr>
<tr>
<td
bgcolor="B0D1EA">Đơn giá</td>
<td><input
type="text" name="th_don_gia" id="th_don_gia" style="width:100px"
value=""></td>
<td
bgcolor="B0D1EA">Đơn giá khuyến mãi</td>
<td><input
type="text" name="th_don_gia_khuyen_mai"
id="th_don_gia_khuyen_mai" value=""></td>
</tr>
<tr>
<td
bgcolor="B0D1EA">Nội dung</td>
<td
colspan="3"> <textarea name="th_noi_dung"
id="th_noi_dung" cols="40"
rows="5"></textarea> </td>
</tr>
<tr>
<td
bgcolor="B0D1EA">Hình</td>
<td
colspan="3"><input type="file"
name="th_hinh" id="th_hinh"
value=""></td>
</tr>
<tr>
<td
colspan="4" align="center"><input
type="submit" value="Lưu" name="th_luu"
onclick="return kiem_tra_thuc_don()"></td>
</tr>
</table>
</form>
</div>
<?php
$pdo->NULL;
?>
</body>
</html>
-----------
Cập nhật 1/3/2017
-----------