Cơ chế lập trình WEB
Cơ chế lập trình WEB
Web tĩnh:
Client
(IE,
Netscape,..)
Web server
http://localhost
Trang HTML
Cơ chế lập trình Web
Cơ chế lập trình Web
Web động
Client
(IE,
Netscape,..)
Web server
http://localhost
PHP, ASP,JSP,..
PHP, ASP,JSP,...
biên dịch
Database
HTML
SQL Server, My
SQL,..
Cơ chế lập trình Web
Cơ chế lập trình Web
Server Side
Sử dụng các NNLT để lập trình WEB ở
phía Server, nghĩa là trang web sẽ được
biên dịch và xử lý từ phía Server rồi mới
gửi về trình duyệt
PHP, ASP, JSP,. NET là các NNLT
Server side
–
Kết nối CSDL trên Server
–
Tính toán trên dữ liệu
–
Tìm kiếm
Cơ chế lập trình Web
Cơ chế lập trình Web
Client side
Sử dụng các NNTL xử lý ở phía Client
rồi mới gửi yêu cầu đên Server
JavaScript là NNLT phổ biến
–
Kiểm tra dữ liệu trên form
–
Tạo hiệu ứng trên hình ảnh
–
...
Web server
Web server
Là phần mềm đảm nhiệm vai trò Server
cung cấp dịch vụ WEB
Hỗ trợ các công nghệ khác nhau
–
IIS (Internet Information Service): Hỗ trợ
ASP, mở rộng hỗ trợ PHP
–
Apache: Hỗ trợ PHP
–
Tomcat: Hỗ trợ JSP (Java Servlet Page)
Web Server
Web Server
IP: 203.162.0.12
www.vnn.vn
C:\inetpub\www
Web Server
Client
-
IE
-
Netscape
-
..
DNS
Database
Web Server
Web Server
-IIS
-Apache
MySQL Database
Client
-IE
-Netscape
-Mozila,...
PHP
Trang PHP là 1 trang HTML có nhúng mã PHP
Để minh hoạ cho điều này, ta hãy xem qua một số ví dụ sau:
Ví dụ 1: lưu file sau lên đĩa với tên vd1.php và chạy thử:
<html>
<head><title>Testing page</title>
</head>
<body>
<?php echo "Hello, world!"; ?>
</body>
</html>
<html>
<head><title>Testing
page</title>
</head>
<body>
Hello, World!
</body>
</html>
Tiếng Việt trong WEB
Tiếng Việt trong WEB
Sử dụng Unikey chọn bộ gõ UTF-8
<?php echo "<html><head><title>Testing
page</title></head><body>Hello, world!
</body></html>"; ?>
Bạn cũng nhận được 1 trang HTML có source
là:
<html>
<head><title>Testing page</title>
</head>
<body>Hello, World!
</body>
</html
Như vậy có thể nhận xét rằng 1 trang PHP cũng
chính là 1 trang HTML có nhúng mã PHP ở bên
trong và có phần mở rộng là .php.
Phần mã PHP được đặt trong thẻ mở <?php và thẻ
đóng ?>.
Khi trình duyệt truy cập vào 1 trang PHP, server
sẽ đọc nội dung file PHP lên, lọc ra các đoạn mã
PHP, thực thi các đoạn mã đó, lấy kết quả xuất ra
của các đoạn mã PHP thay thế vào chỗ ban đầu
của chúng trong file PHP, cuối cùng server trả về
kết quả cuối cùng là 1 trang nội dung HTML về
cho trình duyệt.
Lệnh echo dùng để xuất 1 chuỗi văn bản về
trình duyệt
Ở các ví dụ bên trên, ta đã dùng 1 lệnh của PHP là
lệnh echo. Lệnh này dùng để xuất 1 chuỗi văn
bản về cho trình duyệt.
Ví dụ câu lệnh echo "Hello, world!"; trình duyệt
sẽ nhận được chỗi văn bản Hello, world!.
Câu lệnh echo 1+2; sẽ trả về cho trình duyệt
chỗi văn bản 3.
Và câu lệnh echo 1+2, "Hello, world!"; sẽ trả
về trình duyệt chỗi 3Hello, world!.
Phân cách các lệnh bằng dấu chấm phảy (;)
Tương tự như các ngôn ngữ lập trình C hoặc Pascal,
1 câu lệnh của PHP được kết thúc bằng dấu chấm
phảy (;). Ví dụ:
echo 1+2;
echo "Hello, world!";
Chú thích trong chương trình
Chú thích 1 dòng được bắt đầu bằng // hoặc #, và
những gì được ghi từ đó về sau là chú thích. Chú
thích nhiều dòng được bắt đầu bằng /* và kết thúc
bằng */, những gì ở giữa là chú thích.
TRUYỀN TT QUA CÁC TRANG
TRUYỀN TT QUA CÁC TRANG
Sử dụng FORM
Sử dụng SESSION
Sử dụng URL
<form action=“URL” method =“POST”>
<input … name =“n1”>
<input … name =“n1”>
..
</form>
$v1= $_POST[“n1”]
$v2= $_POST[“n2”]
Method =“POST”
Method =“POST”
Chỉ truyền được thông tin qua FORM.
<form action=“URL” method =“GET”>
<input … name =“n1”>
<input … name =“n1”>
..
</form>
$v1= $_GET[“n1”]
$v2= $_GET[“n2”]
Method=“GET”
Method=“GET”
TT được truyền trên URL
/>………..x.php?n1=Nam&n2=TPVinh
SESION
SESION
Khởi động:
<?php
session_start();
?>
Đặt đầu tiên của trang PHP
Gán giá trị:khởi đầu.
if (!isset($_SESSION[“n1”])
{ $SESSION[“n1”]=giá trị;}
Gán giá trị cho biến SESSION đã tồn tại
$SESSION[“n1”]=giá trị;
Truyền TT qua URL?
/>Ứng dụng phương pháp GET để đưa thông tin lên URL
<a href =“x.php”? Id=1&name=Nokia > Chi tiet </a>
…x.php?id=1 & name=Nokia
$id=$_GET[“id”]
$name=$_GET[“name”]
Lấy thông tin từ URL?
Ứng dụng của PP truyền TT trên URL
Ứng dụng của PP truyền TT trên URL
Trong một số trường hợp không thể sử dụng
FORM để truyền thôn tin
Nhưng cũng không hiệu quả nếu dùng SESSION
Ví dụ:
Xem chi tiết của một sản phẩm bằng cách nháy
chuột vào hình ảnh
Xem chi tiết thông tin của một người bằng cách
nháy chuột vào tên
Ví dụ
Ví dụ
$id=01;
$name =“Nokia”;
Echo “<a href=\“xem.php\”?id=$id&n=$name> Chi tiet </a>
Chi tiet
…xem.php?id=01&n=Nokia
Tổ chức các tệp tin trong một Web site
Tổ chức các tệp tin trong một Web site
includes
baitap
images
Các tệp thư viện
HTML
PHP
functions.php
connect.php
consts.php
logo.jpg
nokia.jpg
index.php
left.php
right.php
top.php
Chèn tệp tin
Chèn tệp tin
PHP cho phép chèn các tệp tin đã có vào một vị trí
nào đó trong tệp tin hiện tại
Include “path/filename”;
hoặc
require “path/filename”;
Index.php trong thư mục baitap
<?php
include “./includes/functions.php”;
include “./includes/connect.php”;
include “./includes/consts.php”;
…
PHP và MySQL
PHP và MySQL
Không có MySQL thì PHP không thể phổ
biến như hiện nay??
MySQL là hệ quản trị CSDL miễn phí rất
phù hợp với các ứng dụng trên Internet
Hầu hết các HOST đều hỗ trợ MySQL và
PHP
PHP chứa các hàm hỗ trợ làm việc với
CSDL MySQL