PHP 5.2.9 Released!

Đội phát triển PHP thông báo chính thức sự ra đời của phiên bản PHP5.2.9. Trọng tâm của phiên bản này khả tăng khả năng ổn định cho phiên bản 5.2.x với hơn 50 lỗi được fix, và 1 vài lỗi bảo mật liên quan. Người dùng nên chủ động upgrade lên phiên bản này.

Security Enhancements and Fixes in PHP 5.2.9:

  • Fixed security issue in imagerotate(), background colour isn’t validated correctly with a non truecolour image. Reported by Hamid Ebadi, APA Laboratory (Fixes CVE-2008-5498). (Scott)
  • Fixed a crash on extract in zip when files or directories entry names contain a relative path. (Pierre)
  • Fixed explode() behavior with empty string to respect negative limit. (Shire)
  • Fixed a segfault when malformed string is passed to json_decode(). (Scott)

Để biết những thay đổi trong phiên bản này xem tại: ChangeLog for PHP 5.

Nguồn: http://php.net

button PHP 5.2.9 Released!

PHP Ebook collection

Main Folder Link:

http://www.megaupload.com/?f=5SQM26L6

mục lục:

PHP-Sam teach yourself 3rd ..chm
PHP and MySQL 2nd edition.pdf
php-For.Dummies.PHP.and.MyS..pdf
PHP Advanced Ajax Architect..pdf
PHP-McGraw.Hill.Beginner.Guide..pdf
PHP-OReilly,.Learning.PHP.a..pdf
PHP CAN BAN_Huu Khang.pdf
PHP-Learning.PHP.and.MySQL…rar
PHP-Professional.Web.APIs.w..chm
premier press – php.mysql for Absolute beginner..chm
PHP-hoc_PHP_MySQL_updatesof..pdf
PHP-Advanced Php For Web Pr..chm
PHP-Friends Of ED PHP Solut..pdf
PHP Cookbook.PDF
PHP.MySQL_Thiet_Ke_Web_Dong..pdf
PHP-o’reilly – web database application with php and mysql..chm
PHP-Premier.Press.PHP.Fast and Easy web development…chm

button PHP Ebook collection

PHP – Đã Tiến Bộ một bước OOP

Hệ thống thông tin Internet đã phát triển rộng, kèm theo đó là sự đáp ứng không ngừng của server và language tương ứng cho server. Hai hệ thống server quen thuộc hiện nay là Linux và Window ( Ngoài ra còn có iServer (hình như thế) của Apple sau này).

[Read more...]

button PHP   Đã Tiến Bộ một bước OOP

Lỗi session_start();

Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at C:AppServwwwPHPsessionregisterSession.php:2) in C:AppServwwwPHPsessionregisterSession.php on line 3Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at C:AppServwwwPHPsessionregisterSession.php:2) in C:AppServwwwPHPsessionregisterSession.php on line 3

// đoạn code đặt ở đầu trang web, hoàn toàn chưa gọi bất kỳ biến nào khác
Xin hỏi tôi gặp phải lỗ gì và phải khắc phục như thế nào?

button Lỗi session start();

Thẻ Meta name revisit-after

Đây là một thẻ quan trọng với bộ máy tìm kiếm, nó đưa ra thời gian sau bao lâu thì máy tìm kiếm nên quay lại trang web đó để lưu lại. Tuy nhiên thẻ meta này hiện nay hầu như không được hỗ trợ bởi những máy tìm kiếm phổ biến mà chỉ được hỗ trợ trong trang Vancouver Webpages và bộ máy tìm kiếm cục bộ searchBC.
[Read more...]

button Thẻ Meta name revisit after

Các thẻ Meta trong HTML

Thẻ <meta> là một thành phần quan trọng trong file HTML, nó chứa các thông tin về file HTML đó như tên tác giả, các từ khoá, các thông tin mô tả site đó,… Và có thể có 1 số thông tin điều khiển trình duyệt, chỉ định cho các máy tìm kiếm, …

Thẻ Meta có có cấu trúc như sau:

<META NAME=”"  HTTP-EQUIV=”" CONTENT=”" SCHEME=”" >
[Read more...]

button Các thẻ Meta trong HTML

Vòng for này lạ ghê

Này nhé: nếu dùng:

for($i="a";$i<"z";$i++)
echo $i."-";
?>

Kết quả: a-b-c-d-e-f-g-h-i-j-k-l-m-n-o-p-q-r-s-t-u-v-w-x-y-

Còn nếu viết:

for($i="a";$i<="z";$i++)
echo $i."-";
?>

đố mọi người kết quả ra là j?

button Vòng for này lạ ghê

Làm nhanh một nội dung phân trang

Chắc chắn việc phân trang khi làm WEB là khá thường xuyên, beginner nào như mình cũng cần phải làm qua cái này. Sau đây sẽ giới thiệu nhanh cách làm:

Ví dụ của mình là hiển thị ra danh sách user từ table users nằm trên MySQL. Ứng với mỗi user sẽ hiện ra group, username, fullname, gender, RegisterDate. Mỗi trang hiển thị 10 user:
Cách làm là lấy từ CSDL ra bằng lệnh SELECT kèm theo LIMIT $offset,$rowsPerPage
[Read more...]

button Làm nhanh một nội dung phân trang

Tại sao === lại nhanh hơn ==

=== có nghĩa là tương đương. == có nghĩa là bằng, theo giá trị.

($a===$b) tức là ($a==$b && gettype($a) == gettype($b))

Ví dụ: Kết quả là FALSE

  1. $a = 123;

  2. $b = ’123′;

  3. if($a === $b)

  4. {

  5. exit(‘TRUE’);

  6. }

  7. else

  8. {

  9. exit(‘FALSE’);

  10. }

[Read more...]

button Tại sao === lại nhanh hơn ==

1 lỗi nữa hay gặp

Các bạn vào địa chỉ sau: http://phpvn.info/test/test.php

Và xem source của file test là đó, sau đó nhập 2 số a,b với các trường hợp khác nhau, sau đó nhấn Check, xem kết quả ra thế nào.

Ví dụ

nhập a=1, b=2 -> ra Not_Equal -> True

nhưng nhập a=1, b=1 vẫn ra Not_Equal -> False,

Bạn thử xem cách viết trong code có gì sai?
[Read more...]

button 1 lỗi nữa hay gặp

URL Rewrite như thế nào ?

mod rewrite fig2 URL Rewrite như thế nào ?

Có bạn hỏi làm sao tạo được các đường dẫn đẹp (URL Rewrite) như các trang trên mạng. Mình cũng tìm hiểu qua và xung phong viết 1 bài về nó vậy. Trước tiên chúng ta tìm hiểu cơ chế rewite:Rewrite Engine là một phần dịch vụ của Webserver được dùng để thay đổi URL(đường dẫn trên trình duyệt) sang một dạng khác với nhiều mục đích khác nhau. Kỹ thuật được nói đến là URL rewriting và nó đem lại những tiện lợi sau:- Làm cho URL trở nên thân thiện với người dùng cũng như dễ dàng với các Search Engine (bộ máy tìm kiếm)- Tránh lộ các đường link quan trọng- Tránh lộ các công việc bên trong trước người dùng

Bản chất của việc rewrite này các bạn có thể hình dung như sau: khi bạn gõ 1 đường link lên trình duyệt như sau: http://vidu.com/news/2007/13/01 thì đây là đường dẫn ảo, và khi request đến Webserver nó sẽ đổi lại thành đường dẫn thật như sau: http://vidu.com/index.php?mod=news&year=2007&day=13&month=01 << có thể là như thế này vì có nhiều cách rewrite.

Đối với Server Apache: để thực hiện được URL Rewriting bạn làm các bước sau:

[Read more...]

button URL Rewrite như thế nào ?

Một số sách PHP theo yêu cầu

Thấy 1 số bạn chát với mình muốn có sách học PHP, nhưng có mấy cuốn sách sưu tầm được:

engine PHP.pdf
MySQL_PHP_Database_Applications_2001.pdf
PHP introduction_TAT.pdf
Tao_Web_dong_voi_PHP_va_MySQL.pdf
Tuhoc PHP.rar
tuhocphp2.rar
[Developer Shed Network] Server Side – PHP – PHP Application Development with ADODB (Part1).pdf
[Developer Shed Network] Server Side – PHP – PHP Application Development with ADODB (Part 2).pdf
PHP_tiengviet.PDF
PHP_How_To_2000.pdf

Các bạn nhắp chuột phải rồi Save as…

button Một số sách PHP theo yêu cầu

Một sai lầm có thể mắc phải

Trong khi viết ứng dụng chúng ta có rất nhiều file và vì thế khi Include vào để chạy có thể sẽ gặp 1 trường hợp sau:

Mình có 2 file a.php và b.php với nội dung như sau:

File 1: a.php

<?
$root_url_tmp = “http://”.$_SERVER['HTTP_HOST'].dirname($_SERVER['SCRIPT_NAME']);
$root_url_tmp = trim($root_url_tmp, ” /”);
define(“ROOT_URL”, $root_url_tmp);
require_once(ROOT_URL.”/b.php”);

hello_world();
?>

File 2: b.php

<?
function hello_world(){
echo “Hello World”;
}
?>

Mục đích chạy là để gọi 1 hàm trong file đã include (b.php).

Khi chạy file a.php ví dụ http://localhost/Test/a.php  thì kết quả là FatalError:

Fatal error: Call to undefined function: hello_world() in c:\wamp\www\test20061108\a.php on line 7

Bạn biết lỗi này tại sao chưa?

^_^

button Một sai lầm có thể mắc phải

Regular Expression

Biểu thức chính qui dùng bộ kí hiệu qui ước như sau:

- | nghĩa là hoặc (or)

- () nghĩa là nhóm các thành phần

- * nghĩa là lặp lại 0 hoặc nhiều lần kí tự đứng trước

- ? nghĩa là lặp lại 1 hoặc nhiều lần

- + nghĩa là lặp lại 0 hoặc 1 lần

[Read more...]

button Regular Expression

Session, Cookie, POST, GET,…

  1. Session

Dùng để lưu thông tin trong một phiên kết nối. Ví dụ: mỗi khi ta mở một trang web (diễn đàn), sẽ có một session được tạo ra trên máy chủ.

Để khởi tạo session ta dùng hàm :

session_start()

Session chỉ là một file, có thể ghi các thông tin cần thiết vào đó như username, password, địa chỉ IP…

Mỗi session được tạo ra sẽ có 1 ID là một số 32 kí tự, được tạo ra 1 cách ngẫu nhiên sao cho không có 2 session nào có ID giống nhau. Muốn ghi các biến vào trong session ta dùng hàm:

session_register()
[Read more...]

button Session, Cookie, POST, GET,...