Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 35 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
35
Dung lượng
672,5 KB
Nội dung
MỤC LỤC I TỔNG QUAN Web Server II Ngôn ngữ PHP Kiến trúc họat động DYNAMIC WEB .4 a Client b Server .5 c MIDDLE WARE .5 III PHP Webserver APACHE .5 Cài đặt PHP Apache .5 Cấu hình web server APACHE 10 IV Nhập môn lập trình php .10 Code PHP HTML .10 a Nhúng code PHP vào web 10 b Thẻ PHP 10 c Sử dụng dấu ; 11 d Ghi php 11 Sử dụng Biến .11 a Biến Form 11 b Khai báo biến 11 c Kiểu liệu biến .12 d Bíên dạng biến thiên 12 e Biến PHP .12 f Tầm họat động biến 12 g Biến mảng 12 h Chuyển đổi biến .15 i Kiểm tra kiểu liệu biến 15 Tóan tử PHP .15 a Tóan tử số học 15 b Tóan tử ghép chuỗi 15 c Tóan tử kết hợp 15 d Tóan tử So sánh .16 e Tóan tử logic 16 f Toán tử ? 16 g Tóan tử error 16 Cấu trúc ngôn ngữ .17 a Phát biểu if .17 b Phát biểu else 17 c Phát biểu elseif .18 d Phát biểu switch .18 e Phát biểu vòng lặp While .18 f Phát biểu vòng lặp do….while .19 g Phát biểu vòng lặp for 19 h Thoát khỏi cấu trúc 19 Tạo hàm PHP 20 a Khai báo hàm 20 b Gọi hàm 20 c Truyền tham số 20 d Hàm có giá trị trả 21 e Tham biến 22 Hàm thư viện 22 a Hàm sử lý số 22 b Hàm sử lý chuỗi .23 c Hàm xử lý thời gian .25 d Các hàm thư viện khác 27 V Lập trình PHP với cở sở liệu 28 Kết nối sở liệu 28 đóng kết nối sở liệu 28 Truy vấn sở liệu .28 a Mở recordset .28 b Đếm số lượng records 28 c Đọc record từ recordset 29 VI Điều khiển session .31 VII Điều khiển Cookie .31 VIII Truy vấn liệu file PHP .32 Mở file 32 Đọc nội dung file 33 Ghi liệu vào file 33 Đóng file 34 Kiểm tra file .34 Kiểm tra dung lượng file .35 Xóa file 35 Giáo trình Lập trình ứng dụng Web với ngôn ngữ PHP I TỔNG QUAN Web Server Chức Web Server không phức tạp Nó chỗ, chạy HĐH, lắng nghe yêu cầu Web gởi đến, sau trả lời yêu cầu này, cấp phát trang Web thích ứng Thực tế không đơn giản vậy, nhiệm vụ Web Server phải cung cấp tính ổn định cho môi trường Web đòi hỏi phải đáp ứng cách nghiêm túc Có nhiều loại Web Server khác nhau, chủ yếu thị trường thường sử dụng Apache IIS (Internet Information Server Microsoft) INTERNET INFORMATION SERVER (IIS) gắn liền với môi trường Windows thành phần thiếu Active Server Pages (ASP) Nếu bạn chọn đường Microsoft có lẽ bạn hiểu rõ IIS Có tích hợp định ngôn ngữ lập trình Web Server Cũng vậy, PHP tích hợp tối IIS Trước đây, có số vấn đề cần phải bàn tính ổn định PHP/IIS với việc truyền tải lớn, PHP IIS cải thiện liên tục nên việc không đáng phải bận tâm APACHE kiểu mẫu Web Server phổ biến Giống Linux, PHP, MySQL dự án nguồn mở Không có ngạc nhiên người ta thấy Apache hỗ trợ tốt môi trường Unix, tốt Windows Apache tận dụng tính third-party Bởi nguồn mở nên có khả viết chương trình mở rộng tính Apache PHP hoạt động với tư cách phần mở rộng Apache, người ta gọi module Apache Apache có tính ổn định tốc độ đáng phải nói Tuy nhiên, có số phàn nàn không hỗ trợ công cụ đồ hoạ trực quan, điều giúp người ta làm việc cách dễ dàng Bạn phải thực thay đổi Apache cách sử dụng dòng lệnh, sử tập tin text folder chương trình Apache Nếu lần đầu đến với Apache bạn gặp chút lạ lẫm Mặc dù Apache làm việc tốt Unix, có phiên chạy tốt hệ Windows Không ai, kể nhà phát triển Apache đề nghị Apache nên chạy server Windows bận rộn Nếu bạn định chọn HĐH Windows cho server bạn nên sử dụng IIS Nếu bạn thử nghiệm ứng dụng Windows sau đem upload chạy Unix/Apache nhà cung cấp host không hấn gì, ứng dụng bạn chạy ngon lành II Ngôn ngữ PHP PHP tốc độ nhanh, dễ sử dụng lý sau so ánh tốc độ ngôn ngữ lập trình Web Thứ nhất, ứng dụng viết C chạy nhanh Thứ hai, công việc lập trình C phức tạp, ngốn nhiều thời gian Thứ ba, việc so sánh ngôn ngữ điều khó khăn Có thể nói PHP nhanh ngôn ngữ khác Chắn chắn bạn chọn loại tiện dụng nhất? Bạn cảm thấy PHP có đầy đủ đặc tính khả năng, cấu trúc dễ sử dụng Xin nói thêm cú pháp PHP tuyệt ASP hay JSP PHP cung cấp tính mạnh mẽ để thực ứng dụng Web cách nhanh chóng PHP cho phép chạy nhiều hệ điều hành Như trình bày phần kiến trúc web, PHP chạy WindowsNT/2000/2003 Unix với hỗ trợ IIS Apache Nhưng chạy số platform khác Netscape, Roxen, hay vài thứ khác Như biết ASP chạy Unix, ColdFusion chạy Solaris Linux, JSP chạy nhiều loại platform Đối với PHP, chạy tốt platform hỗ trợ chủng loại PHP cho phép truy cập loại CSDL Ứng dụng bạn dự định truy cập loại liệu dịch vụ nào? LDAP, IMAP mail server, DB2, hay XML parser hay WDDX Bất kể bạn cần đến thứ PHP sẵn sàng hỗ trợ thông qua hàm xây dựng sẵn làm công việc bạn trở nên dễ dàng tiện lợi rõ Giáo trình Lập trình ứng dụng Web với ngôn ngữ PHP PHP Luôn cải tiến & cập nhật Nếu bạn cảm thấy bỡ ngỡ việc phát triển nguồn mở, bạn có lẽ ngạc nhiên chất lượng loại phần mềm Có hàng ngàn chuyên gia lập trình xuất sắc đợi sẵn họ sẵn sàng bỏ thời gian để tạo hững phần mềm tuyệt vời miễn phí Đối với ngôn ngữ thịnh hành PHP nhiều nhà lập trình thực phát triển ngày Sự thật có việc ấn tượng bạn có cố kỹ thuật, bạn gởi email đến nhà phát triển PHP chi tiết cố Chỉ vòng vài bạn nhận trả lời thoả đáng Khi PHP phổ biến, trở thành tượng ngôn ngữ lập trình Nó giúp cho việc bổ sung số lượng lớn hàm chức cách dễ dàng Nếu ngôn ngữ có sẵn nhiều hàm đặc thù cho công việc bạn đỡ tốn công cho việc lập trình PHP hướng dẫn kỹ thuật lúc Hầu hết ngôn ngữ hỗ trợ active mailing list (hiểu nôm na danh sách mail thành viên trực chiến hỗ trợ kỹ thuật) development site (trang web hỗ trợ giải kỹ thuật) PHP không ngoại lệ Nếu bạn gặp phải cố - gặp lỗi chương trình không tìm cách khắc phục - có hàng trăm người có tên danh sách mail sẵn lòng kiểm tra khắc phục cố cho bạn Bộ nguồn mở PHP thật tạo tình cảm cộng đồng Khi bạn gặp phải khó khăn lúc có đồng môn chia sẻ nỗi lòng giúp bạn khắc phục nhằm đem lại niềm vui cho bạn PHP hoàn toàn miễn phí Bạn không ngại vấn đề quyền bạn sắm máy vi tính cài lên phần mềm Linux, Apache, PHP tất miễn phí Kiến trúc họat động DYNAMIC WEB Kiến trúc để trang Dynamic Web hoạt động phải làm việc mô hình client/server Nôm na thứ client hay server đảm đương chức riêng để hoàn thành công việc chung cho trang Web động Các bạn có lẽ quen thuộc với chương trình WinWord để soạn văn bản, hoạt động độc lập máy tính chẳng cần quan tâm tới client server Ứng dụng Web khác hẳn, phải có mô hình server máy tính làm server thôi, nhằm tập trung hoá việc xử lý liệu Còn client, hiểu nôm na máy tính người sử dụng phải nối mạng với server, giả sử máy truy cập vào Website chẳng hạn, có nghĩa họ truy cập vào server, sau lấy liệu từ server thể lên máy Cùng lúc có hàng trăm người (client) truy cập vào Website xử lý tập trung server, tương tự đám trẻ xúm giành phần từ bánh a Client Các ứng dụng mà bạn phát triểân MySQL PHP sử dụng tính single client trình duyệt Web Tuy nhiên, ngôn ngữ để phát triển ứng dụng Web Đối với ứng dụng phức tạp đòi hỏi multi-client cần tính bảo trì (chúng ta bàn tính sau), ứng dụng Java applet hữu dụng cho việc Chỉ trừ trường hợp bạn cần sử dụng ứng dụng thời gian thực ứng dụng chat chẳng hạn, bạn Java Applet cần thiết Ở không bàn tới lập ứng dụng cho chuyện tán gẫu mà tập trung vào ứng dụng duyệt Web nên không đụng chạm tới Java Applet Như bạn biết ngôn ngữ khởi thuỷ cho việc duyệt Web HTML HTML cung cấp hàng tá thẻ lệnh (Tag) cho phép thể trang Web theo nhiều kiểu cách khác Nếu bạn chưa có kiến thức sở HTML chạy mua sách download internet xuống học hướng dẫn Bạn không nên bỏ nhiều thời gian để học HTML Ngoài HTML trình duyệt Web cho phép add-in hỗ trợ nhiều thứ khác RealPlayer, Flash, Shockwave, hỗ trợ Javascript XML Nhưng tập trung cần thiết cho hội nhập bạn – HTML Giáo trình Lập trình ứng dụng Web với ngôn ngữ PHP b Server Hầu hết ứng dựng Web hoạt động tập trung Server Một ứng dụng đặc trưng gọi Web Server đảm trách việc giao tiếp với trình duyệt Một Cơ sở liệu (CSDL) Server lưu trữ tất thông tin đáp ứng yêu cầu cho công việc ứng dụng Web Kế tiếp, bạn cần phải có ngôn ngữ làm vai trò "chú bé liên lạc" Web Server CSDL server Ngôn ngữ thực công việc xử lý thông tin đến từ Web Server c MIDDLE WARE Ngôn ngữ lập trình Web (PHP, ASP, JSP) DATABASE SERVER (MySQL, SQLserver ) WEB SERVER (Apache, IIS) INTERNET WEB BROWSER(Internet Explorer, Netscape) Và dĩ nhiên thứ chẳng hoạt động không chạy Hệ Điều Hành (HĐH) Các thứ Web Server, Ngôn ngữ lập trình, CSDL phải hoạt động tốt HĐH III PHP Webserver APACHE Cài đặt PHP Apache Bạn Dbl click vào file easyphp1-8_setup.exe để tiến hành cài đặt PHP Webserver Apache, cửa sổ xuất hình : Bạn chọn English, click OK, cửa sổ xuất hình : Giáo trình Lập trình ứng dụng Web với ngôn ngữ PHP Click phím next , cửa sổ xuất hình : Đánh dấu check vào mục I Accept the agreement, click phím next cửa sổ xuất hình : Giáo trình Lập trình ứng dụng Web với ngôn ngữ PHP Click phím next, cửa sổ xuất hình : Click phím next cửa sổ xuất hình : Giáo trình Lập trình ứng dụng Web với ngôn ngữ PHP Chọn YES, click phím next cửa sổ xuất hình : Click phím next cửa sổ xuất hình : Click chọn nút Install, click phím next cửa sổ xuất hình : Giáo trình Lập trình ứng dụng Web với ngôn ngữ PHP Đợi chương trỉnh cài đặt xong, cửa sổ xuất hình : Chọn Finish để hòan tất chuơng trình cài đặt Để khởi động chương trình ban vào click nút Start – Program – EasyPHP – EasePHP, cửa sổ sau xuất hình : Giáo trình Lập trình ứng dụng Web với ngôn ngữ PHP Bạn click vào nút Apache chọn Start Cấu hình web server APACHE Sau bạn start Webserver , bạn kiểm tra thư mục cài đặt có thư mục WWW , thư mục mà sau chứa tòan ứng dụng web bạn Trên taskbar bạn thấy hình chữ E màu đen Click chuột fải vào chữ E chọn Configuration Apache Bạn thấy file có tên httpd.conf xuất Bạn tìm đến mục Listen thêm vào dòng lệnh sau : Listen [địa ip webserver]:80 lưu file lại Lệnh dùng phép client mạng truy xuất vào webserver để duyệt trang web Bạn tạo thử trang index.php có nội dung lưu vào thư mục WWW Client xem trang thông qua đị internet sau : http://[địa ip WebServer]/index,php Nếu máy Webserver bạn truy xuất qua địa http://localhost/index.php IV Nhập môn lập trình php Code PHP HTML a Nhúng code PHP vào web Code PHP HTML nằm cú pháp sau : Vi du trang PHP Ví dụ sau sử dụng tham số bắt buộc tùy chọn (là tham số mà gọi hàm bạn truyền vào hay không User Defined Functions with optional parameters d Hàm có giá trị trả Nếu bạn khai báo hàm có giá trị trả về, bạn sử dụng phát biểu return ứng với giá trị trả cuối hàm, bên phát biểu return số câu lệnh khác, câu lệnh không dịch ie gặp lệnh return coi hàm chấm dứt User Defined Return Functions with optional parameters e Tham biến Khi truyền giá trị cho hàm thông qua biến bạnmuốn lấy giá trị trả cho biến bạn dùng kỳ thuất tham biến thêm tóan tử & vào biến hàm nhận giá trị tới ByValue in Functions Hàm thư viện a Hàm sử lý số • abs(số) : lấy trị tuyệt đối echo $abs = abs(-4.2).""; // $abs = 4.2 (double/float) echo $abs2 = abs(5).""; // $abs2 = (integer) echo $abs3 = abs(-5).""; // $abs3 = (integer) • sqprt(trị số) : Lấy bậc echo sqrt(9).""; // echo sqrt(10).""; // 3.16227766 • fmod(số chia, số bị chia) : chia lấy phần dư $x = 5; $y = 3; echo $r = fmod($x, $y) ""; Giáo trình Lập trình ứng dụng Web với ngôn ngữ PHP 22 • min(danh sách trị số) : lấy giá trị nhỏ danh sách echo min(2, 3, 1, 6, 7).""; // echo min(array(2, 4, 5)).""; // • max(danh sách trị số) : lấy giá trị lớn danh sách echo max(1, 3, 5, 6, 7).""; // echo max(array(2, 4, 5)).""; // • floor(trị số) :làm tròn xuống echo floor(4.3).""; // echo floor(9.999).""; // echo floor(-3.14).""; // -4 • ceil(trị số): làm tròn lên echo ceil(4.3).""; // echo ceil(9.999).""; // 10 echo ceil(-3.14).""; // -3 • round(trị số,n) : làm tròn đến n số lẻ: n số dương làm tròn phần thập phân, n số âm làm tròn phần nguyên echo round(3.4).""; // echo round(3.5).""; // echo round(3.6).""; // echo round(3.6, 0).""; // echo round(1.95583, 2).""; // 1.96 echo round(1241757, -3).""; // 1242000 echo round(5.045, 2).""; // 5.05 echo round(5.055, 2).""; // 5.06 • coutn(danh sách) : đếm số phần tử có giá trị $a[0] = 1; $a[1] = 3; $a[2] = 5; echo $result = count($a).""; // $result == $b[0] = 7; $b[5] = 9; $b[10] = 11; echo $result = count($b).""; // $result == • rand() : cho kết số ngẫu nhiên echo rand().""; echo rand().""; echo rand(5, 15); // cho so ngau nhieu tu 5- 15 b Hàm sử lý chuỗi • Ltrim(chuỗi): cắt bỏ khỏang trắng bên trái chuỗi • Chop(chuỗi): cắt bỏ khỏang trắng bên phải chuỗi • Trim(Chuỗi): cắt bỏ khỏang trắng bên phải bên trái chuỗi • printf(chuỗi): in chuỗi trang web với định dạng cho trước Lọai Diễn giải b Biên dịch số nguyên in dạng binary c Biên dịch số nguyên in dạng character d Biên dịch số nguyên in dạng decimal f Biên dịch số thực double in dạng float o Biên dịch số nguyên in dạng octal s Biên dịch chuỗi in dạng string x Biên dịch số nguyên in dạng hexadecimal ký tự từ a-f X Biên dịch số nguyên in dạng hexadecimal ký tự từ A-F • strupper(chuổi) : biến đỗi thành chữ hoa • strlower(chuỗi) : biến đổi thành chữ thường • ucfirst(chuỗi) : biến đổi ký tự đầu câu viết hoa • ucword(chuỗi) : biến đổi ký tự đầu từ viết hoa • Định dạng chuỗi : chuỗi bạn muốn lưu ký tự đặc biết dấu nháy’ dấu \ bạn phải thêm vào trướ dấu dấu \.Hàm AddSlashes(chuỗi) tự động tìm ký tự lạ để thêm vào dấu \ Ngược lại hàm StripSlashes(chuỗi) lọai trừ chuỗi có sẵn dấu \ khỏi chuỗi [...]... kèm số 0 với 1 ký tự %b Tháng viết tắt %j Ngày thứ mấy trong năm (1-365) %H giờ 2 con số (00-23) %k Giờ không kèm số 0 với 1 ký tự %h Giờ 2 con số (1-12) %i Phút không kèm số 0 với 1 ký tự %r giờ dầy đủ với định dạng 12 giờ (hh:mm:ss AM/PM) %T giờ dầy đủ với định dạng 12 giờ (hh:mm:ss) Giáo trình Lập trình ứng dụng Web với ngôn ngữ PHP 26 %S %s %p %w < ?php Giây 2 con số Giây không kèm số 0 với 1 ký... sử dụng trong function đó mà thôi • Biến cấp script hay biến tòan cục là biến khai báo trong 1 script php bên ngoài các function, nó có thể được sử dụng trong tất cả các function của PHP trên trang web tương ứng g Biến mảng Biến mảng là biến dữ liệu lưu trự tập hợp gồm nhiều biến , mỗi biến được xem như là 1 phần tử trong mảng chứa 1 giá trị bất kỳ Giáo trình Lập trình ứng dụng Web với ngôn ngữ PHP. .. đầu < ?php $soluong=300; Giáo trình Lập trình ứng dụng Web với ngôn ngữ PHP 11 $dongia=200; $tongtien=$soluong*$dongia; echo “Thành tiền : $tongtien”; ?> c Kiểu dữ liệu của biến PHP hỗ trợ 5 kiểu dữ liệu sau : • Integer : Sử dụng hầu hết cho giá trị dữ liệu kiểu số • Double : Sử dụng hầu hết cho giá trị dữ liệu kiểu số thực • String : Sử dụng hầu hết cho giá trị dữ liệu kiểu chuỗi • Array: Sử dụng hầu... the value print 'foo is $foo'; // foo is $foo // If you are not using any other characters, you can just print variables print $foo; // foobar ?> Giáo trình Lập trình ứng dụng Web với ngôn ngữ PHP 27 V Lập trình PHP với cở sở dữ liệu 1 Kết nối cơ sở dữ liệu PHP cung cấp hàm kết nối cơ sở dữ liệu có cú pháp như sau : $link = mysql_connect ("localhost", "root", ""); if(!$link) { echo "not connection!";... trắng bên phải chuỗi • Trim(Chuỗi): cắt bỏ các khỏang trắng bên phải và bên trái chuỗi < ?php $total=1000 echo $total ltrim(" Wellcome") ; Giáo trình Lập trình ứng dụng Web với ngôn ngữ PHP 23 echo chop("Wellcome ").$total ; echo $total trim(" Wellcome ").$total ; ?> • printf(chuỗi): in ra 1 chuỗi trên trang web với định dạng cho trước Lọai Diễn giải b Biên dịch như số nguyên và in dạng binary c Biên... cấu trúc if else trên bằng tóan tử ? như sau < ?php $a=10; $b=$a+10; $c=($a>10)?$a:$b; echo "c:$c"; ?> g Tóan tử error Trong trường hợp biếu thức hay phép tóan phát sinh lỗi trên trang web, nếu bạn muốn không xuất ra thông báo lỗi này thì bạn dùng tóan tử error là dấu @ < ?php $a=10; $c=0; $b=$a/$c; echo "b:".$b; Giáo trình Lập trình ứng dụng Web với ngôn ngữ PHP 16 ?> Ví dụ trên sẽ xuất ra lỗi : Warning... nào đó bạn dùng từ khóa exit , khi php gặp lệnh này nó sẽ thót ngay ra khỏi phát biểu mà không cần biểu điều kiện vẫn còn thỏa trong vòng lặp hay so sánh < ?php $qtty=5; $price=5000; while($qtty>0) { echo "".$qtty.""; echo $qtty*$price.""; $qtty ; if ($qtty==3) exit; } ?> Giáo trình Lập trình ứng dụng Web với ngôn ngữ PHP 19 5 Tạo hàm trong PHP a Khai báo hàm Cú pháp : function... echo "$tenkh"; } } Giáo trình Lập trình ứng dụng Web với ngôn ngữ PHP 30 ?> < ?php mysql_close($link); ?> VI • • • • • • • Điều khiển session Để khởi tạo 1 session trên trang web bạn dùng lệnh session_start() Để lấy id của 1 session hiện hành bạng dùng lệnh $myvalue=session_id(); Để khai báo 1 biến session bạn dùng lệnh session_register("biến") < ?php session_start(); $suid="admin";... < ?php session_start(); $id=""; if (session_is_registered("suid")) { $id=$suid; session_unset(); session_destroy(); } ?> VII Điều khiển Cookie • Tạo mới 1 biến cookie dùng cú pháp : setcookie(“tên biến”,giá trị) Giáo trình Lập trình ứng dụng Web với ngôn ngữ PHP 31 < ?php $myvalue="You are visited our site"; setcookie("intershop",$myvalue); • ?> Lấy giá trị của 1 biến cookie thực hiện như sau : < ?php. .. chuỗi con đầu tiên tại vị trí chuỗi phân tách < ?php $chuoi="Wellcome to my site"; echo ""; $giatri=strtok($chuoi," "); Giáo trình Lập trình ứng dụng Web với ngôn ngữ PHP 24 echo $giatri.""; while($giatri!="") { $giatri=strtok(" "); echo $giatri ""; } • • • • • • ?> substr(chuỗi,vị trí, số ký tự) : trích ra n ký tự bắt đầu tại vị trí chuỗi < ?php $str="your customer service is excellent."; ... Giáo trình Lập trình ứng dụng Web với ngôn ngữ PHP Click phím next, cửa sổ xuất hình : Click phím next cửa sổ xuất hình : Giáo trình Lập trình ứng dụng Web với ngôn ngữ PHP Chọn YES, click phím... just print variables print $foo; // foobar ?> Giáo trình Lập trình ứng dụng Web với ngôn ngữ PHP 27 V Lập trình PHP với cở sở liệu Kết nối sở liệu PHP cung cấp hàm kết nối sở liệu có cú pháp sau... Program – EasyPHP – EasePHP, cửa sổ sau xuất hình : Giáo trình Lập trình ứng dụng Web với ngôn ngữ PHP Bạn click vào nút Apache chọn Start Cấu hình web server APACHE Sau bạn start Webserver , bạn