PHP Tutorial chương 2 p14

3 266 0
PHP Tutorial chương 2 p14

Đang tải... (xem toàn văn)

Thông tin tài liệu

Làm việc với Server Chúng ta đã biết nhiều về cách thức PHP hoạt động, làm thế nào để tương tác với người sử dụng qua các form, hôm nay chúng ta sẽ để ý một chút về server, bao gồm các thông tin kĩ thuật cũng như nắm bắt những gì người sử dụng gửi cho ta Có một việc rất may mắn cho các lập trình viên PHP là không phải chú ý đến server sẽ được sử dụng là Linux, FreeBSD hay Microsoft Windows, cũng không phải quan tâm đến sự khác biệt giữa Apache và IIS. Tuy nhiên, cũng có 1 vài điều chú ý nho nhỏ cho các bạn để chắc chắn những đoạn code viết ra phù hợp với server và hệ thống Đường dẫn và thư mục Có một sự khác biệt trong cách quản lý file và thư mục giữa các hệ thống Unix và Windows. Ví dụ trong 1 hệ thống Unix, thì đường dẫn đến website của bạn có thể là /home/httpd/customerwikiweb/wwwưp nhưng với hệ thống Windows thì lại là D:\WebSites\CustomerWiki\DocumentRoot. Điều này sẽ gây ra chút khó khăn khi bạn muôn viết code để xử lý dấu / hoặc \ và lo lắng về tên của ổ đĩa May mắn thay, thông thường dữ liệu chúng ta lấy vào từ database còn các file và thư mục thì cũng không quá xa với nơi đặt file PHP. Thêm nữa, hầu hết các hàm về file và thư mục trong Windows sẽ tự hiểu / và \. Chính vì vậy thay vì dùng các đường dẫn tuyệt đối, chúng ta chỉ cầ n sử dụng các đường dẫn tương đối và quên cấu trúc thư mục trên nó. Các biến của server Chìa khóa để ta hiểu thêm về server của mình là mảng "siêu" toàn cục $_SERVER đã giới thiệu từ trước. Có rất nhiều phần tử trong mảng này, ta sẽ tìm hiểu về 1 vài phần tử thường được sử dụng PHP_SELF Giả sử người sử dụng truy cập vào http://www.domain.com/php/test.php thì $_SERVER["PHP_SELF"] sẽ trả về kết quả là /php/test.php Chú ý: nếu truy xuất giá trị này từ trong đoạn mã đã được include bởi 1 đoạn mã khác thì giá trị thu được sẽ là của đoạn mã đã thực hiện include SERVER_NAME Phần tử này sẽ trả lại tên của server mà không có phần http:// ví dụ như www.domain.com . SERVER_SOFTWARE Cái tên nói lên tất cả! Khi được gọi, phần tử $_SERVER["SERVER_SOFTWARE"] sẽ trả về tên của phần mềm mà server sử dụng. Có thế là Microsoft-IIS/5.1 hoặc Apache/1.3.33 (Unix) P sẽ phải l dụ như c PHP Co <?ph p if ( { / } ?> REQU E Qua phầ HEAD ~ HTTP_ U Bạn sẽ b sử dụng U; Win d Có một truy cập REMO T Nếu bạn Có 1 điề khác nha khác nha Các ph ầ Có rất nh đủ các b thấy đượ Các biế n Ngoài m $_ENV. $_ENV [ các file t Nắm vữ n đoạn cod PHP/5.0.4 m lấy thông số chỉ chạy trê de: p (strcmp(sub // Cho hàm EST_METH ần tử này bạ ~> bạn sẽ bi USER_AGE biết được ch FireFox và dows NT 5.1 số trang we vào, tránh TE_ADDR n muốn biết ều cần chú ý au do có trư au mới đến ần tử khác hiều, rất nh bạn có thể sử ợc sự khác b n môi trườ mảng $_SER Nó cho phé ["PATH"] s thực thi ng được cá de của bạn mod_ssl/2.8 ố này trước ên Apache, c bstr($_SERV của Apach HOD ạn có thể bi iết được chí ENT hương trình à sử dụng W 1; en-US; rv eb thường k hao phí tài IP của má y ý là các yêu ường hợp cá được serve hiều các phầ ử dụng hàm biệt giữa ch ờng RVER, PHP ép truy xuấ ẽ trả về kết ch lấy thôn đang chạy v 8.22 OpenSS khi sử dụn còn trên IIS VER['SERV he vào đây ết phương t ính xác là n h người dùn Windows thì v:1.7.5) Ge kiểm tra phầ nguyên hệ y khách truy u cầu của cù ác gói dữ li er ần tử trong m m phpinfo. T húng còn cung c ất vào các bi t quả là danh ng tin từ serv và giúp nó SL/0.9.7f. S ng vì nó chỉ S thì báo lỗi VER_SOFT thức gửi đi, người dùng ng đang sử d ì bạn sẽ có đ ecko/200411 ần này để ng thống y cập vào th ùng người, c ệu truyền đ mảng $_SE Thử nghiệm cấp cho chú iến môi trườ h sách các t ver sẽ giúp chạy "ngọt Sau này sẽ c chạy trên 1 i) TWARE'], 0 , có thể là P đang cần g dụng để truy được kết qu 107 Firefox găn chặn kh hì đây chính cùng 1 sess đi từ người d ERVER, để t m trên nhiều úng ta 1 mản ờng của hệ thư mục mà bạn hiểu th " hơn, "êm" có một vài h 1 phần mềm 0, 6),'Apach POST, GET, gì để phục v y cập vào. N uả: Mozilla/ x/1.0 hông cho cá h là phần tử sion có thể đ dùng đã qua thu được 1 u loại server ng "siêu" to thống ví dụ à hệ điều hà hêm về môi " hơn hàm đặc biệ m nhất định he') == 0) T, PUT hoặc vụ chu đáo Nếu người d /5.0 (Windo ác bot tự độ ử bạn cần. đến từ nhiều a các máy t danh sách đ r khác nhau oàn cục khá ụ như ành sẽ tìm k i trường mà ệt, ta (ví c dùng ows; ộng u IP trạm đầy u để ác là kiếm à Have fun! mr.paint(UDS) Một ví dụ của PHP_SELF: Khi bạn muốn form sau khi submit được thực thi bằng chính các lệnh PHP trong file chứa form đó đó, bạn có thể sử dụng đoạn code sau: PHP Code: <form method="GET" action="<?php echo $_SERVER["PHP_SELF"]; ?>"> identical(UDS) . dụng PHP_ SELF Giả sử người sử dụng truy cập vào http://www.domain.com /php/ test .php thì $_SERVER[" ;PHP_ SELF"] sẽ trả về kết quả là /php/ test .php. hiều các phầ ử dụng hàm biệt giữa ch ờng RVER, PHP ép truy xuấ ẽ trả về kết ch lấy thôn đang chạy v 8 .22 OpenSS khi sử dụn còn trên IIS VER['SERV

Ngày đăng: 07/11/2013, 18:15

Tài liệu cùng người dùng

Tài liệu liên quan