Dùng để lưu Danh mục hình ảnh quảng cáo. Ví dụ: Hình ảnh đối tác
STT Tên trường Kiểu dữ liệu Length Chú thích Ràng buộc 1 id int 11 Mã DM gallery
2 cat varchar 20 Biến cat quy định điều kiện menu
3 ten varchar 32 Tên danh mục 4 thu_tu int 1 Dùng để sắp xếp
vị trí 5 hien_thi int 1 Trang thái
Bảng 3.14 Danh mục hình ảnh 3.2.15 Bảng: scrab_ gallery (Lưu hình ảnh quảng cáo)
Dùng để lưu hình ảnh quảng cáo bao gồm Tên hình ảnh, chú thích và đường dẫn cố định đến bài viết.
STT Tên trường Kiểu dữ liệu Length Chú thích Ràng buộc 1 id int 11 Mã gallery Khóa chính 2 cat int 11 Mã Danh mục
gallery
Khóa phụ
3 ten varchar 255 Tên hình ảnh 4 chu_thich text max Mô tả hình ảnh 5 hinh Varchar 255 Lưu hình ảnh 6 link Varchar 255 Đường dẫn liên
kết cố định 8 hien_thi int 1 Trạng thái hiển
thị
9 time int 11 Thời gian đăng 10 user int 11 Mã User đăng
hình
Khóa phụ
11 luot_xem int 11 Cập nhật lượt xem
Bảng 3.15 Lưu hình ảnhquảng cáo 3.2.16 Bảng: scrab_ about (Lưu bài viết mục giới thiệu)
STT Tên trường Kiểu dữ liệu Length Chú thích Ràng buộc 1 id int 11 Mã bài viết
2 ten varchar 255 Tên bài viết 3 so_luoc text max Sơ lược bài viết 4 noi_dung text max Nội dung bài
viết
5 time int 11 Thời gian đăng 6 user int 11 Mã User đăng
bài viết
Khóa phụ
7 luot_xem int 11 lượt xem
3.2.17 Bảng: scrab_page (Lưu các trang lẻ)
STT Tên trường Kiểu dữ liệu Length Chú thích Ràng buộc 1 id int 11 Mã trang Khóa chính 2 alias varchar 32 Tên biến quy
định
3 ten varchar 255 Tên bài viết 4 noi_dung text max Nội dung bài
viết
5 time int 11 Thời gian đăng 6 user int 11 Mã User đăng
bài viết
Khóa phụ
7 luot_xem int 11 Cập nhật lượt xem
Bảng 3.17 Lưu các trang lẻ
3.2.18 Bảng: scrab_email (Lưu email khách hàng đăng ký nhận tin)
Dùng để lưu email khách hàng đăng ký nhận tin qua form ngoài trang chủ.
STT Tên trường Kiểu dữ liệu Length Chú thích Ràng buộc 1 id int 11 Mã email Khóa chính 2 email varchar 255 Lưu email
3 time datetime Ngày gửi
Bảng 3.18 Lưu email khách hàng đăng ký nhận tin 3.2.19 Bảng: scrab_support (Lưu thông tin hỗ trợ trực tuyến)
STT Tên trường Kiểu dữ liệu Length Chú thích Ràng buộc 1 id int 11 Mã hỗ trợ Khóa chính 2 tieude varchar 32 Tên bộ phân
3 yahoo varchar 255 Nick yahoo 4 other text Thông tin khác 5 time int 11 Thời gian đăng
Bảng 3.19 Lưu thông tin hỗ trợ trực tuyến
3.2.20 Bảng: scrab_online (Lưu ip truy cập tạm thời – số người đang online)
STT Tên trường Kiểu dữ liệu Length Chú thích Ràng buộc 1 ip varchar 11 IP truy cập Khóa chính 2 time varchar 255 Thời gian truy
cập
3 site varchar 255 Truy cập vào trang
4 agent varchar 255 Trình duyệt truy cập
Bảng 3.20 Lưu ip truy cập – số người đang online
3.2.21 Bảng: scrab_online_daily (Lưu lượt truy cập theo ngày)
STT Tên trường Kiểu dữ liệu Length Chú thích Ràng buộc 1 ngay datetime Khóa chính 2 bo_dem int 11 Lưu số lượt truy
cập
3.3 Mô hình dữ liệu quan hệ (RDM)
CHƯƠNG 4. XÂY DỰNG CHƯƠNG TRÌNH 4.1 Giới thiệu công cụ, ngôn ngữ
4.1.1 Ngôn ngữ lập trình PHP
PHP (viết tắt hồi quy "PHP: Hypertext Preprocessor") là một ngôn ngữ lập trình kịch bản hay một loại mã lệnh chủ yếu được dùng để phát triển các ứng dụng viết cho máy chủ, mã nguồn mở, dùng cho mục đích tổng quát. Nó rất thích hợp với web và có thể dễ dàng nhúng vào trang HTML. Do được tối ưu hóa cho các ứng dụng web, tốc độ nhanh, nhỏ gọn, cú pháp giống C và Java, dễ học và thời gian xây dựng sản phẩm tương đối ngắn hơn so với các ngôn ngữ khác nên PHP đã nhanh chóng trở thành một ngôn ngữ lập trình web phổ biến nhất thế giới.
Đoạn mã sau minh họa giúp cách viết PHP lồng vào các trang HTML dễ dàng như thế nào: <html> <head> <title>Mã mẫu</title> </head> <body> <?php
echo "Chào thế giới PHP!"; ?>
</body> </html>
Thẻ <?php và thẻ ?> sẽ đánh đấu sự bắt đầu và sự kết thúc của phần mã PHP qua đó máy chủ biết để xử lý và dịch mã cho đúng. Đây là một điểm khá tiện lợi của PHP giúp cho việc viết mã PHP trở nên khá trực quan và dễ dàng trong việc xây dựng phần giao diện ứng dụng HTTP.
Ngôn ngữ, các thư viện, tài liệu gốc của PHP được xây dựng bởi cộng đồng và có sự đóng góp rất lớn của Zend Inc., công ty do các nhà phát triển cốt lõi của PHP lập nên nhằm tạo ra một môi trường chuyên nghiệp để đưa PHP phát triển ở quy mô doanh nghiệp.
4.1.2 Hệ quản trị cơ sở dữ liệu MySQL4.1.2.1 Khái niệm 4.1.2.1 Khái niệm
MySQL là hệ quản trị cơ sở dữ liệu mã nguồn mở phổ biến nhất thế giới và được các nhà phát triển rất ưa chuộng trong quá trình phát triển ứng dụng. Vì MySQL là cơ sở dữ liệu tốc độ cao, ổn định và dễ sử dụng, có tính khả chuyển, hoạt động trên nhiều hệ điều hành cung cấp một hệ thống lớn các hàm tiện ích rất mạnh.Với tốc độ và tính bảo mật cao, MySQL rất thích hợp cho các ứng dụng có truy cập CSDL trên internet. MySQL miễn phí hoàn toàn cho nên bạn có thể tải về MySQL từ trang chủ. Nó có nhiều phiên bản cho các hệ điều hành khác nhau: phiên bản Win32 cho các hệ điều hành dòng Windows, Linux, Mac OS X, Unix, FreeBSD, NetBSD, Novell NetWare, SGI Irix, Solaris, SunOS, ..
MySQL là một trong những ví dụ rất cơ bản về Hệ Quản trị Cơ sở dữ liệu quan hệ sử dụng Ngôn ngữ truy vấn có cấu trúc (SQL).
MySQL được sử dụng cho việc bổ trợ PHP, Perl, và nhiều ngôn ngữ khác, nó làm nơi lưu trữ những thông tin trên các trang web viết bằng PHP hay Perl,...
4.1.2.2 Tại sao ta sử dụng hệ cơ sở dữ liệu MySQL?
- Nhanh và mạnh: MySQL không có đầy đủ những cơ sở vật chất cho một hệ Quản trị CSDL chính tông, nhưng đối với công việc thường nhật của phần đông mọi người thì nó cung cấp cũng khá nhiều thứ. Nếu công việc của bạn là lưu trữ dữ liệu trên web hoặc làm một trang Thương mại điện tử thì MySQL có đủ những thứ bạn cần. Đối với nhũng CSDL cỡ trung bình thì MySQL hỗ trợ tuyệt vời về tốc độ.
- Cải tiến liên tục: MySQL được cải thiện liên tục với một tần số không ngờ. Các nhà phát triển nó cập nhật thường xuyên, ngoài ra còn bổ sung các tính năng hữu ích cho nó.
4.1.3 Cài đặt chương trình chạy và ứng dụng kết hợp PHP – MYSQL4.1.3.1 Cài đặt chương trình chạy PHP – MYSQL 4.1.3.1 Cài đặt chương trình chạy PHP – MYSQL
Đây là phần mềm giúp bạn tạo ra một server ảo localhost trên máy tính của bạn để có thể test code
Ưu điểm: support toàn đồ xịn từ apache, php, mysql và nhất là hỗ trợ ZEND, và htaccess...
Hướng dẫn cài đặt: Download phiên bản Vertrigo_223 tại địa chỉ: http://vertrigo.sourceforge.net
Chuẩn bị: Cũng như tất cả các chương trình tạo localhost khác, nó đòi hỏi phải được cài trong một chiếc computer "sạch sẽ", nghĩa là không có các chương trình liên quan đến webserver được cài đặt trước đó như AppServ, MySQL, Php...
Nếu có, bạn phải xóa "tận gốc" chúng (trước khi xóa, phải vào Start -> Settings -> Control Panel -> Administrative Tools -> Services để tắt các dịch vụ như Apache, MySQL), xóa luôn cả file php.ini trong thư mục C:\windows rồi khởi động lại máy. Cài đặt: Bạn chạy file cài đặt, lựa chọn ngôn ngữ --> Next -> I Agree -> Next -> chọn thư mục cài đặt (D: \VertrigoServ) --> Next -> Install.
Biểu tượng VertrigoServ xuất hiện trên màn hình dưới dạng:
Hình 4.1 Biểu tượng VertrigoServ
Hình 4.2 Cài đặt khởi động phẩn mềm
Hình 4.3 Bên dưới System Tray
Nếu hình chữ thập trong icon màu xanh, tức là server đang chạy. Màu đỏ - đang tắt. Màu vàng – đang khởi động.
Hình 4.4 Menu Vertrigo
Webroot trong trường hợp này sẽ là D: \VertrigoServ\www\
Hình 2.5 Thư mục Webroot D: \VertrigoServ\www\ Để kiểm tra xem Webserver có hoạt động hay không bạn gõ vào trình duyệt http://localhost hoặc http://127.0.0.1
4.1.3.2 Giới thiệu class Kết nối và tuy vấn SQL (mssql.class.php) <?php // Public function class lg_mssql { var $conn; var $db_name; var $count_query = 0; // init
public function __construct( $host , $db_user , $db_pass , $db_name) {
$this->$db_name = $db_name;
$this->conn = mssql_connect($host , $db_user, $db_pass); mssql_select_db($db_name , $this->conn);
}
public function __destruct() {
@mssql_close( $this->conn ); }
// select - insert - update - delete public function query ( $sql ) {
return @mssql_query($sql , $this->conn); }
public function select ( $table , $where = "" , $clause = "" ) {
$this->count_query++;
$sql = "SELECT * FROM ".$table; if (trim($where) != "")
$sql .= " WHERE ".$where; if (trim($clause) != "")
$sql .= " ".$clause;
return @mssql_query($sql , $this->conn); }
public function insert ( $table , $feild , $values ) {
$this->count_query++;
$sql = "INSERT INTO ".$table; if ( trim($feild) != "" )
$sql .= " (".$feild.")";
$sql .= " VALUES (".$values.") SELECT @@IDENTITY as incId;"; @mssql_query($sql, $this->conn );
return mssql_insert_id($this->conn); }
public function update ( $table , $feild , $value , $where ) {
$this->count_query++;
$sql = "UPDATE $table SET $feild = '".$this->inj_str($value)."'"; if ( trim($where) != "" )
$sql .= " WHERE ".$where; return @mssql_query($sql, $this->conn ); }
public function delete ( $table , $where = "" ) {
$this->count_query++;
$sql = "DELETE * FROM ".$table; if (trim($where) != "")
$sql .= " WHERE ".$where; @mssql_query($sql , $this->conn); $this->optimize($table);
}
public function execute ( $procedure ) {
$stmt = @mssql_init($procedure, $this->conn); return mssql_execute($stmt);
}
// optimize
public function optimize ( $table_name ) {
return false; }
// fetch
public function fetch ( $rs ) {
return @mssql_fetch_array( $rs ); }
// seek
public function seek ( $rs , $id ) {
return @mssql_data_seek($rs, $id); }
// Trả về - số records - của - 1 Result Set public function num_rows ( $rs ) {
return mssql_num_rows( $rs ); }
// Hàm này - dùng để - chuyển - các ký tự - đặc biệt - sang - thể Escape - chống - Hack - SQL Injection
public function inj_str ( $txt ) {
return mysql_escape_string($txt); }
public function escape ( $txt ) {
return mysql_escape_string($txt); }
public function error() {
return mysql_error($this->conn); }
} ?>
4.1.4 Tổng quan về jQueryjQuery là gì? jQuery là gì?
jQuery là một Javascript Framework, hỗ trợ các nhà lập trình web tạo ra các tương tác trên website một cách nhanh nhất. jQuery được khởi xướng bởi John Resig (hiện là trưởng dự án của Mozzila) vào năm 2006, jQuery có mã nguồn mở và hoàn toàn miễn phí. jQuery có một cộng đồng sử dụng đông đảo và được rất nhiều lập trình tham gia hoàn thiện, phát triển và viết Plugin.jQuery luôn là lựa chọn trước tiên của mình trong công việc khi phát triển các dự án website.
Tại sao dùng jQuery ?
jQuery đơn giản hóa cách viết Javascript và tăng tốc độ xử lý các sự kiện trên trang web, giúp tiết kiệm thời gian và công sức so với cách viết javascript thông thường.
Bên cạnh đó, việc sử dụng jQuery giúp giải quyết tốt vấn đề xung đột giữa các trình duyệt web.
Học jQuery rất đơn giản, nếu như bạn nắm vững CSS, bạn có thể tiếp cận và sử dụng jQuery nhanh chóng.
Ưu điểm của jQuery
Hỗ trợ tốt việc xử lí các vấn đề thường gặp (DOM, AJAX…) Tương thích nhiều trình duyệt web phổ biến.
Nhỏ gọn, dễ dùng, có nhiều tài liệu hướng dẫn sử dụng chi tiết. Ít xung khắc với các thư viện Javascript khác.
Plugin phong phú.
Làm sao để sử dụng jQuery?
Để sử dụng jQuery bạn phải có thư viện do jQuery cung cấp bằng cách truy cập vào http://jquery.com để Download phiên bản mới nhất (Hiện tại khi PT viết bài này là phiên bản jQuery 1.7.2).
Hoặc có thể sử dụng trực tiếp jQuery lưu trữ tại jQuery hay Google từ 2 địa chỉ sau: http://code.jquery.com/jquery-1.7.2.min.js
http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js
4.1.5 Tổng quan về CSSCSS là gì? CSS là gì?
CSS là chữ viết tắt của cụm từ tiếng anh (Cascading Style Sheet), CSS được tổ chức World Wide Web (W3C) giới thiệu vào năm 1996. CSS chỉ đơn thuần là một file có phần mở rộng là .css, trong file này chứa những câu lệnh CSS, mỗi câu lệnh css sẽ định dạng một thành phần nhất định của tài liệu HTML như màu sắc, font chữ, . . ..
Thế mạnh của CSS
- Tách riêng phần định dạng ra khỏi nội dung trang web.
- CSS giúp người thiết kế kiểm soát toàn bộ giao diện nhanh nhất và hiệu quả nhất. Nó giúp bạn tiết kiệm công sức rất nhiều trong việc thiết kế giao diện.
- Do được tách rời khỏi nội dung của trang web, nên các mã HTML sẽ gọn gàng hơn, giúp bạn thuận tiện hơn trong việc chỉnh sửa giao diện. Kích thước của file .html cũng được giảm đáng kể. Hơn thế nữa sẽ được trình duyệt tải một lần và dùng nhiều lần (cache), do đó giúp trang web được load nhanh hơn.
4.1.6 SEO, các công cụ tìm kiếm, phương thức hỗ trợ 4.1.6.1 Khái niệm về SEO 4.1.6.1 Khái niệm về SEO
SEO là chữ viết tắt của Search Engine Optimization (tối ưu hóa công cụ tìm kiếm). SEO là một tập hợp các phương pháp nhằm nâng cao thứ hạng của một website trong các trang kết quả của các công cụ tìm kiếm và có thể được coi là một tiểu lĩnh vực của tiếp thị qua công cụ tìm kiếm.
4.1.6.2 Một số công cụ dùng cho nghiên cứu:
KEYWORD
Từ khóa đặt trong <title> tag
Đây là một trong những nơi quan trọng nhất mà marketer cần để từ khóa bởi vì những gì được viết trong <title> tag sẽ được thể hiện trong trang kết quả tìm kiếm như là tên trang web của bạn. Thẻ tựa đề phải ngắn (tối đa là 6 đến 7 từ) và từ khóa phải nằm gần phần đầu của tựa đề.
Từ khóa trong URL
Mật độ từ khóa trong bài viết Từ khóa trong anchor text
Từ khóa trong heading (tag <H1>, <H2> …) Từ khóa trong phần đầu của bài viết/ văn bản Từ khóa trong <alt> tag
Từ khóa trong thẻ meta (meta tag) Khoảng cách từ khóa
Thẻ META
Meta tag : là các thẻ Meta được sử dụng ở phần Header của Html nhằm tăng khả năng tìm kiếm các từ khoá của các công cụ tìm kiếm. Vị Trí Xuất Hiện : <head> Meta tag xuất hiện tại đây </head>
Các thẻ Meta Tags được khuyến khích sử dụng: Meta Content Language
Meta Content Type Meta Description
Thẻ này dùng để mô tả nội dung của một trang web. Nội dung của thẻ này nên được viết ngắn gọn và xúc tích khoảng từ 20 đến 25 từ hoặc ít hơn. Đây là thẻ được hầu hết các SE sử dụng để hiển thị nội dung kết quả tìm kiếm.Thẻ này được khuyến khích sử dụng và nên viết một cách xúc tích nhất nhằm thu hút người dùng bấm vào website của bạn từ kết quả tìm kiếm. Thông thường nếu không dùng thẻ này thì các SE như google cũng sẽ tự động tạo khi index nội dung website. Tuy nhiên bạn nên dùng bởi vì đôi khi các mô tả được index tự động sẽ không được như ý của bạn.
Ví dụ:
<Head>
<meta name="keywords" content="Thông tin doanh nghiệp, liên minh doanh nghiệp, tiêu dùng thông minh" />
<meta name="description" content="Là thẻ tiêu dùng thông minh được triển khai trên kênh tiêu dùng ưu đãi www.giaquatot.com ; www.giaquatot.net ; www.giaquatot.vn thuộc bản quyền của GIÁ QUÁ TỐT. " />
<meta name="copyright" content="Copyright (c) 2011 by www.scrabsoftware.com - Thiet ke website da nang,Quang ba web,Quang ba thuong hieu, Quang cao tren Google" />
<meta name="robots" content="index, follow" /> </Head>
DESCRIPTION
Google rất chú ý đến nội dung trong thẻ DESCRIPTION của trang web, nó được lấy để làm nội dung mô tả của kết quả tìm kiếm cũng như phân tích, đánh chỉ mục để phục vụ cho quá trình tìm kiếm dữ liệu.
Đứng trên khía cạnh người tìm kiếm, khi họ thực hiện tìm kiếm một cụm từ nào đó và kết quả sẽ hiển thị trên trang tìm kiếm. Tại thời điểm này, họ sẽ thực hiện xem xét mình sẽ bấm vào liên kết nào trên kết quả tìm kiếm bằng cách đọc tiêu đề và nội dung mô tả của kết quả tìm kiếm để đánh giá sơ lược về nội dung họ cần. Sau khi thực hiện đánh
giá, họ mới bấm vào liên kết để đến nội dung chi tiết của trang web họ cần tìm kiếm thông tin.
Hãy sử dụng 20-40 từ để mô tả cô đọng về nội dung của trang web và cố gắng sử dụng các từ khóa mục tiêu vào nội dung này.