Bài mở đầu Phần 1. HTML và CSS căn bản Phần 2. Ngôn ngữ JavaScript Phần 3. Ngôn ngữ PHP Phần 4. PHP và MySQL Yêu cầu Kiến thức cơ bản về lập trình. Tham gia đầy đủ thời gian theo quy định môn học. Bài tập (có tính điểm) Thi hết môn học (trắc nghiệm + tự luận)
8/4/2010 1 Lập trình web Bộ môn Kỹ thuật Máy tính Viện CNTT&TT - ĐH BKHN Chuyên đề Nội dung Bài mở đầu Phần 1. HTML và CSS căn bản Phần 2. Ngôn ngữ JavaScript Phần 3. Ngôn ngữ PHP Phần 4. PHP và MySQL 2 Lập trình web 8/4/2010 2 Tài liệu tham khảo Lập trình web động với PHP/MySQL – Tống Phước Khải Sử dụng PHP/MySQL thiết kế web động (Nguyễn Trường Sinh) http://www.w3schools.com …. 3 Lập trình web Yêu cầu Kiến thức cơ bản về lập trình. Tham gia đầy đủ thời gian theo quy định môn học. Bài tập (có tính điểm) Thi hết môn học (trắc nghiệm + tự luận) 4 Lập trình web 8/4/2010 3 Bài mở đầu Nhắc lại một số khái niệm Phân loại trang web Xây dựng website? 5 Lập trình web Mạng, giao thức Mạng máy tính (Computer Network): Hệ thống các máy tính được kết nối với nhau nhằm trao đổi dữ liệu. Qui mô: LAN, WAN, GAN (internet) Giao thức (Protocol): Tập hợp các quy tắc được thống nhất giữa các máy tính trong mạng nhằm thực hiện trao đổi dữ liệu được chính xác Ví dụ: TCP/IP, HTTP, FTP, POP3 8/4/2010 4 Địa chỉ IP (IP Address) Xác định một máy tính trong mạng theo giao thức TCP/IP Thường có dạng x.y.z.t (IPv4) trong đó 0 ≤ x, y, z, t ≤ 255 Địa chỉ đặc biệt 127.0.0.1 địa chỉ của máy đang sử dụng Được quản lý chặt chẽ Ví dụ: địa chỉ IP 202.191.57.90 gắn liền với máy chủ web của SICT 7 Lập trình web Tên miền (domain name) Được gắn với một địa chỉ IP. Có tính chất gợi nhớ. Máy chủ DNS thực hiện việc “gắn” (ánh xạ) Chia thành các cấp, ngăn cách bởi dấu chấm (.) Ví dụ: tên miền soict.hut.edu.vn gắn với địa chỉ IP 202.191.57.90 trong đó vn: Nước Việt Nam (us: Mỹ, uk: Anh, …) edu: Tổ chức giáo dục (com: thương mại, gov: chính phủ) hut: Tên trường ĐH Bách khoa Hà Nội soict: Viện CNTT&TT Tên miền đặc biệt localhost gắn với địa chỉ IP 127.0.0.1 8 Lập trình web 8/4/2010 5 Máy chủ - Máy phục vụ (Server) Cung cấp tài nguyên, dịch vụ cho các máy tính khác trong mạng Được cài các phần mềm chuyên dụng để cung cấp dịch vụ Một server có thể cung cấp một hoặc nhiều dịch vụ. Tên server gắn liền với dịch vụ cung cấp. Web Server – Cung cấp dịch vụ web Mail Server – Cung cấp dịch vụ thư điện tử File Server – Cung cấp dịch vụ truyền nhận file Application Server Cấu hình cao, hoạt động ổn định. Giá thành đắt hơn so với các máy thông thường 9 Lập trình web Máy khách - Client Là máy khai thác dịch vụ của máy chủ Thiết bị đa dạng: Có thể là máy tính, điện thoại hay các thiết bị khác có kết nối mạng Được cài đặt các chương trình để khai thác dịch vụ Một máy tính có thể vừa là server vừa là client. 10 Lập trình web 8/4/2010 6 Cổng dịch vụ: Service Port Là số [0; 65535] xác định dịch vụ của máy chủ 2 dịch vụ khác nhau chiếm các cổng khác nhau Mỗi dịch vụ thường chiếm các cổng xác định, ví dụ: • Web: 80 • FTP: 21 Chuỗi định vị tài nguyên: URL (Uniform Resource Locator) Tài nguyên: file trên mạng URL: Xác định vị trí và cách khai thác file Cấu trúc: giao_thức://địa_chỉ_máy:cổng/đường_dẫn/tên_file Ví dụ: http://soict.edu.vn:80/index.php Trong trường hợp mặc định, nhiều thành phần có thể bỏ qua: Giao thức, cổng: Được trình duyệt đặt mặc định Tên file: được máy chủ đặt mặc định 8/4/2010 7 Trang web, web site, www Trang web (web page) Là một trang có chứa nội dung Có thể viết bằng nhiều ngôn ngữ khác nhau nhưng kết quả trả về client là HTML Web site Là tập hợp các trang web có chứa nội dung thống nhất World Wide Web Tập hợp các web site trên mạng Internet 13 Lập trình web Web Server Máy cung cấp dịch vụ web Cài các phần mềm web server chuyên dụng: Apache: mã nguồn mở Internet Information Services (IIS): sản phẩm của Microsoft 14 Lập trình web 8/4/2010 8 Trình duyệt web (Web Browser) Phần mềm chạy trên máy khách để khai thác dịch vụ web Các trình duyệt web phổ biến Internet Explorer Mozilla Firefox Opera Google Chrome Apple Safari Nescape … 15 Lập trình web Bài mở đầu Nhắc lại một số khái niệm Phân loại trang web Xây dựng website? 16 Lập trình web 8/4/2010 9 Phân loại trang web Dựa vào công nghệ phát triển: có 2 loại Trang web tĩnh Dễ phát triển Tương tác yếu Sử dụng HTML Thường dùng các công cụ trực quan để tạo trang web Trang web động Khó phát triển hơn Khả năng tương tác cao Sử dụng các ngôn ngữ khác nhau Thường viết nhiều mã lệnh 17 Lập trình web Một số công nghệ viết web động Động phía client: JavaScript, VBScript được chạy ở client. Applet Flash Động phía server: CGI: Common Gateway Interface Java Server Pages (SUN) Active Server Pages (ASP), ASP.NET: Microsoft PHP: Mã nguồn mở • Ngôn ngữ lập trình PHP, chạy phía server. • Webserver: Apache, IIS • Bộ biên dịch: PHP Perl 8/4/2010 10 Bài mở đầu Nhắc lại một số khái niệm Phân loại trang web Xây dựng website? 19 Lập trình web Xây dựng website ? Cần nắm được: 1. HMTL (Ngôn ngữ đánh dấu siêu văn bản) 2. Web Programming language (Ngôn ngữ lập trình Web) 3. Web Server (cung cấp dịch vụ Web) 4. Database Server (cung cấp dịch vụ Cơ sở dữ liệu cho web). 20 Lập trình web [...]... điều khiển các phần tử của trang Web dễ dàng hơn Một số ngôn ngữ lập trình Web như là: ASP, ASP.Net, PHP, JSP 21 Lập trình web Xây dựng website ? Web Server? Máy phục vụ Web: máy tính mà trên đó cài đặt phần mềm phục vụ Web, đôi khi người ta cũng gọi chính phần mềm đó là Web Server - Tất cả các Web Server đều hiểu và chạy được các file *.htm và *.html, tuy nhiên mỗi Web Server lại phục vụ một số kiểu... (Internet Information Service) – tích hợp trong Win 2000, XP, 2003, Vista Apache: http://www.apache.org Biên dịch: PHP: http://www .php. net Hệ quản trị CSDL: MySQL www.mysql.com Hỗ trợ quản lý CSDL MySql MySql Control PHPMyAdmin (web) SQL Manager Hỗ trợ soạn thảo: PHPEdit, PHPExpert Macromedia Dreamweaver Phần mềm khác: Bộ gõ: Unikey Adobe Photoshop Xara3D … 12 ...8/4/2010 Xây dựng website ? HTML ? HTML (HyperText Markup Language, tức là "Ngôn ngữ Đánh dấu Siêu văn bản") là một ngôn ngữ đánh dấu được thiết kế ra để tạo nên các trang web, nghĩa là các mẩu thông tin được trình bày trên World Wide Web Web Programming Language? Ngôn ngữ được viết theo phong cách lập trình (khác so với HTML - ngôn ngữ đánh dấu) để hỗ trợ và tăng cường các khả năng của Web Cho phép... Microsoft dành cho *.asp, *.aspx ; Apache dành cho * .php ; Sun Java System Web Server của SUN dành cho *.jsp Database Server ? Máy phục vụ Cơ sở dữ liệu: Máy tính mà trên đó có cài đặt phần mềm Hệ quản trị Cơ sở dữ liệu (HQTCSDL) Chúng ta có một số HQTCSDL chẳng hạn như: SQL Server, MySQL, Oracle 22 Lập trình web 11 8/4/2010 Cài đặt và cấu hình các phần mềm Web server: Chọn 1 trong 2 IIS (Internet Information