Khái niệm Thương mại điện tử còn gọi là thị trường điện tử, thị trường ảo, Commerce hay Business là quy trình mua bán thông qua việc truyền dữ liệu giữa các máy tính trongchính sách phân
Trang 1LỜI MỞ ĐẦU
Ngày nay Công nghệ thông tin đóng vai trò rất quan trọng đối với sự phát triển kinh tế
-xã hội của mỗi quốc gia, chiếm một vị trí quan trọng trong mọi lĩnh vực đời sống, trởthành động lực cơ bản của sự phát triển kinh tế - xã hội, đưa thế giới chuyển từ kỷnguyên công nghiệp sang kỷ nguyên thông tin và phát triển kinh tế tri thức Đối với bất
kỳ tổ chức nào, từ doanh nghiệp đến các tổ chức chính phủ giải quyết các bài toán nhằmtối ưu hóa hoạt động nghiệp vụ, kinh doanh và quản lý của mình dựa trên cơ sở ứng dụngcông nghệ thông tin là yêu cầu quan trọng được đặt lên hàng đầu Trong thời đại bùng nổcông nghệ thông tin và xu hướng phát triển kinh tế mạnh mẽ như hiện nay, nhu cầu thiết
kế và quản trị Website cho cá nhân hoặc các tổ chức, cơ quan, đã và đang trở thành nhucầu cấp bách Chính vì vậy thiết kế và quản trị Website ngày càng được rất nhiều ngườiyêu thích và chọn làm hướng đi riêng cho mình
Với những kiến thức được học về thiết kế website, trong lần thực tập tốt nghiệp này em
đã chọn đề tài "Xây dựng website cho công ty TNHH PHÚC TẤN "
Trong quá trình thực hiện đề tài do chưa có kinh nghiệm nhiều lên em vẫn mắc phảinhững sai sót nhỏ mong nhận được sự góp ý của các thầy cô và các bạn để đề tài hoànthiện hơn
Cuối cùng em xin chân thành cảm ơn thầy giáo Nguyễn Văn Huynh người đã trực tiếphướng dẫn và tận tình giúp đỡ em trong quá trình thực hiện đề tài này
Sinh viên thực hiện
NGÔ CÔNG VIỆT
Trang 2LỜI CẢM ƠN
Sau quá trình học tập và nghiên cứu môn thiết kế Web em đã không ngừng được mởmang kiến thức và tầm hiểu biết về lĩnh vực Công nghệ Thông tin qua sự dạy dỗ, đào tạotận tình của thầy Nguyễn Văn Huynh và sự học hỏi lẫn nhau giữa bạn bè cùng khóa
Thông qua bản Báo Cáo này, em xin được gửi lời chân thành cảm ơn đến BanGiám Hiệu Trường và trên hết là Giáo viên Khoa CNTT nhà trường đã tạo những điềukiện tốt nhất cho em trong suốt thời gian học tập và sinh hoạt tại trường; xin chân thànhcảm ơn thầy Nguyễn Văn Huynh – nguyên là phó khoa khoa CNTT - đã phụ trách vàhướng dẫn em tận tình trong suốt khóa học vừa qua
Em xin chân thành cảm ơn Quý thầy cô đã nhiệt tình giảng dạy, truyền đạt nhữngkiến thức, kinh nghiệm quý báu và hơn hết là tình cảm mà Quý thầy cô đã dành cho emtrong suốt quá trình giảng dạy
Em cũng xin được cảm ơn những người bạn đã gắn bó, chia sẻ rất nhiều kinhnghiệm và những kiến thức và nhất là trong thời gian thực hiện đề tài để em có thể hoànthành một cách thành công tốt đẹp nhất
SVTH : NGÔ CÔNG VIỆT
Trang 3
MỤC LỤC
CHƯƠNG I: CƠ SỞ LÝ THUYẾT 1
1.1 THƯƠNG MẠI ĐIỆN TỬ 1
1.1.1 Khái niệm 1
1.1.2 Đặc trưng của Thương mại điện tử 1
1.1.3 Lợi ích của thương mại điện tử (TMĐT) 1
1.1.4 Các loại hình giao dịch thương mại điện tử 2
1.1.5 Vấn đề thanh toán trong thương mại điện tử 2
1.1.5.1 Thanh toán off-line 2
1.1.5.2 Thanh toán online 3
1.2.TỔNG QUAN VỀ APPSERVER, PHP, MYSQL 5
1.2.1 Apache server 5
1.2.2 Giới thiệu PHP 5
1.2.2.1 PHP là gì 5
1.2.2.2 Sử dụng PHP 6
1.2.2.3 Kiểu dữ liệu và chuyển đổi kiểu dữ liệu trong PHP 6
1.2.3 Cơ sở dữ liệu MySQL 6
1.2.3.1 Các kiểu dữ liệu trong MySQL 7
1.2.3.2 Loại dữ liệu numeric 7
1.2.3.3 Loại dữ liệu Datet and Time 8
1.2.3.4 Kiểu dữ liệu String 9
1.2.3.5 Các hàm thông dụng trong MySQL 10
1.2.4 Truy vấn cơ sở dữ liệu MySQL và PHP: 16
Lựa chọn CSDL: 18
CHƯƠNG 2: NÊU VẤN ĐỀ GIỚI THIỆU VỀ DỰ ÁN 22
2.1 Giới thiệu : 22
2.2 Tóm tắt dự án : 22
2.3 Hệ thống dự định sẽ làm: 23
2.4 Xác định yêu cầu khách hàng 25
2.4.1 Đối với khách hàng truy cập đến Website: 25
2.4.2 Đối với người quản trị Website: 27
2.5 Phân tích yêu cầu khách hàng 28
Trang 42.5.1-Phần dành cho người dùng : 29
2.5.1.1 Sơ đồ phân rã chức năng : 29
2.5.1.2 Phân tích chi tiết các chức năng: 29
2.5.2 Phần dành cho người quản trị (Admin): 35
2.5.2.1 Sơ đồ phân rã chức năng : 36
2.5.2.2 Mô tả chi tiết chức năng : 36
2.5.2.3 Trang chủ Administrator : 36
2.6 Giao diện người dùng : 46
2.6.1 - Giao diện quản trị : 55
Trang 6CHƯƠNG I: CƠ SỞ LÝ THUYẾT
1.1 THƯƠNG MẠI ĐIỆN TỬ
1.1.1 Khái niệm
Thương mại điện tử (còn gọi là thị trường điện tử, thị trường ảo, Commerce hay Business) là quy trình mua bán thông qua việc truyền dữ liệu giữa các máy tính trongchính sách phân phối của tiếp thị Tại đây một mối quan hệ thương mại hay dịch vụ trựctiếp giữa người cung cấp và khách hàng được tiến hành thông qua Internet Hiểu theonghĩa rộng, thương mại điện tử gồm tất cả các loại giao dịch thương mại mà trong đó cácđối tác giao dịch sử dụng các kỹ thuật thông tin trong khuôn khổ chào mời, thỏa thuậnhay cung cấp dịch vụ
E-1.1.2 Đặc trưng của Thương mại điện tử
So với thương mại truyền thống, Thương mại điện tử có một số điểm khác biệt sau:
- Các bên tiến hành giao dịch trong Thương mại điện tử không tiếp xúc trực tiếp với nhau
và không đòi hỏi phải biết nhau từ trước
- Các giao dịch thương mại truyền thống được thực hiện với sự tồn tại của khái niệm biếngiới quốc gia, còn Thương mại điện tử được thực hiện trong một thị trường không có biêngiới (thị trường thống nhất toàn cầu) Thương mại điện tử trực tiếp tác động tới môitrường cạnh tranh toàn cầu
- Trong hoạt động giao dịch Thương mại điện tử đều có sự tham gia của ít nhất ba chủthể Trong đó có một bên không thể thiếu được đó là nhà cung cấp dịch vụ mạng, các cơquan chứng thực
- Đối với thương mại truyền thống thì mạng lưới thông tin chỉ là phương tiện để trao đổi dữliệu, còn đối với Thương mại điện tử thì mạng lưới thông tin chính là thị trường
1.1.3 Lợi ích của thương mại điện tử (TMĐT)
Trang 7- TMĐT giúp cho các doanh nghiệp nắm được thông tin phong phú về thị trường và đốitác.
- TMĐT giúp giảm chi phí sản xuất
- TMĐT giúp giảm chi phí bán hàng và tiếp thị
- TMĐT qua INTERNET giúp người tiêu dùng và các doanh nghiệp giảm đáng kể thờigian và chí phí giao dịch
- TMĐT tạo điều kiện cho việc thiết lập và củng cố mối quan hệ giữa các thành phầntham gia vào quá trình thương mại
- Tạo điều kiện sớm tiếp cận nền kinh tế số hoá
1.1.4 Các loại hình giao dịch thương mại điện tử
Trong Thương mại điện tử có ba chủ thể tham gia: Doanh nghiệp (B) giữ vai trò động lựcphát triển Thương mại điện tử, người tiêu dùng (C) giữ vai trò quyết định sự thành côngcủa Thương mại điện tử và chính phủ (G) giữ vai trò định hướng, điều tiết và quản lý Từcác mối quan hệ giữa các chủ thể trên ta có các loại giao dịch Thương mại điện tử: B2B,B2C, B2G, C2G, C2C… trong đó B2B và B2C là hai loại hình giao dịch Thương mạiđiện tử quan trọng nhất
Business-to-Business (B2B): Doanh nghiệp với doanh nghiệp
Business-to-Consumer (B2C): Doanh nghiệp với người tiêu dùng
1.1.5 Vấn đề thanh toán trong thương mại điện tử
Ở các giao dịch truyền thống, người mua và người bán gặp gỡ nhau Hàng hóa và tiềnđược trao chuyển trực tiếp
Ngược lại trên thương mại điện tử đúng nghĩa, người mua và người bán tham gia mạnginternet toàn cầu, hoàn toàn không có ràng buộc địa lý Với sự bùng nổ mua bán quamạng thì vấn đề thanh toán rất được quan tâm ở trên thế giới cũng như ở Việt Nam Hiệnnay đang tồn tại 2 kiểu thanh toán là off-line và online
1.1.5.1 Thanh toán off-line
Thanh toán off-line có nghĩa là người mua vẫn phải trực tiếp thực hiện quá trình trả tiềncho người bán bằng cách này hay cách khác trước khi nhận được hàng Ví dụ như ra ngânhàng thực hiện lệnh chuyển khoản đến tài khoản người bán hay thậm chí gửi tiền qua
Trang 8dịch vụ chuyển phát nhanh của bưu điện Chú ý là trong khi đó việc chọn hàng hóa muavẫn hoàn toàn được thực hiện trên website
1.1.5.2 Thanh toán online
Mục tiêu của thanh toán online là khắc phục yếu điểm của hình thức thanh toán off-line:người dùng chỉ cần đồng ý mua hay không mua thì quá trình chuyển tiền sang
nhà cung cấp được tiến hành hoàn toàn tự động Thực hiện được quá trình này có nghĩa
là loại bỏ cảm giác ngại ngần trong mua sắm, thúc đẩy xã hội tiêu dùng Để thực hiệnđược điều đó thì cần có thêm những bên tham gia khác
Trong thanh toán B2C qua mạng, đại đa số người mua dùng thẻ tín dụng để thanh toán.Thẻ tín dụng là loại thẻ Visa, MasterCard có tính quốc tế, chủ thẻ có thể dùng được trêntoàn cầu
Ở Việt Nam, cá nhân hay tổ chức có thể đăng ký làm thẻ tín dụng với các ngân hàng nhưACB, Vietcombank Trên thẻ có các thông số sau: hình chủ sở hữu thẻ, họ và tên chủ sởhữu thẻ, số thẻ (Visa Electron và MasterCard đều có 16 chữ số), thời hạn của thẻ, mặt sauthẻ có dòng số an toàn (security code) tối thiểu là ba chữ số, và một số thông số kháccùng với các chip điện tử hoặc vạch từ (magnetic stripe)
a Các vai trò tham gia
Khách hàng
Doanh nghiệp
nhà cung cấp dịch vụ xử lý thanh toán qua mạng (DVTT)
Ngân hàng tại Việt Nam
Sơ đồ tương tác khi Doanh nghiệp bán hàng mua dịch vụ thanh toán qua mạng của nhàcung cấp thứ 3
Trang 9Hình 1.6: Sơ đồ tương tác khi Doanh nghiệp bán hàng mua dịch vụ thanh toán qua mạng của nhà cung cấp thứ 3
b Điều kiện tiên quyết để có thể tham gia thanh toán trực tuyến
Đối với Doanh nghiệp bán hàng
- Đăng ký tài khoản tại nhà cung cấp dịch vụ xử lý thanh toán qua mạng
- Đăng ký một tài khoản ngân hàng tại một ngân hàng tại Việt Nam Tài khoản này dùng
để nhận tiền chuyển về khi bán hàng
Đối với Khách mua hàng
- Mua thẻ tín dụng Visa hoặc Master từ các ngân hàng tại Việt Nam Các ngân hàng này
là đại lý phát hành thẻ tín dụng cho các tổ chức tài chính lớn ở nước ngoài
Vì sao phải có Nhà cung cấp dịch vụ thanh toán thứ 3
- Nhiều ngân hàng không thực hiện chức năng bảo mật và chấp nhận thanh toán trực tiếpbằng thẻ tín dụng đối với khách hàng tại Việt Nam
- Đòi hỏi có một vai trò trung gian có uy tín đã được xây dựng hạ tầng một cách hoànhảo, đứng ra giao tiếp với khách hàng, ngân hàng cũng như các trung tâm xử lý thẻ tíndụng quốc tế
d Một số chính sách cần lưu ý đối với doanh nghiệp bán hàng
Trang 10Rủi ro khi gặp gian lận trong thanh toán qua mạng: người bán sẽ chịu mọi thiệt hại, vừakhông nhận được tiền, vừa bị mất $10 - $30 mỗi giao dịch gian lận
Nhà cung cấp dịch vụ thanh toán qua mạng gửi tiền cho người bán theo định kỳ hàngtháng (có thể hàng tuần nếu tổng giá trị giao dịch lớn) Tuy nhiên, tổng giá trị giao dịchtrong tháng phải lớn hơn một mức quy định (như 2checkout quy định mức $600) thì họmới gửi, nếu thấp hơn, họ sẽ để cộng dồn vào tháng sau Mỗi lần gửi như thế có thể phátsinh chi phí, tuy không nhiều
1.2.TỔNG QUAN VỀ APPSERVER, PHP, MYSQL
1.2.1 Apache server
Trên thị trường tồn tại nhiều phần mền Websever khác nhau như : Warm XamppApachetriad, IIS…, mỗi loại đều có những ưu nhược điểm riêng điển hình là sản phẩmthương mại của do Microsoft phát triển, nó rất thích hợp với các chương trình dịch củaMicrosoft hơn còn với các trình biên dịch khác thì ít hỗ trợ hơn Apperv Web server docông ty Apache phát triển được cung cấp miễn phí và hỗ trợ nhiều chương trình chạy trênnhiều môi trường như Microsoft, Linux, Unix Apache là Web server phổ biến nhất hiệnnày, chiếm khoảng 60% thị trường máy chủ Web trên thế giới chứng tỏ sự mạnh mẽ vàđáng tin cậy của nó
Sau khi cài đặt cần phải sửa File cấu hình của Apache (mặc định là C:\Appserv\), tìmkiếm dòng chứa lệnh www, thay tham số bằng thư mục sẽ chứa bằng các trang web củamình Sau đó khởi động lại Appserv là được
1.2.2 Giới thiệu PHP
Cùng với Apache ,PHP và MySQL đã trở thành chuẩn trên các máy chủ Web Rất
nhiều phần mền Web mạnh sử dụng PHP và MySQL (PHP Nuke Vbuletin, Joomla,Wordpress, Drupal…)
PHP là ngôn ngữ có cú pháp gần giống Perl nhưng tốc độ dịch của nó được các chuyêngia đánh giá nhanh hơn ASP 5 lần, chạy trên nhiều hệ điều hành khác nhau và có thể kếthợp hoàn hảo với MySQL ngoài ra nó còn được Apache hỗ trợ như là một modul cơ bản
1.2.2.1 PHP là gì
PHP ra đời khoảng năm 1994, do một người phát minh mang tên Rasmus Lerdorf vàđược nhiều người phát triển cho đến ngày hôm nay PHP được sử dụng khá nhiều trongcác ứng dụng Web về thương mại điện tử, tính đến năm 2001 có khoảng 5 triệu tên miền
sử dụng mã nguồn PHP
Trang 11PHP là một phiên bản mã nguồn mở, điều đó cho phép bạn có thể làm việc trên mãnguồn, thêm, chỉnh sửa, sử dụng hay phân phối chúng.
1.2.2.2 Sử dụng PHP
Để có thể biên dịch các mã lệnh PHP thì khi bạn đưa mã nguồn lên Webserver bạn cầnphải cấu hình PHP trên Server có cài IIS (Internet Information Server) Tuy nhiên đa sốcác Webserver hiện nay đều hỗ trợ các trình biên dịch mã lệnh PHP cho nên chúng takhông cần phải quá quan tâm tới việc cài đặt cấu hình PHP trên Server
Để có thể test các ứng dụng PHP trên máy tính khi đang thiết kế mã nguồn, bạn có thể càitrình biên dịch mã lệnh PHP từ bộ cài AppServ hoặc một số bộ cài khác Cũng cần lưu ýkhi trên máy bạn cài đồng thời nhiều trình biên dịch mã nguồn, bạn nên cài PHP ở mộtcổng (port) khác để tránh xung đột, hoặc khi bạn biên dịch mã nguồn PHP thì nên tạmthời tắt các Webserver khác trong IIS
1.2.2.3 Kiểu dữ liệu và chuyển đổi kiểu dữ liệu trong PHP
PHP hỗ trợ 5 kiểu dữ liệu cơ bản:
+ Integer: Sử dụng hầu hết cho các biến có giá trịlà số
+ Double: Sử dụng cho các biến kiểu số thực
+ String: Sử dụng cho các biến có kiểu xâu, chuỗi
+ Array: Sử dụng cho các biến có kiểu mảng và các phần tử có cùng kiểu
+ Object: Sử dụng cho các biến có kiểu dữ liệu là đối tượng của lớp
Kiểu dữ liệu của một biến phụ thuộc vào giá trị đầu tiên mà bạn gán cho biến đó.Tuy nhiên ta hoàn toàn có thể chuyển đổi kiểu dữ liệu bằng cách để kiểu dữ liệu cầnchuyển trong cặp dấu ngoặc đơn và đặt trước giá trị cần chuyển
1.2.3 Cơ sở dữ liệu MySQL
MySQL là cơ sở dữ liệu được sử dụng cho các ứng dụng Web có quy mô vừa và nhỏ.Tuy không phải là một cơ sở dữ liệu lớn nhưng chúng cũng có trình giao diện trênWindows hay Linux, cho phép người dùng có thể thao tác các hành động liên quan đến
cơ sở dữ liệu
Trang 12Cũng giống như các cơ sở dữ liệu, khi làm việc với cơ sở dữ liệu MySQL, bạn đăng kýkết nối, tạo cơ sở dữ liệu, quản lý người dùng, phần quyền sử dụng, thiết kế đối tượngTable của cơ sở dữ liệu và xử lý dữ liệu.
Tuy nhiên, trong bất kỳ ứng dụng cơ sở dữ liệu nào cũng vậy, nếu bản thân chúng có hỗtrợ một trình giao diện đồ hoạ, bạn có thể sử dụng chúng tiện lợi hơn các sử dụngCommand line Bởi vì, cho dù bạn điều khiển MySQL dưới bất kỳ hình thức nào, mụcđích cũng quản lý và thao tác cơ sở dữ liệu
1.2.3.1 Các kiểu dữ liệu trong MySQL
Trước khi thiết kế cơ sở dữ liệu trên MySQL, bạn cần phải tham khảo một số kiểu dữ liệuthường dùng, chúng bao gồm các nhóm như: numeric, date and time và string
Đều cần lưu ý trong khi thiết kế cơ sở dữ liệu, bạn cần phải xem xét kiểu dữ liệu cho môtcột trong Table sao cho phù hợp với dữ liệu của thế giới thực
Điều này có nghĩa là khi chọn dữ liệu cho cột trong Table, bạn phải xem xét đến loại dữliệu cần lưu trữ thuộc nhóm kiểu dữ liệu nào, chiều dài cũng như các ràng buộc khác,nhằm khai báo cho phù hợp
1.2.3.2 Loại dữ liệu numeric
Kiểu dữ liệu numeric bao gồm kiểu số nguyên trình bày trong bảng dưới đây:
smallint -32768 ->32767 hay 0 65535 2 Số nguyên rất nhỏ
mediumint -8388608 -> 838860 hay
0 16777215
Trang 13
Và kiểu số chấm động, trong trường hợp dữ liệu kiểu dấu chấm động bạn cần phảichỉ rõ bao nhiều số sau đấu phần lẻ như trong bảng:
dạng Singlehay double
±3.40282346638
dạng SingleDouble(M,D) ±1.7976931348623157308
1.2.3.3 Loại dữ liệu Datet and Time
Kiểu dữ liệu Date and Time cho phép bạn nhập liệu dưới dạng chuỗi hay dạng số nhưtrong bảng:
Trang 14TimeStamp[(M)] 1970-01-01 00:00:00 TimeStamp trình bày dưới
1.2.3.4 Kiểu dữ liệu String
Kiểu dữ liệu String chia làm ba loại:
Loại thứ nhất như char (chiều dài cố định) và varchar (chiều dài biến thiên) Char chophép bạn nhập liệu dưới dạng chuỗi với chiếu dài lớn nhất bằng chiều dài bạn đã địnhnghĩa, nhưng khi truy cập dữ liệu trên Field có khai báo dạng này, bạn cần phải xử lýkhoảng trắng Điều này có nghĩa là nếu khai báo chiều dài là 10, nhưng bạn chỉ nhập chuỗi 4 ký tự, MySQL lưu trữ trong bộ nhớ chiều dài 10
Ngược lại với kiểu dữ liệu Char là Varchar, chiều dài lớn hất người dùng có thể nhập vàobằng chiều dài bạn đã định nghĩa cho Field này, bộ nhớ chỉ lưu trữ chiều dài đúng vớichiều dài của chuỗi bạn đã nhập
Như vậy, có nghĩa là nếu bạn khai báo kiểu varchar 10 ký tự, nhưng bạn hcỉ nhập 5 ký tự,MySQL chỉ lưu trữ chiều dài 5 ký tự, ngoài ra, khi bạn truy cập đến Field có kiểu dữ liệunày, bạn không cần phải giải quyết khoảng trắng
Loại thứ hai là Text hay Blob, Text cho phép lưu chuỗi rất lớn, Blob cho phép lưu đốitượng nhị phân Loại thứ 3 là Enum và Set Bạn có thể tham khảo cả ba loại trên trongbảng sau:
255 ký tự
Varchar 1-255 characters Chiều dài của chuỗi lớn nhất
255 ký tự (characters)
đối tượng nhị phân cở 255
Trang 15blob vừa khoảng 16,777,215characters.
chuỗi dạng văn bản vừakhoảng 16,777,215 characters
4,294,967,295 characters
chuỗi dạng văn bản lớnkhoảng 4,294,967,295
characters
1.2.3.5 Các hàm thông dụng trong MySQL
a Các hàm trong phát biểu GROUB BY
Hàm AVG: Hàm trả về giá trị bình quân của cột hay trường trong câu truy vấn, ví
dụ như phát biểu sau:
Select AVG(Amount)
Trang 17Kết quả trả về như sau: 84
Hàm Char: Hàm này chuyển đổi kiểu mã ASCII từ số nguyên sang dạng chuỗi:
Trang 18Select char(35)
Kết quả trả về như sau: #
Hàm UPPER: Hàm này chuyển đổi chuỗi sang kiểu chữ hoạ:
Select UPPER('mobile’)
Kết quả trả về như sau: MOBILE
Hàm LOWER: Hàm này chuyển đổi chuỗi sang kiểu chữ thường:
Select LOWER(CongViet’)
Kết quả trả về như sau: congviet
Hàm Len: Hàm này trả về chiều dài của chuỗi:
Select len('I Love You')
Kết quả trả về như sau: 10
Thủ tục LTRIM: Thủ tục loại bỏ khoảng trắng bên trái của chuỗi
Select ltrim(' Tuyen')
Kết quả trả về như sau: ‘Tuyen’
Thủ tục RTRIM: Thủ tục loại bỏ khoảng trắng bên phải của chuỗiï:
Trang 19Select(‘Le Tuyen ')
Kết quả trả về như sau: ‘Le Tuyen’
Hàm Left: Hàm trả về chuỗi bên trái tính từ đầu cho đến vị trí thứ n:
Select left('Le Ngoc Tuyen',2)
Kết quả trả về như sau: 'Le'
Hàm Right: Hàm trả về chuỗi bên phải tính từ cuối cho đến vị trí thứ n:
Select Right(‘Le Ngoc Tuyen',5)
Kết quả trả về như sau: ‘Tuyen’
Hàm Instr: Hàm trả về vị trí chuỗi bắt đầu của chuỗi con trong chuỗi xét:
Select INSTR ('Tuyen','Le Ngoc Tuyen')
Kết quả trả về như sau: 9
9 là tương đương vị trí thứ 9 của chữ ‘Tuyen’ trong chuỗi "Le Ngoc Tuyen"
c Các hàm về xử lý thời gian
Hàm CurDate(): Hàm trả về ngày, tháng và năm hiện hành của hệ thống:
Select curdate() as 'Today is’
Trang 20Kết quả trả về như sau:
Today is
-2001-11-21
Hàm CurTime(): Hàm trả về giờ, phút và giây hiện hành của hệ thống:
Select curtime() as 'Time is’
Kết quả trả về như sau:
Period_diff (OrderDate, getdate())
as 'So ngay giua ngay thu tien đen hom nay:'
from tblOrders
Kết quả trả về như sau
So ngay giua ngay thu tien đen hom nay:
-74
7
Trang 21Hàm dayofmonth: Hàm dayofmonth trả về ngày thứ mấy trong tháng:
Select dayofmonth(curdate())
as 'hom nay ngay
Kết quả trả về như sau:
21
Ngoài các hàm trình bày như trên, bạn có thể tìm thấy nhiều hàm xử lý về thời giantrong
phần Funtions xuất hiện bên phải màn hình của trình điều khiển như hình dưới đây:
1.2.4 Truy vấn cơ sở dữ liệu MySQL và PHP:
+ Các bước xây dựng chương trình có kết nối tới CSDL:
Thông thường, trong một ứng dụng có giao tiếp với CSDL, ta phải làm theo bốn trình tựsau:
Bước 1: Thiết lập kết nối tới CSDL
Bước 2: Lựa chọn CSDL
Bước 3: Tiến hành các truy vấn SQL, xử lý các kết quả trả về nếu có
Bước 4: Đóng kết nối tới CSDL
Nếu như trong lập trình thông thường trên Windows sử dụng các chương trình điềukhiển trung gian (ADO, ODBC ) để thực hiện kết nối và truy vấn, thì trong PHP, khi lậptrình tương tác với CSDL, chúng ta thường sử dụng thông qua các hàm Giả sử MySQL chạy trên nền máy chủ localhost, người sử dụng của CSDL này cóusername là mysql_user, mật khẩu là mysql_password
Thiết lập kêt nối tới MySQL:
Trang 22Để kết nối tới MySQL, ta sử dụng hàm mysql_connect()
Cú pháp:
mysql_connect(host,tên_truy_cập,mật_khẩu);
Trong đó:
Host: chuỗi chứa tên (hoặc địa chỉ IP) của máy chủ cài đặt MySQL
Tên_truy_cập: chuỗi chứa tên truy cập hợp lệ của CSDL cần kết nối
Mật_khẩu: chuỗi chứa mật khẩu tương ứng với tên truy cập
Trang 23Để lựa chọn một CSDL nào đó mà người sử dụng có tên là “tên_truy_cập" có quyền sửdụng, ta dùng hàm mysql_select_db:
Trang 24CSDL có tên là CMXQ_Forum, trong đó có một bảng là CMXQ_Users để lưu thông tin
về những thành viên của diễn đàn Bảng CMXQ_Users có các trường sau:
User_ID: Autonumber.// mã số của người dùng
User_Name: Varchar [20] // tên truy cập của người dùng
User_Pass: Varchar[64] //mật khẩu của người dùng
User_IP: Varchar [15] //Địa chỉ IP của người dùng
User_Post: Number // Số bài viết của người dùng
Bây giờ ta sẽ tiến hành một số thao tác thêm, sửa và xóa dữ liệu trên bảng đó Để thực thimột câu lệnh SQL bất kỳ trong PHP tác động lên MySQL, ta dùng hàm:
mysql_query (chuỗi_câu_lệnh_SQL)
Thêm một bản ghi vào bảng:
Ví dụ ta chèn thêm một người sử dụng có User_Name là "CMXQ", User_Pass là
"123456", User_Post=0 ta làm như sau:
Trang 25Xóa một bản ghi khỏi bảng:
Trong trường hợp này, ta sử dụng câu lệnh SQL DELETE FROM Ví dụ muốn xóa khỏibảng CMXQ_Users tất cả những người có User_Name="CMXQ":
<?
$sql = "DELETE FROM CMXQ_Users WHERE User_Name='CMXQ'";
mysql_query ($sql);
?>
Sửa thông tin của bản ghi trong bảng:
Ta sử dụng cú pháp UPDATE, chẳng hạn muốn cập nhật địa chỉ IP cho người cóUser_Name="CMXQ" với địa chỉ IP được lấy từ trình duyệt:
Trang 26CHƯƠNG 2: NÊU VẤN ĐỀ GIỚI THIỆU VỀ DỰ ÁN
Sinh Viên : Ngô Công Viêt
Tên tài liệu : Show Mobile Online
2.1 Giới thiệu :
Ngày nay Internet đã trở thành dịch vụ phổ biến và thiết yếu, không thể thiểu và
có ảnh hưởng sâu rộng tới thói quen, sinh hoạt, giải trí của nhiều người Cùng với
sự phát triển nhanh chóng của Internet thì các hình thức mua và bán hàng hóa chomọi người ngày càng đa dạng và phát triển hơn.Chính do sự phát triển của Internet
và nhu cầu ngày càng cao của mọi người, tôi đã quyết định xây dựng 1 websitegiới thiệu và cung cấp các dòng di động đang có mặt trên thị trường và khách hàng
có thể đặt hàng ngay tại website mà không cần đến trực tiếp điểm giao dịch.Việcnày giúp cho khách hàng có thể chủ động và tiết kiệm thời gian của chính mình
2.2 Tóm tắt dự án :
- Tóm tắt hệ thống :
Hệ thống là ứng dụng cho doanh nghiệp kinh doanh các mặt hàng di động
WEBSITE GIỚI THIỆU VÀ CUNG CẤP ĐIỆN THOẠI DI ĐỘNG
Dịch vụ mà website thương mại do nhóm chúng tôi xây dựng sẽ mang lại chokhách hàng đầy đủ mọi thông tin sản phẩm của nhà cung cấp (thông tin chi tiếtsản phẩm: hình ảnh, các đặc tính kĩ thuật, hãng sản xuất, giá thành,… ), các tintức liên quan trong cùng lĩnh vực, cùng với việc tham khảo và tìm hiểu thông tinthì khách hàng có thể thực hiện việc đặt hàng ngay tại website mà không phải đếntrực tiếp điểm giao dịch
Trang 27Nhà cung cấp sẽ dễ dàng nhận các đơn đặt hàng và xử lý ngay tại website vớiquyền truy cập trang Administrator Bên cạnh đó, tại phân trang Administrator,mọi thông tin về sản phẩm hàng hóa, các tin tức, hình ảnh, giá thành trên website
sẽ được dễ dàng cập nhật, sửa chữa, xóa bỏ với quyền Quản trị tại trang quản trịAdministrator
+ GIỚI THIỆU VÀ CUNG CẤP ĐIỆN THOẠI DI ĐỘNG
- Môi trường triển khai :
Ứng dụng được triển khai trên môi trường web
Các máy tính sử dụng nên theo tiêu chuẩn như sau :
Cấu hình tối thiểu:
Trang 28Software * Windows Server 2003 hoặc
phiên bản mới hơn
* IIS 6 hoặc phiên bản mới hơn
* Microsoft Office Access 2003(Hay phiên bản mới hơn)
*Windows 98 hoặc phiên bản mớihơn
* Firefox 3.6 hoặc phiên bản mới hơn
Software * Windows Server 2003 hoặc
phiên bản mới hơn
* IIS 6 hoặc phiên bản mới hơn
* Microsoft Office Access 2003(Hay phiên bản mới hơn)
*Windows XP Service Pack 3 hoặcphiên bản mới hơn
* Firefox 7.0 hoặc phiên bản mới hơn
- Công cụ và ngôn ngữ phát triển ứng dụng :
- Thiết kế giao diện :
Trang 29+ Adobe Dreamweaver CS5.5+ Adobe Photoshop CS5.
+ Aleo Flash Intro Banner Maker
- Xử lý dữ liệu và lập trình:
+ PHP+ JavaScript+ HTML + My sql
2.4 Xác định yêu cầu khách hàng
2.4.1 Đối với khách hàng truy cập đến Website:
Đối với khách hàng truy cập website hệ thống sẽ cung cấp những chức năng:
- Chức năng hiển thị thông tin và phân loại sản phẩm trong gian hàng:
Sản phẩm hiển thị lên website sẽ được hiển thị đầy đủ thông tin về sản phẩm
đó như : hình ảnh sản phẩm, tên sản phẩm, đặc điểm nổi bật của sản phẩm, thôngtin chi tiết sản phẩm, giá, thời gian bảo hành, hãng sản xuất, thông tin về cácchương trình khuyến mại…
Các sản phẩm này sẽ được phân loại theo từng hãng sản xuất,theo tên chủngloại.Sự phân loại này sẽ được người dùng lựa chọn khi tham quan các gian hàng.Trên trang chủ của website, thành phần chính sẽ hiển thị một số sản phẩm mớinhất, nổi bật nhất và bán chạy nhất cùng các tin tức mới nhất của các sản phẩmđược lấy từ chuyên trang tin tức trên website
- Chức năng giỏ hàng,thanh toán giỏ hàng(Đơn hàng,thanh toán):
Khi tham khảo đầy đủ thông tin về sản phẩm khách hàng có thể đặt mua sảnphẩm ngay tại Website thông qua chức năng giỏ hàng mà không cần phải đến địađiểm giao dịch, giỏ hàng được mô phỏng như giỏ hàng trong thực tế có thể thêm
Trang 30bớt ,thanh toán thành tiền các sản phẩm đã mua.Khi chọn thanh toán giỏ hàngkhách hàng phải ghi đầy đủ các thông tin cá nhân,thông tin này được hệ thống lưutrữ và xử lý.
- Chức năng đăng ký thành viên và đăng nhập hệ thống:
Mỗi khách hàng khi giao dịch tại Website sẽ được quyền đăng ký một tàikhoản riêng.Tài khoản này sẽ được sử dụng khi hệ thống yêu cầu.Một tài khoản dokhách hàng đăng ký sẽ lưu trữ các thông tin cá nhân của khách hàng và lịch sửgiao dịch với Website.Trong trường hợp khách hàng đã đăng ký mà quên mậtkhẩu hệ thống sẽ cho phép lấy lại mật khẩu với thông tin đã đăng ký
- Chức năng tìm kiếm sản phẩm, tin tức, hay tin công nghệ:
Khách hàng sẽ được cung cấp chức năng tìm kiếm trên Website.Khi nhập từkhóa vào ô tìm kiếm hệ thống sẽ trả về yêu cầu với từ khóa của khách hàng.Từkhóa sẽ được tìm trên tất cả các trường thông tin cần thiết của mỗi sản phẩm, tintức hay tin công nghệ trên Website
Website cho phép tìm kiếm một cách đa dạng, nhanh chóng nhất, chính xácnhất đúng với yêu cầu của khách hàng
- Trang tin tức, công nghệ
Các tin tức, tin công nghệ liên quan đến sản phẩm sẽ liên tục được cập nhật,
với các tin tức mới nhất từ hãng sản xuất và các chuyên trang công nghệ
- Trang hướng dẫn mua hàng:
Hướng dẫn khách hàng các hình thức mua sản phẩm trên Website
- Trang giới thiệu cửa hàng:
Giới thiệu các thông tin về cửa hàng,phương trạm bán hàng…
- Chức năng liên hệ phản hồi :
Khách hàng có thể liên hệ hoặc đóng góp ý kiến về sản phẩm và công ty qua
chức năng này
- Chức năng hỗ trợ trực tuyến (Yahoo!) :
Khách hàng có thể liên hệ trực truyến với nhân viên bán hàng về các thắcmắc, ý kiến của mình