Thực tế mô hình Client/server là sự mở rộng tự nhiên và tiện lợi cho việctruyền thông tiến trình lên các máy cá nhân, mô hình này cho phép xây dựng cácchương trình Client/Server một cách
Trang 1LỜI CẢM ƠN
Chúng em xin ch©n th nh cành c ảm ơn ban chủ nhiệm khoa C«ng nghệ th«ng tin,c¸c thầy c« gi¸o, gia đ×nh v bành c ạn bÌ đ· động viªn gióp đỡ chúng em rất nhiều trongqu¸ tr×nh ho n th nh b i thành c ành c ành c ực tập chuyªn ng nh n y ành c ành c Đặc biệt em xin cảm ơn s©u
sắc tới thầy gi¸o hướng dẫn Thạc sỹ Vũ Văn Nam về sự chỉ dẫn tận t×nh v giópành c
đỡ hướng dẫn chúng em từ những ý tưởng ban đầu cho đến lóc ho n th nh b i ành c ành c ành c đề
Lớp: 48K-CNTT
Mở đầu
1 Lý do chọn đề tài
Trang 2Ở nước ta hiện nay, đời sống kinh tế ngày càng phỏt triển cho nờn nhu cầutiờu thụ hàng húa ngày càng tăng Việc lựa chọn một hay nhiều mặt hàng chiếmnhiều thời gian của khỏch hàng Vỡ vậy xõy dựng website bỏn hàng qua mạng vớimục đớch :
- Nhằm đỏp ứng nhu cầu mở rộng thị trường tiờu thụ hàng húa
- Thụng tin luụn được cập nhật mới và luụn đỏp ứng được nhu cầu thụngtin
- Tiết kiệm được thời gian chi phớ đi lại cho khỏch hàng
- Với thời đại thụng tin phỏt triển như vũ bóo hiện nay, khỏi niệm Internetkhụng cũn xa lạ, việc đưa những sản phẩm, những thụng tin hỗ trợ lờnmạng đang trở nờn một nhu cầu cần thiết cho mọi người
Với lý do trên v ành c được sự định hướng, giúp đỡ của Thạc sĩ Vũ Văn Nam ,
chỳng em đó chọn đề t i : “ành c Tìm hiểu Drupal +Ubercart phát triển Website bán–phát triển Website bán
h ng tr àng tr ực tuyến” l m b i ành c ành c đề t i chuyên ng nh cành c ành c ủa mình
I.Tổng quan về internet & thơng mại điện tử
II Tìm hiểu về Drupal v Ubercartành c
Chơng II Hớng dẫn cài đặt và sử dụng Drupal & Ubercart ứng dụng trong bài toán thực tế.
I B i toán thành c ực tế
II Hớng dẫn cài đặt Drupal & Ubercart
II Kết hợp Drupal v Ubercart sử dụng để phát triành c ển ứng dụng cơ bản
Chơng III Phõn tớch & Thiết kế.
1.1 Giới thiệu về Internet
Internet là mạng mỏy tớnh toàn cầu được thành lập từ những năm 80 bắt đầu từmạng Aparnet của bộ quốc phũng Mỹ Về mặt kỹ thuật cỏc mỏy tớnh trờn Internetđược kết nối với nhau dựa trờn giao bộ giao thức TCP/IP
Trang 3Một trong những mục tiêu của Internet là chia sẻ thông tin giữa người dùng trênnhiều lĩnh vực khác nhau Để thực hiện mục tiêu này trên Internet có rất nhiều dịch
vụ thông tin đa dạng nhưng những dịch vụ hay được dùng nhiều nhất là :
- Thư điện tử (E_Mail) cho phép gửi và nhận thư trên Internet
- FPT cho phép lấy các tệp dữ liệu từ một máy khác trên Internet hoặc gửicác tệp dữ liệu tới những máy này
- WWW hệ thống thông tin lớn nhất, phát triển nhanh nhất trên Internet
- Telnet cho phép từ một máy tính thâm nhập vào và làm việc trên một máytính khác ở xa như là ta đang ngồi ở chính máy tính đó
- Gopher cho phép truy nhập hệ thống thông tin văn bản được tổ chức dướidạng cấu trúc cây Hiện nay được dần thay thế bởi www
1.2 M« h×nh Client/Server
Một chương trình được coi là một Client khi nó gửi yêu cầu tới máy cóchương trình Server và chờ đợi câu trả lời từ Server Chương trình Server và Clientnói chuyện với nhau bằng các thông điệp thông qua một cồng truyền thông liên tácIPC Để một chương trình Server và một chương trình Client có thể giao tiếp vớinhau thì giữa chúng phải có một chuẩn để giao tiếp được, chuẩn này được gọi làgiao thức Nếu một chương trình Client nào muốn yêu cầu lấy thông tin từ Serverthì nó phải tuân theo giao thức Server đưa ra
Thực tế mô hình Client/server là sự mở rộng tự nhiên và tiện lợi cho việctruyền thông tiến trình lên các máy cá nhân, mô hình này cho phép xây dựng cácchương trình Client/Server một cách dễ dàng và sử dụng chúng để liên tác với nhauđạt hiệu quả hơn
Đây là mô hình tổng quát nhất, trên thực tế thì một Server có thể được kết nối tớinhiều Server khác nhằm làm việc hiệu quả hơn và nhanh chóng hơn Khi nhậnđược một yêu cầu từ Client/Server này thì có thể gửi tiếp yêu cầu vừa nhận cho mộtserver khác
Với mô hình Client/Server chỉ mang đặc điểm của phần mềm không liênquan đến phần cứng mặc dù trên thực tế yêu cầu cho một máy server là cao hơn rấtnhiều so với máy Client Lý do là bởi vì máy Server phải quản lý rất nhiều các yêucầu từ Client khác nhau trên mạng máy tính
Vai trò của Client và server trong mô hình Client /Server :
- Client : Được coi là người sử dụng các dịch vụ trên mạng do một hoặc
nhiều máy chủ cung cấp là Server được coi như là một cung cấp dịch vụ
Client
Server
Gửi yêu cầu Trả về trang web
Trang 4để trả lời các yêu cầu của Client Điều quan trọng là phải hiểu được vaitrò hoạt động của nó trong một mô hình cụ thể Một máy Client trong môhình này lại là Server trong một mô hình khác.
- Server : Còn được định nghĩa như một máy tính nhiều người sử dụng Vì
một server phải quản lý nhiều yêu cầu từ các Client trên mạng cho nên nóhoạt động sẽ tốt hơn nếu hệ điều hành của nó là đa nhiệm với các tínhnăng hoạt động độc lập song song cùng với hệ điều hành UNIX,Windowns NT…Server cung cấp và điều khiển các tiến trình truy cập vàotài nguyên của hệ thống các ứng dụng chạy trên server phải được tách rờinhau để một lỗi của ứng dụng này không làm hỏng ứng dụng khác Tính
đa nhiệm đảm bảo một tiến trình không sử dụng toàn bộ tài nguyên của
hệ thống
1.3 Kh¸i niÖm vÒ WWW( world wide web) :
WWW là tập hợp các văn bản tài liệu có mối liên kết với nhau trên mạngInternet Bởi vì www đang phát triển rất mạnh mẽ và được quảng bá khắp nơi nênngười sử dụng thường nhầm lẫn www là Internet nhưng thực tế nó chỉ là một dịch
- Cho phép tìm kiếm thông tin nhanh chóng, phổ biến các tài liệu khoa học
và trao đổi thông tin trên mạng
- Dịch vụ kinh doanh đầu tư trên mạng qua web Với sự phát triển vượt bậccủa khả năng truyền thông qua mạng và các công nghệ web tiên tiến ,việc ta có thể ung dung ngồi nhà mà du ngoạn từ cửa hàng này sang cửahàng khác trong không gian ảo không còn là cảnh phim viễn tưởng mà đãtrở thành hiện thực Ngày nay hầu như bất kỳ thứ hàng hóa nào cũng cóthể đặt mua qua Internet
2 Th¬ng m¹i ®iÖn tö
Thương mại điện tử là hình thái hoạt động kinh doanh bằng các phương phápđiện tử , là việc trao đổi thông tin, kinh doanh thông qua các phương tiện công nghệđiện tử
Hoạt động kinh doanh bao gồm tất cả các hoạt động trong kinh doanh nhưgiao dịch, mua bán, thanh toán, đặt hàng, quảng cáo và kể cả giao hàng
Ngày nay thương mại điện tử đã trở thành một ngành kinh tế mũi nhọn trên thế giới
và đã xuất hiện nhiều trung tâm thương mại và thị trường chứng khoán lớn nhất thếgiới
Trang 5Hiện nay nhờ vào sự phát triển của các phương tiện truyền thông, đặc biệt là
sự phát triển của tin học đã tạo điều kiện cho mọi người có thể giao tiếp với nhaumột cách nhanh chóng và dễ dàng hơn thông qua các dịch vụ Internet Chính vì thế
đã tạo điều kiện thuận lợi cho thương mại điện tử thông qua Internet Đối với kháchhàng, có thể lựa chọn và so sánh hàng hóa phù hợp về loại hàng, dịch vụ giá cả,chất lượng và phương thức giao hàng cho khách hàng
II T×M HIÓU VÒ DRUPAL & UBERCART
1 Giíi thiÖu vÒ Drupal
1.1 §Þnh nghÜa
Drupal l mành c ột khung sườn ph¸t triển phần mềm hướng mo-đun, một hệthống quản trị nội dung miễn phÝ v m· nguành c ồn mở Cũng giống như c¸c hệ thốngquản trị nội dung hiện đại kh¸c, Drupal cho phÐp người quản trị hệ thống tạo v tành c ổchức dữ liệu, tïy chỉnh c¸ch tr×nh b y, tành c ự động hãa c¸c t¸c vụ điều h nh v quành c ành c ản
lý hệ thống Drupal cã cấu tróc lập tr×nh rất tinh vi, dựa trªn đã, hầu hết c¸c t¸c vụphức tạp cã thể được giải quyết với rất Ýt đoạn m· được viết, thậm chÝ kh«ng cần.Đ«i khi, Drupal cũng được gọi l "khung sành c ườn ph¸t triển ứng dụng web", v× kiếntróc th«ng minh v uyành c ển chuyển của nã
1.2 LÞch sö
Đầu tiªn, nã được Dries Buytaert, một lập tr×nh viªn m· nguồn mở, tạo ra theo dạng một hệ thống bảng tin Đến năm 2001, Drupal trở th nh mành c ột c«ng tr×nh nguồn mở Drupal, trong tiếng Anh, được chuyển ngữ từ từ liệu "druppel" của tiếng
H Lan, nghành c ĩa l " giành c ọt nước "
Từ th¸ng bảy 2007 đến th¸ng s¸u năm 2008, m· nguồn Drupal đã được tải về
từ website drupal.org hơn 1,4 triệu lần Hiện nay, cã một cộng đồng rộng lớn đang
Trang 6gióp đỡ ph¸t triển Drupal.
Th¸ng giªng năm 2009, Drupal 6.9, phiªn bản mới nhất, đã được c«ng bố
* Website thảo luận, website cộng đồng
* Website nội bộ (Intranet), website doanh nghiệp
1.5 Giao diÖn qu¶n trÞ
Kh«ng giống như những CMS kh¸c, Drupal kh«ng cã giao diện quản trị riªngbiệt Giao diện trang web v giao diành c ện trang quản trị theo mặc định l mành c ột Ngườidïng đầu tiªn (c i ành c đặt Drupal) được xem như l ngành c ười dïng cã quyền cao nhất vành c
cã to n quyành c ền với trang web
1.6 ¦u ®iÓm vµ nhîc ®iÓm
* Ưu điểm của Drupal
- Nền tảng mạnh mẽ, ổn định, m· nguồn được tối ưu n©ng cao hiệu suất hoạtđộng gióp tiết kiệm nguyªn của hệ thống L nành c ền tảng vững chắc cho c¸cwebsite cã lượng truy cập lớn như BBC England, MTV Một trang b¸o c«ngnghệ sử dụng Drupal kh¸ th nh c«ng l trangành c ành c Th«ng Tin C«ng Nghệ
- Cấu tróc linh hoạt gióp c¸c lập tr×nh viªn mở rộng chức năng kh«ng hạn chếtheo nhu cầu sử dụng
- Drupal cực kỳ th©n thiện với c«ng cụ t×m kiếm, đã l mành c ột lợi thế rất lớn khiSEO lu«n l mành c ột vấn đề được quan t©m đối với bất kỳ trang web n o ành c
Trang 7- TÝnh năng Multiple gióp bạn cã nhiều website với một lần c i ành c đặt Drupal Gióp bạn điều khiển v quành c ản lý dễ d ng hành c ơn.
- Drupal chạy được cả trªn server Linux v Windows trong khi Jooma chành c ỉchạy tốt trªn server Linux
* Nhược điểm của Drupal
- Drupal được đ¸nh gi¸ l khã sành c ử dụng với người dïng mới
- Drupal cã Ýt c¸c th nh phành c ần mở rộng (extensions) hơn Joomla Mỗi khi cãphiªn bản Drupal mới bạn phải chờ c¸c nh cung cành c ấp n©ng cấp extensionscủa họ để tương thÝch
- C¸ch bố trÝ của website Drupal khiến người mới sử dụng khã t×m kiếm vành cđ¸nh gi¸ nªn dïng extensions n o ành c
2 Giíi thiÖu vÒ Ubercart
Ubercart l mành c ột m· nguồn mở gi¶i ph¸p thương mại điện tử tÝch hợp ho n ành c
to n vành c ới hệ thống m· nguồn mở quản lý nội dung, Drupal Đ©y l mành c ột sự kết hợp cho bất cứ ai t×m c¸ch để x©y dựng một cộng đồng xung quanh một sản phẩm, cungcấp lîng tải tập tin, v nhiành c ều hơn nữa, trong khi vẫn duy tr× một kết nối liền mạch Ubercart thóc đẩy c¸c lợi thế của lâi chÝnh của Drupal v ành c đãng gãp hệ thống,cung cấp cho người dïng với chức năng giỏ mua h ng tÝch hành c ợp với c¸c bộ phận kh¸c của c«ng ty hoặc trang web cộng đồng
Cã thÓ ph¸t triển thªm hoặc thay đổi tÝnh năng để phï hợp Ubercart thương mại điện tử Điều n y cã nghành c ĩa l kh«ng bao giành c ờ phải thay đổi m· nguồn để thªm c¸c tÝnh năng mới, do đã, sẽ cã một đường dẫn n©ng cấp dễ d ng Ubercart tiành c ếp tục ph¸t triển để đ¸p ứng nhu cầu của một cộng đồng ph¸t triển
2.1 V i nÐt chÝnh ài nÐt chÝnh
* Được x©y dựng như l mành c ột gãi m«-đun cho c¸c c«ng cụ t×m kiếm th©n thiện với Drupal CMS, cã nghĩa l ho n to n cã thành c ành c ành c ể tÝch hợp cửa h ng cành c ủa bạn với phần cßnlại của trang web hoặc forum
* Ubercart cũng cã thể được tăng cường bởi h ng chành c ục modules vµ themes Drupal
* Thiết kế được cải tiến v sành c ửa đổi C¸c hệ thống cốt lâi của Ubercart, bao gồm sảnphẩm, thanh to¸n, đơn đặt h ng v thành c ành c ực hiện đơn h ng ành c được thiết kế để kết hợp
Trang 8* Không ngừng cải thiện các hệ thống cốt lõi để làm cho nó dễ dàng hơn cho cácnhà phát triển
2.2 Các tính năng hiện tại
* Cấu hình danh mục sản phẩm bao gồm các trang catalog v block ành c để hiển thị các loại sản phẩm
* Hệ thống sản phẩm sáng tạo linh hoạt Sản phẩm tạo ra bình thường theo mặc định Thêm các trường để lưu trữ thông tin sản phẩm bổ sung bằng cách sử dụng Drupal CCK
*Thiết lập thuộc tính mặc định / tùy chọn thiết lập cho từng loại sản phẩm để dễ
d ng tành c ạo ra nhiều sản phẩm tương tự
* Tự động tạo t i khoành c ản (ẩn danh tính tiền) T i khoành c ản v email sành c ẽ tự động được tạo ra dựa trên địa chỉ e-mail của khách h ng (Tùy chành c ọn thiết lập cho phép khách
h ng xác ành c định tên t i khoành c ản v mành c ật khẩu trong thanh toán.)
Chơng II HƯớng dẫn cài đặt và sử dụng drupal & ubercart ứng
dụng trong bài toán thực tế
I BàI TOáN THựC Tế
1 Vấn đề thực tế :
Ng y nay theo cách thông thành c ường, khách h ng khi ành c đi mua sản phẩm nào đóphải đi tới các cửa h ng, công ty ành c để chọn lựa mua các sản phẩm họ cần Khi v oành ccửa h ng, khách sành c ẽ tự đi chọn sản phẩm ưng ý Trong quá trình tự chọn lựa trựctiếp n y hành c ọ có thể trực tiếp tiếp xúc với thông tin chi tiết về sản phẩm Sau khi chọnxong , họ đến quầy h ng thanh toán ành c để trả tiền
Với thời đại thông tin phát triển như vũ bão hiện nay, việc lập nên một trangweb giới thiệu và bán sản phẩm với những thông tin hỗ trợ chi tiết lên mạng đangtrở nên một nhu cầu cần thiết cho mọi người
Với mục tiêu đặt ra ở trên , website sẽ cung cấp những thông tin về sản phẩmcủa mình một cách sinh động v ành c đầy đủ Nội dung cơ bản của website như sau :
- Giới thiệu về cửa hàng, công ty ( khái quát v các lành c ĩnh vực hoạt động cũngnhư các sản phẩm của công ty)
Trang 9- Giới thiệu các loại sản phẩm hiện có v sành c ắp có để khách h ng có thành c ể đăng kýmua
- Có nhiều hình thức thanh toán tiện lợi, giao h ng cho khách vành c ới thời giansớm nhất
-
2 Hớng giải quyết
Các website bán h ng online v thanh toán trành c ành c ực tuyến mở ra ng y c ngành c ành cnhiều, đòi hỏi tiện ích ng y c ng cao, vành c ành c ới các nh phát triành c ển website thì việc xâydựng một website mang đúng tính chất thương mại điện tử l ành c điều không dễ d ngành cgì, nó phụ thuộc v o rành c ất nhiều yếu tố ngo i vành c ấn đề code, database, bảo mật nó cònphụ thuộc v o server, các phành c ương thức thanh toán, nh cung cành c ấp các cổng thanhtoán
Với Drupal v Ubercart là giải pháp tạo mành c ột website thương mại điện tử cóhiệu quả nhất, tích hợp đợc nhiều phơng thức thanh toán khác nhau, giúp ngời dùng
có thể sử dụng trong quá trình mua hàng một cách dễ dàng
II Hớng dẫn cài đặt drupal & ubercart
1 Cài đặt drupal
Để c i ành c đặt v chành c ạy được Drupal trên máy bạn, trước đây chúng ta phải lầnlượt c i các chành c ương trình : Apache , PHP, Mysql Qua các bước rất phức tạp Naycông đoạn đó được rút ngắn hơn rất nhiều, qua việc c i 1 chành c ương trình duy nhất
Đó l Xampp, Wamp Server Sau đây sẽ hành c ớng dẫn cài đặt Wamp Server trên hệ
điều hành WindowXP
* Hớng dẫn cài đặt Wamp Server
WAMP: Một gói phần mềm Web Server tất cả trong một (All-in-One) gồm:
Apache, MySQL, PHP chạy trên nền Windows.
Giao diện quản trị Webserver WAMP (Windows + Apache + MySQL + PHP)
- Download bản cài đặt Wamp Server
Tại địa chỉ http://www.wampserver.com/en/download.php
- Các bớc cài đặt
Trang 10Nhấn [Next] v thực hiện các b à thực hiện các b ớc tiếp theo
Nếu trên máy của bạn có c i trình duyệt à thực hiện các b Firefox v bạn muốn chọn Firefox à thực hiện các b
l m trình duyệt mặc định khi mở à thực hiện các b http://localhost thì nhấn [Yes]
Điền các thông số để có thể gửi / nhận mail thông qua một SMTP server.
Nếu không biếtt hãy để mặc định v nhấn [next] à thực hiện các b
Trang 11Nhấn nút [Finish] để ho n tấtt quá trình c i đặt à thực hiện các b à thực hiện các b
- Hoàn tất cài đặt và chạy thử
Sau khi c i ành c đặt th nh công, sành c ẽ thấy biểu tượng của WAMP ở góc m n hìnhành cnhư dưới đây:
Để chạy thử nhấn vào mục Localhost hoặc mở trình duyệt và gõ địa chỉ
http://localhost (hoặc http://127.0.0.1)
Trang 12Để quản lý cơ sở dữ liệu (database) nhấn v o mành c ục "phpMyAdmin" hoặc mở trình
duyệt v gõ v o ành c ành c địa chỉ http://localhost/phpMyAdmin hoặc
http://127.0.0.1/phpMyAdmin
* Hớng dẫn cài đặt Drupal
- Đầu tiên download bộ c i ành c đặt của Drupal tại website: http://drupal.org/
- Sau khi download xong, tiến h nh giành c ải nén thư mục của Drupal v trong thành c ưmục gốc chứa các file chạy website của Wamp.Thông thường l thành c ư mục D:\wamp\www Tên thư mục tùy chọn ở đây đặt tên là Drupalblog Lưu ý có
Trang 13thể khi giải nén, các thư mục v file cành c ủa Drupal được đặt trong thư mục nên
có tên Drupal-6.x Bạn hãy move nó ra thư mục chính l Drupalblog.ành c
- Tạo Sql database cho Drupalblog
Bạn có thể sử dụng trình quản lý MySQL l Phpmyadmin ành c để tạo SQL Đườngdẫn của phpmyadmin thường l ành chttp://localhost/phpmyadmin/
Trong ô Creat new database, hãy nhập tên bất kỳ SQL database muốn khởi tạo Ởđây đặt tên l drupalblog.ành c
Sau đó nhấn v o nút Creat ành c để khởi tạo Database n y.ành c
Trang 14Click chọn Install Drupal in English để sang bước tiếp theo
M n h×nh c i ành c ành c đặt cã dạng như sau:
§iÒn c¸c th«ng số như h×nh trªn Với Database name l tªn SQL database tành c ạo
ở trªn, Database username l tªn truy cành c ập v o Database Drupalblog ành c Ở đ©y do c iành c
Trang 15trªn localhost, cã thể khai b¸o l root cho tiành c ện, v kh«ng cành c ần khai b¸o pass Trongphần Advance option cã c¸c « lựa chọn Nếu sử dụng 1 số shared host free, phần
n y l rành c ành c ất cần thiết V× Database host: của bạn sẽ kh«ng phải l localhost nhành c ư mặcđịnh, m l IP, hoành c ành c ặc domain do shared host đã cung cấp VD như cã thể lành csql.vinazoom.com, hay sql8383.byethost.com v v Phần Database port: l cành c ổng cấpcho dịch vụ của Mysql Mặc định l 3306 cã thành c ể kh«ng cần điền v o Nành c ếu tự cấuh×nh cho service MySQL ở cổng kh¸c th× điền số cộng v o VD 1587 chành c ẳng hạn.Phần Table prefix: l tiành c ếp đầu ngữ c¸c table của Drupal trong Database Drupalblog.Nếu bạn chỉ c i Drupal trªn Database n y th× cã thành c ành c ể kh«ng cần điền Nếu như bạn
c i chung Database vành c ới c¸c CMS hoặc Source kh¸c như Joomla, VBB, v v để cãthể tiện cho việc dïng chung c¸c t i khoành c ản User cho Bridge sau n y th× cã thành c ể điềngi¸ trị l dru_ Nhành c ấn Save and Continue để đến bước tiếp theo
- Chờ Script của Drupal ghi c¸c dữ liệu mặc định lªn Database(mất chừng v iành cgi©y) Sau đã phần c i ành c đặt sẽ tự động đến với phần cấu h×nh c¸c th«ng tin ban đầucủa Site
Ở phần n y, chành c ỉ cần chó ý đến phần th«ng tin Username l tªn t i khoành c ành c ảnquản trị chÝnh V phành c ần password l mành c ật khẩu của t i khoành c ản quản trị chÝnh C¸cphần th«ng tin kh¸c cã thể điền tïy ý, v thay ành c đổi dễ d ng trong phành c ần quản trịDrupal sau n y Click v o nót Save and Continue ành c ành c để đến bước tiếp theo
Trang 16- Nếu qu¸ tr×nh c i ành c đặt th nh c«ng, Drupal sành c ẽ hiện lªn dßng th«ng b¸o:
Drupal installation complete
Congratulations, Drupal has been successfully installed
Cã thể cã lỗi nhỏ xảy ra như:
+ warning: mail() [function.mail]: Failed to connect to mailserver at "localhost"port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set()
- Việc c i ành c đặt đ· ho n th nh, v o ành c ành c ành c địa chỉ http://localhost/drupalblog/ để tiến h nhành cquản trị
2 ViÖt hãa Drupal
Bạn cần download gãi việt hóa cho phiªn bản drupal đang dung tại
http://www.drupal.org
Thực hiện:
Trước tiªn, v o ành c admin/build/modules để bật module Locale (mặc định tắt) trong
phần Core –ph¸t triÓn Website b¸n optional
- Administer => site building => translate interface => import => browse đến từngfile trong gãi việt hãa => import (Chỉ import những file po)
Trang 17- L m tành c ương tự đến hết
- Sau khi import hết chúng ta v o Administer => site configuration => Languages ành c
=> add language => chọn tiếng việt => add
- Quay trở lại List các ngôn ngữ v chành c ọn tiếng việt l defaultành c
3 Cài đặt FCKeditor cho drupal
Trang 18Khi l m viành c ệc với các CMS như Wordpress, Joomla hay dotnetnuke, th… th ấy
dễ d ng hành c ơn bởi vì một phần do chúng tích hợp các công cụ hỗ trợ soạn thảo trựcquan gọi l WYSIWYG giúp bành c ạn dễ d ng tành c ạo nội dung
Với người l m Drupal thì không phành c ải vậy Khi mới c i Drupal sành c ẽ hết sức bỡngỡ v thành c ất vọng bởi vì không có một editor n o giúp chúng ta tành c ạo nội dung chocác b i viành c ết
Nhưng drupal l vành c ậy Nó mạnh mẽ nhờ sự uyển chuyển v linh hoành c ạt Nhâncủa nó rất tốt cho các ứng dụng yêu cầu hiệu năng cao Editor trong Drupal rấtnhiều tuy nhiên thường dùng vành c được đánh giá cao nhất l FCKEditor vành c ành cTinyMCE Hai cái editor được dùng phổ biến trong các CMS Ví dụ dotnetnukedùng FCKEditor còn Wordpress dựng TinyMCE
Dùng FCKEditor nên c i ành c đặt nó cùng với IMCE sẽ tốt hơn IMCE giúpchúng ta quản lý file theo vai trò người dùng, nó quản lý hạn ngạch cấp phát chotừng người, … th Tích hợp hai cái n y sành c ẽ hết sức hiệu quả cho ứng dụng của bạn
- Tải về gói Module FCKeditor http://drupal.org/project/fckeditor Giải nén và chép
toàn bộ vào \drupal\sites\all\modules
- Đăng nhập v o Aminister => Site building => Modules =>FCKeditor =>Saveành cconfiguration
- Download FCKeditor http://ckeditor.com/download –phát triển Website bán Giải nén và chép vào th
mục \sites\all\modules\fckeditor\fckeditor
- V o lành c ại trang Admin của Drupal để kích hoạt lại Module FCKeditor Giờ về cơbản đã ho n th nh Thành c ành c ế nhưng để sử dụng ho n hành c ảo FCKeditor cần phải thực hiệnmột số bước như sau:
- Mở file fckeditor.config.js trong thư mục /modules/fckeditor/ trên Server.
- Bỏ dấu ghi chú phía trước 3 dòng sau: FCKConfig.PluginsPath = / /plugins/ ; ‘ / /plugins/’ ; ’ ;
FCKConfig.Plugins.Add( drupalbreak ) ; ‘ / /plugins/’ ; ’ ;
FCKConfig.Plugins.Add( drupalpagebreak ) ;‘ / /plugins/’ ; ’ ;
–phát triển Website bán Tìm đến cụm ['Image','Flash','Table','Rule','SpecialChar'] v sành c ửa th nh ành c
['Image','Flash','Table','Rule','SpecialChar', 'DrupalBreak', 'DrupalPageBreak']
- Mở file config.php trong thư mục
/modules/fckeditor/fckeditor/editor/filemanager/connectors/php/ tìm đến dòng:
Trang 19$Config['UserFilesAbsolutePath'] = ; ” thêm v o ngay bên dành c ưới dùng lệnh sau: require_once / / / / /filemanager.config.php ;“ ”
4 Cài đặt Ubercart
- Download Ubercart tại http://www.ubercart.org/downloads
- Giải nén copy vào th mục \sites\all\modules
- Vào trang admin => site building =>modules enable các module cần thiết
Trang 20III Kết Hợp Drupal Và Ubercart để phát triển ứng Dụng cơ bản
1 cấu trúc file Drupal
Trang 21* Th mục includes chứa th viện của các hàm mà hệ thống drupal có thể sử
liệu, thư viện xử lý ảnh, thư viện cache, thì không nên thay đổi bất cứ phần n oành ctrong thư mục n y.ành c
* Th mục misc lu trữ các JavaScript và các icon và hình ảnh mà module hệ
thống có thể sử dụng
* Th mục modules chứa các module cốt lõi, với mỗi module trong đó có
muốn thêm module vào trong th mục sites
* Th mục profiles chứa các cấu hình cài đặt khác nhau cho một trang web Nếu
như có bất kỳ cấu hình c i ành c đặt n o khác, Drupal sành c ẽ hỏi nên chọn cấu hình c i ành c đặt
n o trong lành c ần c i ành c đặt đầu tiên của website Lý do chính của cấu hình c i ành c đặt n yành c
hỗ trợ cho nh phát triành c ển đóng gói drupal th nh các cành c ấu hình khác nhau Ví dụ: cấuhình cho thương mại điện tử, cấu hình cho cổng thông tin… th ộ cấu hình xuất sắc Bnhất của Drupal l Open Atrium hành c ỗ trợ cho việc phát triển các ứng dụng web
* Th mục Scripts : Chứa các kịch bản chỉ có thể thực thi từ phía server Đối với các
tác vụ bình thường thì chưa cần sử dụng tới Trong trường hợp cần xây dựng cáckịch bản mở rộng, cần định vị chúng trong các thư mục con, để tiện cho việc nângcấp mã nguồn Drupal sau n y.ành c
* Th mục Site: chứa các module và giao diện.
* Themes : chứa các giao diện của hệ thống v bành c ộ máy giao diện PHPTemplateđược hệ thống cung cấp sẵn Không nên có thay đổi n o ành c ở thư mục n y Trành c ườnghợp muốn phát triển một bộ máy giao diện mới, có thể tạo thư mục mới trong/themes/engines/ v o chành c ứa mã nguồn mở rộng ở đó
Trang 22* Ở thư mục gốc, ngo i các tành c ập tin htaccess, robots.txt thì không nên có thay đổi
- Page.tpl.php : nếu cần tạo 1 template thì có thể nhân bản từ một page.tpl.php
từ modules/system/page.tpl.php và sau đó tinh chỉnh nó khi cần thiết Drupal
sẽ sử dụng modules/system/page.tpl.php nếu không tồn tại file page.tpl.phptrong theme vừa tạo.Nó là lớp trên của tất cả các file template và cung cấpcác bố cục tổng thể trang cho site.File template khác đợc đa vào page.tpl.php
nh sơ đồ dới:
Trang 23- Node.tpl.php: Điều khiển việc hiện thị và tóm tắt một node Tất cả các loại nội
dung trong Drupal đều được kế thừa từ một loại đơn giản nhất được gọi lành c
node Các node có thể l mành c ột b i blog, mành c ột bản tin, một nhiệm vụ của dự ánhay bất kỳ loại nội dung n o v ành c ành c đều có chung cấu trúc dữ liệu Chính điều
n y ành c đó l m nên sành c ự mềm dẻo, linh hoạt cho hệ thống Drupal Dựa v o node, hành c ệthống Drupal ho n to n có thành c ành c ể mở rộng th nh các giành c ải pháp như cms, bán
h ng trành c ực tuyến, quản lý dự án… th
- Template.php: tạo các function trong theme hoặc sửa chữa các hàm đã đợc
thiết lập
- Screenshot.png: giao diện minh họa.
- Và cái file liên quan: images, js,logo
Drupal chấp nhận nhiều cách để tùy biến v viành c ết lại giao diện cho website Từcách đơn giản nhất l viành c ết thêm mã CSS để nạp đè các thuộc tính đã được địnhnghĩa sẵn theo class v ID Tuy nhiên, nành c ếu muốn ho n to n l m chành c ành c ành c ủ v tành c ối ưu việcsinh mã HTML chỉ cần viết lại các tệp tin giao diện theo quy chuẩn đặt tên củaDrupal
3 Cấu trúc chức năng của Drupal trong giao diện admin
3.1 Create content
* Page : Một trang có dạng tơng tự nh một bài báo, là cách thức đơn giản để tạo và
trình bày thông tin ít khi thay đổi, nh là trang giới thiệu của một website Theo mặc
định, một trang không cho phép khách hàng gửi phản hồi và không đợc đa ra ởtrang chủ
Trang 24- Title: tiêu đề bài viết.
- Menu settings: Nếu muốn kết nối với menu thì thiết lập Không thì bỏ qua.+ Menu link title: Nội dung của mục liên kết hiển thị trên menu chính.Không thiết lập đờng link nếu nh không muốn post nó lên menu
+ Parent item: thiết lập menu chứa nó
+ V thiết lập các chức năng khác: comment , các tệp đính kèm, thông tin tácành cgiả
* Product: hiển thị đại diện của một sản phẩm để bán trên trang web Nó bao gồmtất cả các thông tin duy nhất m có thành c ể được quy cho một số mô hình cụ thể
Trang 25- Vocabularies: lựa chọn nơi cần chứa sản phẩm.
- Product information: thông tin về sản phẩm gồm: mã sp, giá trớc, chi phí, giábán, trọng lợng, kích cở,
* Story: Một bài báo có dạng tơng tự nh một cách tốt để tạo và trình bày nội dungthông báo hoặc thu hút khách hàng ghé thăm website Các thông tin cáo báo chí,thông báo của website và các mục tin giống nh các blog thông dụng có thể đợc tạobằng một báo cáo Theo mặc định bài báo sẽ đợc tự động hiển thị ở trang chủ vàcho phép gửi phản hồi
3.2 Administrator
3.2.1 Content management
Trang 26* Comments ( bình luận ) : hiển thị danh sách và chỉnh sửa site và kiểm duyệt ýkiến bình luận.
* Content ( nội dung): hiện thị, chỉnh sửa và xóa nội dung site đó
* Content types (kiểu nội dung): Quản lý các b i viành c ết bởi kiểu nội dung, bao gồm
cả trạng thái mặc định, trang đầu, vv
* Post settings (cài đặt bài viết): điều khiển bài viết nh độ dài bài viết, xem trớc khi
Việc xây dựng website trên Drupal thường xoay quanh việc bố trí các block nhưthế n o, v o các vành c ành c ị trí n o.ành c
- Menus: điều khiển, chỉnh sửa, tổ chức lại các liên kết menu
- Modules: Drupal l mành c ột khung phát triển hướng mô-đun ho n to n Các chành c ành c ứcnăng được đóng gói trong các mô-đun Khi cần, bạn có thể bật hoặc tắt cácmô-đun tùy ý Khi cần một tính năng mới thì cú thể bật các mô-đun có sẵn,
c i ành c đặt các mô-đun được viết v chia sành c ẻ trên trang chủ Drupal hoặc viết mộtmô-đun mới theo yêu cầu
- Themes: lựa chọn theme cho site
- Translate interface: xây dựng biên dịch trong giao diện
- URL aliases : Thay đổi đờng dẫn url của site tùy ý