Ngày nay sự phát triển ngày càng mạnh của công nghệ thông tin đã đem lại rất nhiều tiện ích và góp phần nâng cao chất lượng cuộc sống của con người. Trong những thành tựu của công nghệ thông tin thì thương mại điện tử là một trong những đặc điểm nổi bậc. Thương mại điện tử đã đưa con người tới một kỷ nguyên mà việc mua bán, trao đổi đều được số hóa. Đơn giản hơn là việc thanh toán 1 món hàng chỉ với cái click chuột ngay tại nhà mà không cần phải đi đâu xa. Cùng với tiện ích trên, nhóm đã nghiên cứu và cho ra đời 1 ứng dụng cụ thể của việc mua bán hàng qua mạng là trang web bán laptop.
Tổng quan về thanh toán điện tử
Thanh toán điện tử, hay thanh toán trực tuyến, là hình thức thanh toán chi phí mua bán sản phẩm và dịch vụ qua mạng Thay vì sử dụng tiền mặt, người tiêu dùng thực hiện giao dịch thông qua các hệ thống thẻ thanh toán.
Thẻ thanh toán là phương tiện thanh toán không dùng tiền mặt, cho phép người dùng rút tiền mặt hoặc thanh toán khi mua hàng hóa và dịch vụ tại các điểm chấp nhận thẻ Hệ thống thẻ điện tử bao gồm thẻ tín dụng, thẻ ghi nợ và thẻ rút tiền mặt, do các ngân hàng trong nước và quốc tế phát hành.
Thông tin bí mật của thẻ thanh toán nếu bị lộ có thể gây thiệt hại nghiêm trọng cho người dùng và doanh nghiệp Để đảm bảo an toàn trong thanh toán điện tử, các ngân hàng và công ty bảo mật đã triển khai nhiều giải pháp như ma trận ngẫu nhiên và mã token một lần.
Hình thức thanh toán điện tử đã trở nên phổ biến trên toàn cầu, nhưng tại Việt Nam, nó vẫn chưa phát triển mạnh mẽ và chỉ được áp dụng hạn chế trong một số giao dịch ngoại thương.
Để thực hiện thanh toán điện tử, cả người sử dụng dịch vụ và doanh nghiệp bán hàng đều cần đáp ứng những điều kiện nhất định Người sử dụng dịch vụ phải đăng ký các loại thẻ thanh toán điện tử, trong khi doanh nghiệp bán hàng cần có các phương tiện phù hợp để tiến hành giao dịch thanh toán.
Để sử dụng dịch vụ thanh toán, người tiêu dùng cần đăng ký thẻ thanh toán điện tử từ các ngân hàng Việc sử dụng thẻ này giúp thực hiện giao dịch với bên bán hàng và thuê bao dịch vụ Để giao dịch cả trong nước và quốc tế, người dùng cần sở hữu thẻ thanh toán quốc tế như Visa hoặc Master, trong khi các loại thẻ khác chỉ hỗ trợ thanh toán trong phạm vi nội địa.
Doanh nghiệp bán hàng cần trang bị phương tiện thanh toán điện tử để đáp ứng nhu cầu của khách hàng Hiện nay, nhiều nhà cung cấp dịch vụ sử dụng máy POS để kiểm tra tính hợp lệ của tài khoản người thanh toán, cho phép thực hiện giao dịch ngay lập tức khi khách hàng thanh toán bằng thẻ.
Người bán trên các website thương mại điện tử liên kết với ngân hàng sở hữu thẻ của họ thông qua các Module tích hợp Khi khách hàng nhập thông tin trong một phiên thanh toán, thông tin này được chuyển đến ngân hàng hoặc nhà cung cấp dịch vụ xử lý thanh toán trực tuyến, miễn là người bán có tài khoản Merchant Account Tài khoản này cho phép người bán truy cập vào cơ sở dữ liệu ngân hàng và nhận tiền trực tiếp từ các tài khoản khác Sau khi xác thực tài khoản, nếu người bán chấp nhận, quá trình thanh toán sẽ được thực hiện.
3 Ưu nhược điểm của thanh toán điện tử:
Thanh toán điện tử mang lại lợi ích rõ rệt cho người tiêu dùng và các nhà cung cấp sản phẩm, dịch vụ bằng cách tiết kiệm thời gian và đơn giản hóa quy trình thanh toán Tuy nhiên, hình thức này vẫn chưa phổ biến tại Việt Nam, và sự kết nối giữa các ngân hàng còn hạn chế.
Thanh toán điện tử mang lại nhiều lợi ích cho người tiêu dùng như sự tiện lợi, tiết kiệm thời gian và khả năng truy cập dễ dàng vào dịch vụ Tuy nhiên, bên cạnh những ưu điểm này, cũng tồn tại một số nhược điểm như rủi ro bảo mật thông tin cá nhân và sự phụ thuộc vào công nghệ Đối với nhà cung cấp sản phẩm và dịch vụ, thanh toán điện tử giúp tối ưu hóa quy trình giao dịch và giảm chi phí vận hành, nhưng cũng yêu cầu họ phải đầu tư vào hạ tầng công nghệ và bảo mật.
Mua sắm trực tuyến mang lại nhiều ưu điểm nổi bật, bao gồm tính an toàn cao, đặc biệt khi giao dịch với các sản phẩm có giá trị lớn Quy trình thanh toán được đơn giản hóa, giúp tiết kiệm thời gian cho người tiêu dùng Doanh nghiệp có thể cung cấp dịch vụ và sản phẩm 24/7, không bị ràng buộc bởi thời gian hay khoảng cách địa lý Thêm vào đó, ngay cả khi mất thẻ, khách hàng vẫn có thể giữ được số tiền trong tài khoản của mình.
Mặc dù dịch vụ thanh toán điện tử mang lại nhiều tiện ích, nhưng vẫn tồn tại một số nhược điểm đáng lưu ý Đầu tiên, an ninh thanh toán của các ngân hàng chưa hoàn thiện, dẫn đến nguy cơ tiềm ẩn cho người sử dụng Thứ hai, việc kiểm soát chi tiêu trở nên khó khăn hơn khi sử dụng các phương thức thanh toán này.
Hiện nay, vấn đề thanh toán điện tử đang gặp khó khăn do sự hợp tác chưa chặt chẽ giữa các ngân hàng, đặc biệt là giữa hai liên minh SmartLink với 29 ngân hàng và Banknet, hiệp hội chuyển mạch tài chính quốc gia gồm 7 ngân hàng quốc doanh lớn Để thanh toán điện tử có thể phát triển mạnh mẽ và được triển khai rộng rãi trong nhiều loại hình dịch vụ, cần thiết phải có sự thông suốt trong mối liên minh giữa các ngân hàng này.
Website cung cấp 4 phương thức thanh toán chính để thuận tiện cho việc thanh toán hóa đơn, giúp người dùng dễ dàng lựa chọn phương thức phù hợp nhất hiện nay.
Thanh toán tại thời điểm giao hàng
Hiện nay, nhiều người chọn thanh toán qua PayPal và các cổng thanh toán trực tuyến lớn Tuy nhiên, ở Việt Nam, phần lớn khách hàng vẫn chưa quen với phương thức thanh toán này và vẫn sử dụng thẻ ngân hàng truyền thống.
Mô tả về màn hình giao diện
Màn hình giao diện chính
Màn hình cấu trúc của trang web
Cấu trúc của trang web gồm các phần sau:
Phần đầu hay còn gọi là header
Phần bên trái trang web hay còn gọi là left
Phần bên phải trang web hay còn gọi là right
Phần phía dưới cùng trang web hay còn goi là footer
Phần chính của trang web hay còn gọi là main
Màn hình cắt phần đầu trang web hay còn gọi là header:
Màn hình cắt phần phía trái hay còn gọi là left:
Màn hình cắt phần phía phải của trang web hay còn gọi là right:
Màn hình cắt phần cuối trang web hay còn gọi là footer:
Màn hình chính của trang web hay còn goi là main:
Cách xây dựng mô hình
Chức năng
4 Cách tạo và quản lí cơ sở dữ liệu:
Chương trình gồm các table sau:
Cách tạo và quản lý cơ sở dữ liệu
Mô tả các chức năng chính
Khách hàng khi truy cập vào website và có nhu cầu giao dịch mua bán với công ty cần đăng ký một tài khoản Mỗi khách hàng sẽ có một tài khoản truy cập riêng biệt và có quyền tự chỉnh sửa thông tin cá nhân của mình.
Đăng nhập vào hệ thống cho phép người dùng truy cập nếu đã đăng ký tài khoản Nếu thông tin không có trong cơ sở dữ liệu hoặc mật khẩu sai, hệ thống sẽ yêu cầu người dùng nhập lại thông tin hoặc hướng dẫn đăng ký tài khoản mới.
Khách hàng thường gặp khó khăn trong việc chọn lựa sản phẩm yêu thích do có nhiều lựa chọn Tính năng tìm kiếm sẽ hỗ trợ họ trong việc tìm ra những món hàng phù hợp nhất.
Xử lý nhập thông tin mua laptop: cho phép ban quản trị nhập thông tin mã laptop để hiển thị
Khách hàng sau khi đăng nhập vào hệ thống có thể dễ dàng đặt hàng các sản phẩm trên website với thông tin chi tiết và giá cả cụ thể Nếu khách hàng chọn mua nhiều laptop, hệ thống sẽ tự động đưa vào chi tiết hóa đơn Trong trường hợp khách hàng muốn hủy giao dịch trước khi hoàn tất, họ có thể quay lại trang ban đầu một cách thuận tiện.
Tư vấn trực tuyến: liên kết với yahoo để hổ trợ giải đáp thắc mắc cho khách hàng
Thống kê truy cập: tổng số lượng người truy cập hay đang online
Quảng cáo: liên kêt quảng cáo tới một số trang
Phân tích các modun
Kết nối
Set name utf8: gõ dấu tiếng Việt
Ob_start(): chuyển trang Vì file ketnoi.php được sử dụng ở các file khác nên phải thêm lệnh này.
Tìm kiếm
} else { $ten_sp = $_POST['search'];
} if((isset($_POST['search']) && $_POST['search']!="") || $_GET['kq']) {
The SQL query retrieves specific product details, including image, name, type, brand, price, warranty period, and quantity, from the 'thietbi' and 'loai_sp' tables It filters results based on the product name matching a user-defined variable If no results are found, the total number of records returned is zero.
$tb = "Không tìm thấy từ khóa: \"$ten_sp\" trong cơ sở dữ liệu!";
} else { $tb = "Có $tongsodl kết quả được tìm thấy";
Để lấy giá trị từ trường “kq”, sử dụng $_GET['kq'] Nếu có giá trị (người dùng nhập sản phẩm tìm kiếm), gán cho biến $ten_sp; nếu không, gán giá trị từ $_POST['search'] $_GET[] nhận kết quả từ form qua phương thức GET, trong khi $_POST[] nhận kết quả qua phương thức POST Sử dụng hàm isset() để kiểm tra xem biến đã được thiết lập hay chưa Sau khi lấy giá trị từ form, dùng lệnh mysql_query để quét qua cơ sở dữ liệu và so sánh với sản phẩm mà khách hàng đang tìm kiếm bằng cách sử dụng toán tử LIKE.
Biến $tongsodl được sử dụng để đếm số lượng sản phẩm tìm thấy thông qua câu truy vấn mysql_num_rows Để hiển thị các sản phẩm này, ta sử dụng truy vấn mysql_fetch_row.
Đăng nhập
Khi người dùng nhấn vào nút “login”, hệ thống sẽ sử dụng $_GET['action'] để lấy giá trị email và mật khẩu, sau đó so sánh với dữ liệu trong cơ sở dữ liệu thông qua lệnh “mysql_query” Nếu thông tin chính xác, người dùng sẽ nhận được thông báo “chào mừng”, ngược lại, hệ thống sẽ hiển thị thông báo “Email hoặc mật khẩu không đúng!” và đưa người dùng trở về trang chủ.
Đăng xuất
Nếu bấm vào “logout” thì sẽ hủy phiên sesstion làm việc với session_destroy().
Đăng ký
Để đăng ký làm thành viên trên trang web, ngoài việc sử dụng mẫu đăng ký, cần áp dụng script Xy_ly_dk() để xử lý thông tin đăng ký sao cho phù hợp với quy định, bao gồm kiểm tra tính hợp lệ của email, đảm bảo mật khẩu không để trống và xác nhận các mục có yêu cầu.
Tư vấn trực tuyến
Tư vấn khách hàng
The provided code automatically initiates a Yahoo chat with the user n_anh_linh2005.
Thống kê truy cập
Các function online(), today(), yesterday(), total(), avg() được tính toán (thuật toán) từ trang bodem.php
8 Xử lí đặt hàng: a chọn sản phẩm
$id_tb = $_GET['id_tb']; if($id_tb != "") // Nếu có ID truyền vào
// Kiểm tra xem id này có trong CSDL hay k?
$q = mysql_query("SELECT Ma_tb FROM thietbi WHERE Ma_tb in ('$id_tb')");
// Nếu tồn tại if($num_q == 1)
// nếu id này có trong giỏ hàng rồi if(isset($_SESSION['giohang'][$id_tb]))
// Tăng số lượng nó lên
} else // Chưa có trong giỏ hàng (mới chọn)
$_SESSION['giohang'][$id_tb] = 1; // Số lượng mặc định là 1
// Chuyển tức khắc qua trang giỏ hàng header("location: /index.php?frame=giohang");
{ echo "
Không tồn tại sản phẩm này!
"; header("refresh:3; /index.php?frame=giohang");} else // Nếu không có id truyền vào
{ echo "
Access Denny!
";23 session_start(); ob_start(); Đưa dữ liệu xuất trước khi gọi header vào biến, ta có thể gọi các hàm header (SESSION,
Để tránh lỗi khi gọi header trong PHP, cần sử dụng ob_start() để tạm giữ dữ liệu trong bộ đệm trước khi xuất Sau khi khách hàng chọn sản phẩm, hệ thống sẽ kiểm tra xem ID sản phẩm có tồn tại trong cơ sở dữ liệu hay không bằng câu lệnh SQL: $q = mysql_query("SELECT Ma_tb FROM thietbi WHERE Ma_tb in ('$id_tb')") Nếu sản phẩm đã có trong giỏ hàng, sẽ thực hiện các thao tác tiếp theo.
// Tăng số lượng nó lên
} else // Chưa có trong giỏ hàng (mới chọn)
$_SESSION['giohang'][$id_tb] = 1; // Số lượng mặc định là 1
Khi xử lý sản phẩm trong giỏ hàng, nếu sản phẩm đã tồn tại, chỉ cần tăng số lượng của nó lên; nếu không, sản phẩm sẽ được thêm với số lượng mặc định là 1 Sau khi điều chỉnh, người dùng sẽ được chuyển đến trang giỏ hàng Để xóa sản phẩm khỏi giỏ hàng, cần thực hiện các bước phù hợp.
Khi khách hàng chọn "xóa sản phẩm", hàm unset() sẽ được sử dụng để loại bỏ sản phẩm khỏi giỏ hàng Để xóa toàn bộ hóa đơn, cần thỏa mãn hai điều kiện: nhấn xóa giỏ hàng ($_GET['del_all']=="true") và giỏ hàng phải có sản phẩm Trong trường hợp này, vòng lặp foreach sẽ được thực hiện để xóa tất cả các sản phẩm bằng câu lệnh unset Cuối cùng, giỏ hàng sẽ được hiển thị lại.
$tongcong = 0; foreach($giohang as $id_sp => $sl)
// truy van lay thong tin san pham
$truyvan_gh = mysql_query("SELECT Ten_tb,Ma_loai,Ten_hieu,concat(Gia_ban,'
VND'),Bao_hanh,So_luong,Hinh_anh FROM thietbi WHERE Ma_tb in ('$id_sp')");
The code snippet retrieves data from a MySQL query and displays it as a clickable link, directing users to a detailed page based on the product ID It also shows the quantity of the product in red, along with its total price calculated by multiplying the quantity by the unit price, all formatted with a horizontal rule for separation.
Thành tiền: VND
Xem giỏ hàng Xóa giỏ hàng
Sau khi lựa chọn sản phẩm, chúng ta sử dụng câu lệnh mysql_query() để truy xuất thông tin sản phẩm cần hiển thị Biến $tongcong sẽ được tính toán để tổng hợp giá trị tiền phải thanh toán cho các sản phẩm đó.
Trang quản trị chỉ có thể truy cập bởi nhóm quản trị viên, nơi quản lý thông tin sản phẩm Trong cơ sở dữ liệu, mục khach_hang được phân biệt bằng Ma_cv: nếu Ma_cv = 1, đó là quản trị viên; nếu Ma_cv = 0, đó là người dùng bình thường.
$id_sp = $_GET['id_sp'];
// Neu co an nut cap nhat if(isset($_GET['id_sp']) && $_POST['capnhat'])
$ma_tb = $_POST['ma_tb'];
$ten_tb = $_POST['ten_tb'];
$file = "thietbi/".$_FILES['file']['name'];
// Neu khong chon file if($_FILES['file']['name'] == "")
The SQL query updates the 'thietbi' table by modifying the fields 'Ma_tb', 'Ten_tb', 'Ma_loai', 'Ten_hieu', 'Dac_tinh', 'Gia_ban', 'Bao_hanh', and 'So_luong' for a specific device identified by 'Ma_tb' equal to '$id_sp'.
The provided code snippet updates a device record in the database by modifying various fields, including the device code, name, category code, brand, specifications, price, quantity, warranty, and image It also handles the uploading of an image file to a designated directory on the server.
$tb = "Cập nhật thành công!";
$truyvan_qlsp = mysql_query("SELECT
The SQL query retrieves information from the 'thietbi' and 'loai_sp' tables, specifically selecting columns such as device code, device name, type code, brand name, specifications, price, warranty, quantity, and product type It filters the results by matching the product type code in 'loai_sp' with the device type in 'thietbi', and it targets a specific device using the provided product ID.
$r = mysql_fetch_array($truyvan_qlsp);
Để chỉnh sửa thuộc tính sản phẩm, chúng ta sử dụng câu truy vấn mysql_query() với lệnh update nhằm cập nhật thông tin trong cơ sở dữ liệu Các thuộc tính này được lấy từ $_POST[] vì chúng nằm trong form với phương thức là post.
Cập nhật sản phẩm tương tự như việc sử dụng lệnh insert thay vì update Khi thêm sản phẩm mới, cần đảm bảo có mối liên hệ với bảng loại sản phẩm, do hai bảng này có sự ràng buộc với nhau.
Cập nhật hay thêm quảng cáo đều được thực hiện tương tự
28 a Phần bên dưới chứa các biến được sử dụng trong phần send mail
$flag_click_sendMail_button = false;
To trigger the subsequent actions, a flag is activated when the 'sending' parameter is detected in the POST request If this flag is set to true, the system will proceed with executing the tasks that follow.
$headers = "Content-type:text/html;charset=UTF-8" "\r\n";
$headers = "From: " "\r\n"; mail("EmailReceiver: $emailReceiver","SubjectTitle:
$subjectTitle",$message,"From: $email"); echo "Gửi thành công";} c Xử lý trang javascript:
HEIGHT_MULTIPLIER = 60; var EW_DHTMLEditors = []; function EW_UpdateTextArea() { if (typeof EW_DHTMLEditors != 'undefined') { if (FCKeditorAPI) { var inst; for (inst in FCKeditorAPI. Instances)
d Xử lý trang chính của sendmail:
?>