Hướng dẫn pdf to mysql php - pdf sang php mysql

Tài Liệu Học PHP & MySQL Tiếng Việt Chọn Lọc (Ebook PDF -Video)


Chia sẻ đến

Mã số tài liệu: 5088
Đơn giá: 0
NHẤN VÀO ĐỂ TẢI

PHP là một ngôn ngữ lập trình mã nguồn mở nên tài liệu hướng dẫn học tập, tham khảo có rất nhiều, bạn có thể dễ dàng tìm thấy vô số tài liệu trên mạng. Nhưng cũng chính vì vậy với những người mới tìm hiểu về php việc tìm được một tài liệu hay phù hợp cũng là cả một vấn đề,...

Vì vậy mình tạo topic này tổng hợp một số tài liệu mà mình thấy là hay, với tiêu chí ít mà tinh và chỉ toàn tài liệu tiếng Việt, nhằm giúp các bạn mới làm quen với php đỡ mất công tìm kiếm ở nhiều nguồn khác nhau trên internet.

PHẦN 1 - VIDEO TUTORIAL PHP

1. Lập trình ứng dụng WEB với PHP

Giới thiệu:

Đây là bộ video học lập trình PHP & MySQL bằng tiếng việt được viết bởi TTTH ĐH Khoa Học Tự Nhiên TP.HCM.

Là bộ video họcPHP & MySQL tiếng Việt đầy đủ và bài bản nhất mà mình biết.

+ PHẦN LÝ THUYẾT

Nội dung trong video tương ứng với nội dung trong 2 cuốn giáo trình: 

Hướng dẫn pdf to mysql php - pdf sang php mysql

Video hướng dẫn thực hành rất chi tiết và trực quan qua từng bài tập từ dễ đến khó tương ứng với từng phần lý thuyết ở trên, phần này khá phổ biên, có bạn đã post trên forum rồi nhưng mình post lại tại đây cho đồng bộ với phần lý thuyết. 

LINK DOWN LOAD : 

DIỄN ĐÀN SINH VIÊN CNTT QUẢNG NINH!

  1. Sử Dụng PHP & MYSQL – Thiết Kế Web Động của tác giả Nguyễn Trường Sinh

    Cuốn sách này sẽ giới thiệu với các bạn hai công nghệ phổ biến nhất được dùng để thiết kế Website động: ngôn ngữ kịch bản PHP và chương trình quản lý cơ sở dữ liệu MySQL. Thông qua các bước thực hành được hướng dẫn cụ thể, các mã kịch bản rõ ràng với nhiều gợi ý chuyên môn, cuốn sách sẽ giúp bạn tìm hiểu tổng quát về công nghệ trước khi đề cập tới các vấn đề cụ thể như: an toàn, session và cookie, sử dụng các công cụ Web…


    Cuốn sách này có thể dùng cho nhiều đối tượng, từ người mới bắt đầu cho đến lập trình viên nâng cao. Trong sách có sử dụng XHTML để tương thích trong tương lai, sẽ rất thuận tiện nếu bạn có một số kiến thức tối thiểu về XHTML hoặc HTML. Mặc dù rất nhiều vấn đề được đề cập, nhưng đây không phải là cuốn sách học về HTML và thiết kế trang web. Ngoài ra, sẽ rất thuận lợi cho việc tham khảo cuốn sách này nếu bạn có các yếu tố sau: - Kiến thức sơ bộ về PHP. - Đã từng sử dụng một ngôn ngữ lập trình khác( Ví dụ, có kỹ năng vững chắc về JavaScript sẽ là một điều thuận lợi). - Có khả năng tự học và thực hành. Cuốn sách đề cập đến PHP và MySQL từ A đến Z, hướng dẫn mọi điều cần thiết để phát triển Website thực sự. Vì những chương đầu tiên giới thiệu PHP rất nhanh, nên bạn cũng cần có một số kinh nghiệm lập trình, có sự tìm tòi và su nghĩ độc lập trong khi nghiên cứu. Cuốn sách không đòi hỏi bạn phải có kinh nghiệm về cơ sở dữ liệu, vì SQL và MySQL được giới thiệu ở mức căn bản.
    Ngoài ra, sẽ rất thuận lợi cho việc tham khảo cuốn sách này nếu bạn có các yếu tố sau:
    - Kiến thức sơ bộ về PHP.
    - Đã từng sử dụng một ngôn ngữ lập trình khác( Ví dụ, có kỹ năng vững chắc về JavaScript sẽ là một điều thuận lợi).
    - Có khả năng tự học và thực hành.
    Cuốn sách đề cập đến PHP và MySQL từ A đến Z, hướng dẫn mọi điều cần thiết để phát triển Website thực sự. Vì những chương đầu tiên giới thiệu PHP rất nhanh, nên bạn cũng cần có một số kinh nghiệm lập trình, có sự tìm tòi và su nghĩ độc lập trong khi nghiên cứu. Cuốn sách không đòi hỏi bạn phải có kinh nghiệm về cơ sở dữ liệu, vì SQL và MySQL được giới thiệu ở mức căn bản.

    Download tài liệu tại đây


    Bình Luận Bằng Facebook

    data-href="https://cnttqn.com/threads/pdf-tai-lieu-su-dung-php-mysql-thiet-ke-web-dong.4359.html"

LẬP TRÌNH WEB ĐỘNG VỚI PHP / MySQL
PHP / MySQL

 GUESTBOOK  CATALOG  FORUM  SHOPPING CART PHẦN 3 Tống Phước Khải (tổng hợp & biên dòch) BIẾN (variables) và các phép xử lý trên biến PHP 1- Biến và cách sử dụng Biến 2- Xử lý dữ liệu từ FORM 3- Tìm hiểu sâu hơn về Biến
 CATALOG
 FORUM
 SHOPPING CART
PHẦN 3
Tống Phước Khải (tổng hợp & biên dòch)
BIẾN (variables)
và các phép xử lý trên biến
PHP
1- Biến và cách sử dụng Biến
2- Xử lý dữ liệu từ FORM
3- Tìm hiểu sâu hơn về Biến

Bạn đọc thân mến, Vừa qua tôi đã soạn xong phần 1 và phần 2 của giáo trình tự học PHP/MySQL. Tôi đã nhận được email của những bạn quan tâm, chờ đợi phần 3 của giáo trình này. Đáng lẽ phần 3 đã cho ra đời sớm nhưng vì bận rộn quá nhiều công việc (hiện tôi đang phụ trách và có rất nhiều công việc trong nhóm Hanosoft - software Hán Nôm) nên việc biên soạn sách tự học này ít nhiều bò trì hoãn. Do hoàn cảnh trên, chắc chắn công việc biên soạn này không tránh được những sai sót. Nhưng dù sao đi nữa, biết được các bạn có thể áp dụng giáo trình này vào thực tế thì tôi phần nào cũng lấy đó làm sự khích lệ cho riêng mình. Đúng lý ra phần 3 này là dành trọn cho việc nói về ngôn ngữ SQL nhưng phần 2 đã bàn về CSDL rồi, nếu phần này nếu cũng bàn về nó thì có vẻ hơi nhàm phải không các bạn? Với ý nghó này tôi đã dành trọn phần 3 để nói về biến trong PHP. Hẳn nhiên tôi biết một số bạn mong mỏi những gì trong đây có thể áp dụng liền thì đỡ chán
Vừa qua tôi đã soạn xong phần 1 và phần 2 của giáo trình tự học PHP/MySQL. Tôi đã nhận
được email của những bạn quan tâm, chờ đợi phần 3 của giáo trình này. Đáng lẽ phần 3 đã
cho ra đời sớm nhưng vì bận rộn quá nhiều công việc (hiện tôi đang phụ trách và có rất nhiều
công việc trong nhóm Hanosoft - software Hán Nôm) nên việc biên soạn sách tự học này ít
nhiều bò trì hoãn.
Do hoàn cảnh trên, chắc chắn công việc biên soạn này không tránh được những sai sót. Nhưng
dù sao đi nữa, biết được các bạn có thể áp dụng giáo trình này vào thực tế thì tôi phần nào
cũng lấy đó làm sự khích lệ cho riêng mình.
Đúng lý ra phần 3 này là dành trọn cho việc nói về ngôn ngữ SQL nhưng phần 2 đã bàn về
CSDL rồi, nếu phần này nếu cũng bàn về nó thì có vẻ hơi nhàm phải không các bạn? Với ý
nghó này tôi đã dành trọn phần 3 để nói về biến trong PHP.
Hẳn nhiên tôi biết một số bạn mong mỏi những gì trong đây có thể áp dụng liền thì đỡ chán

hơn. Nhưng theo tôi nghó trước tiên hết bạn cần phải nắm rõ mọi ngóc ngách của PHP và MySQL thì mới có thể thiết kế được những chương trình đạt tiêu chuẩn. Do vậy mong các bạn hãy kiên nhẫn khi đọc những chương hướng dẫn suông như thế này! Đừng nản lòng và nên ghi nhớ đây là cội rễ cho các ứng dụng thực tế của các bạn. MySQL thì mới có thể thiết kế được những chương trình đạt tiêu chuẩn. Do vậy mong các bạn hãy kiên nhẫn khi đọc những chương hướng dẫn suông như thế này! Đừng nản lòng và nên ghi nhớ đây là cội rễ cho các ứng dụng thực tế của các bạn.
MySQL thì mới có thể thiết kế được những chương trình đạt tiêu chuẩn. Do vậy mong các bạn
hãy kiên nhẫn khi đọc những chương hướng dẫn suông như thế này! Đừng nản lòng và nên ghi
nhớ đây là cội rễ cho các ứng dụng thực tế của các bạn.

Để bắt đầu chương này ít nhất bạn cũng phải có chút đỉnh kiến thức về Cơ Sở Lập Trình. Tôi nghó nếu bạn đã học qua một khoá lập trình căn bản thì bạn có thể hiểu được. Nếu không, đòi hỏi bạn cần phải động não hoặc tìm tòi hơi nhiều. Nào, chúng ta bắt đầu đi thôi! PHP xử lý các biến rất linh động. Nó có thể nhận biết được kiểu của biến và làm cho cú pháp câu lệnh đơn giản hơn. Ai đã từng lập trình với C, Java hoặc Perl sẽ cảm thấy rất dễ dàng khi sử dụng PHP. Tuy nhiên việc dễ dãi này cũng gây ra một số trở ngại nhất đònh. Tất cả những biến khai báo trong PHP đều được bắt đầu với dấu đô la ($). Dù cho biến của bạn kiểu chuỗi, nguyên hay thập phân hoặc thậm chí là mảng thì chúng không có gì khác biệt nhau. PHP chỉ theo dõi dữ liệu chứa trong biến thay đổi như thế nào thôi. Nói chung, khi làm việc với PHP bạn sẽ quan tâm đến 3 vò trí khác nhau của biến đó là: (1) khai báo ngay trong mã lệnh PHP, (2) chuyển tiếp từ một trang HTML hoặc (3) là biến sẵn có trong của hệ thống PHP. Chúng ta sẽ tìm hiểu về từng loại trên ở phần tiếp theo. Nên lưu ý rằng biến cũng có thể được chuyển tiếp từ các nơi khác như từ các URL hoặc từ các SESSION. nghó nếu bạn đã học qua một khoá lập trình căn bản thì bạn có thể hiểu được. Nếu không, đòi hỏi bạn cần phải động não hoặc tìm tòi hơi nhiều. Nào, chúng ta bắt đầu đi thôi! PHP xử lý các biến rất linh động. Nó có thể nhận biết được kiểu của biến và làm cho cú pháp câu lệnh đơn giản hơn. Ai đã từng lập trình với C, Java hoặc Perl sẽ cảm thấy rất dễ dàng khi sử dụng PHP. Tuy nhiên việc dễ dãi này cũng gây ra một số trở ngại nhất đònh. Tất cả những biến khai báo trong PHP đều được bắt đầu với dấu đô la ($). Dù cho biến của bạn kiểu chuỗi, nguyên hay thập phân hoặc thậm chí là mảng thì chúng không có gì khác biệt nhau. PHP chỉ theo dõi dữ liệu chứa trong biến thay đổi như thế nào thôi. Nói chung, khi làm việc với PHP bạn sẽ quan tâm đến 3 vò trí khác nhau của biến đó là: (1) khai báo ngay trong mã lệnh PHP, (2) chuyển tiếp từ một trang HTML hoặc (3) là biến sẵn có trong của hệ thống PHP. Chúng ta sẽ tìm hiểu về từng loại trên ở phần tiếp theo. Nên lưu ý rằng biến cũng có thể được chuyển tiếp từ các nơi khác như từ các URL hoặc từ các SESSION.
nghó nếu bạn đã học qua một khoá lập trình căn bản thì bạn có thể hiểu được. Nếu không, đòi
hỏi bạn cần phải động não hoặc tìm tòi hơi nhiều. Nào, chúng ta bắt đầu đi thôi!
PHP xử lý các biến rất linh động. Nó có thể nhận biết được kiểu của biến và làm cho cú pháp
câu lệnh đơn giản hơn. Ai đã từng lập trình với C, Java hoặc Perl sẽ cảm thấy rất dễ dàng khi
sử dụng PHP. Tuy nhiên việc dễ dãi này cũng gây ra một số trở ngại nhất đònh.
Tất cả những biến khai báo trong PHP đều được bắt đầu với dấu đô la ($). Dù cho biến
của bạn kiểu chuỗi, nguyên hay thập phân hoặc thậm chí là mảng thì chúng không có gì khác
biệt nhau. PHP chỉ theo dõi dữ liệu chứa trong biến thay đổi như thế nào thôi.
Nói chung, khi làm việc với PHP bạn sẽ quan tâm đến 3 vò trí khác nhau của biến đó là: (1)
khai báo ngay trong mã lệnh PHP, (2) chuyển tiếp từ một trang HTML hoặc (3) là biến sẵn có
trong của hệ thống PHP.
Chúng ta sẽ tìm hiểu về từng loại trên ở phần tiếp theo. Nên lưu ý rằng biến cũng có thể được chuyển tiếp
từ các nơi khác như từ các URL hoặc từ các SESSION.

Gán biến trong một Script Bạn không cần phải khai báo EXPLICIT cho biến như trong một số ngôn ngữ khác. Chỉ cần khai báo tên biến là nó sẽ sẵn sàng làm việc. Bạn hãy xét các ví dụ sau để hiểu cách khai báo biến trong PHP uyển chuyển như thế nào: Bạn không cần phải khai báo EXPLICIT cho biến như trong một số ngôn ngữ khác. Chỉ cần khai báo tên biến là nó sẽ sẵn sàng làm việc. Bạn hãy xét các ví dụ sau để hiểu cách khai báo biến trong PHP uyển chuyển như thế nào:
Bạn không cần phải khai báo EXPLICIT cho biến như trong một số ngôn ngữ khác. Chỉ cần
khai báo tên biến là nó sẽ sẵn sàng làm việc. Bạn hãy xét các ví dụ sau để hiểu cách khai
báo biến trong PHP uyển chuyển như thế nào:

$a = "Toi thich hoc PHP"; //day la bien chuoi $b = 4; //day la bien so $c = 4.837; //day la bien so thuc $d = "2"; //day cung la bien chuoi $b = 4; //day la bien so $c = 4.837; //day la bien so thuc $d = "2"; //day cung la bien chuoi
$b = 4; //day la bien so
$c = 4.837; //day la bien so thuc
$d = "2"; //day cung la bien chuoi

Để ý rằng dấu = là dấu dùng để gán. Còn khi thực hiện phép so sánh bằng thì bạn dùng hai dấu bằng (= = ). Ví dụ: IF ($x= =1) PHP rất thông minh trong việc biến đổi kiểu. Ví dụ, bạn thực hiện phép cộng một số nguyên với một chuỗi chứa ký tự số (trong ví dụ trên là $b và $d). dụ: IF ($x= =1) PHP rất thông minh trong việc biến đổi kiểu. Ví dụ, bạn thực hiện phép cộng một số nguyên với một chuỗi chứa ký tự số (trong ví dụ trên là $b và $d).
dụ: IF ($x= =1)
PHP rất thông minh trong việc biến đổi kiểu. Ví dụ, bạn thực hiện phép cộng một số nguyên
với một chuỗi chứa ký tự số (trong ví dụ trên là $b và $d).

$a = "Toi thich hoc PHP"; //day la bien chuoi $b = 4; //day la bien so $c = 4.837; //day la bien so thuc $d = "2"; //day cung la bien chuoi $e = $b + $d; echo $e; $b = 4; //day la bien so $c = 4.837; //day la bien so thuc $d = "2"; //day cung la bien chuoi $e = $b + $d; echo $e;
$b = 4; //day la bien so
$c = 4.837; //day la bien so thuc
$d = "2"; //day cung la bien chuoi
$e = $b + $d;
echo $e;

PHP sẽ nhận ra rằng bạn muốn xem chuỗi trong $d (chuỗi "2") như là một số nguyên. Thế là nó sẽ hoán chuyển sang trò nguyên và thực hiện phép toán cộng cho ra kết quả là $e = 6. Ngoài ra, PHP còn có thể hiểu được các chuỗi vừa số vừa chữ như ví dụ sau: nó sẽ hoán chuyển sang trò nguyên và thực hiện phép toán cộng cho ra kết quả là $e = 6. Ngoài ra, PHP còn có thể hiểu được các chuỗi vừa số vừa chữ như ví dụ sau:
nó sẽ hoán chuyển sang trò nguyên và thực hiện phép toán cộng cho ra kết quả là $e = 6.
Ngoài ra, PHP còn có thể hiểu được các chuỗi vừa số vừa chữ như ví dụ sau:

$a = 2; $b = "2 con heo con"; $c = $a + $b;$b = "2 con heo con"; $c = $a + $b;
$b = "2 con heo con";
$c = $a + $b;

Kết quả cho ra là $c = 4. Nếu một số nguyên hay thập phân đứng ở vò trí đầu một chuỗi thì PHP có thể hiểu được như ví dụ trên. Tương tự, PHP thực hiện tương tự đối với các kiểu số khác nhau: PHP có thể hiểu được như ví dụ trên. Tương tự, PHP thực hiện tương tự đối với các kiểu số khác nhau:
PHP có thể hiểu được như ví dụ trên. Tương tự, PHP thực hiện tương tự đối với các kiểu số
khác nhau:

$f = 2; //$f la mot so nguyen $g = 1.444; // $g la mot so thuc $f = $f + $g; //$f tu bien doi thanh so thuc $g = 1.444; // $g la mot so thuc $f = $f + $g; //$f tu bien doi thanh so thuc
$g = 1.444; // $g la mot so thuc
$f = $f + $g; //$f tu bien doi thanh so thuc

Việc xử lý này thật là hay, nhưng nó có thể dẫn đến một số rắc rối đó là sẽ có những lúc bạn

không biết ở tại thời điểm nào bạn sẽ làm việc với kiểu của biến là kiểu gì. Tôi sẽ trình bày trong phần Kiểm Tra Biến. trong phần Kiểm Tra Biến.
trong phần Kiểm Tra Biến.

Qui đònh về chuỗi Trong các ví dụ trên, bạn thấy tất cả các chuỗi đều được bao trong dấu nháy đôi. Có hai cách khác để bạn thể hiện một cho PHP hiểu đó là chuỗi. Trong một chuỗi mà bạn đã bao lại bằng cặp nháy đôi "...", xong bạn chèn một biến vào giữa, thì PHP vẫn hiểu được biến đó. Ví dụ: Trong các ví dụ trên, bạn thấy tất cả các chuỗi đều được bao trong dấu nháy đôi. Có hai cách khác để bạn thể hiện một cho PHP hiểu đó là chuỗi. Trong một chuỗi mà bạn đã bao lại bằng cặp nháy đôi "...", xong bạn chèn một biến vào giữa, thì PHP vẫn hiểu được biến đó. Ví dụ:
Trong các ví dụ trên, bạn thấy tất cả các chuỗi đều được bao trong dấu nháy đôi. Có hai cách
khác để bạn thể hiện một cho PHP hiểu đó là chuỗi.
Trong một chuỗi mà bạn đã bao lại bằng cặp nháy đôi "...", xong bạn chèn một biến vào giữa,
thì PHP vẫn hiểu được biến đó. Ví dụ:

$my_name = "Jay"; $phrase = "Hello, my name is, $my_name"; echo $phrase;$phrase = "Hello, my name is, $my_name"; echo $phrase;
$phrase = "Hello, my name is, $my_name";
echo $phrase;

Kết quả cho ra là: Hello, my name is, Jay. Thật khác thường phải không các bạn?! (Đáng lẽ ra dấu nháy " thứ hai phải sau chữ is rồi đặt một dấu cộng chuỗi với biến $my_name) dấu nháy " thứ hai phải sau chữ is rồi đặt một dấu cộng chuỗi với biến $my_name)
dấu nháy " thứ hai phải sau chữ is rồi đặt một dấu cộng chuỗi với biến $my_name)

Trong trường hợp sau đây, tôi muốn xuất ra một chuỗi: Tôi đăng ký hosting hết $20 thì phải làm sao? Bởi vì trong chuỗi này có chứa $, điều này sẽ làm cho PHP hiểu đó là một biến mới. Chúng ta xem cách giải quyết như sau: Nếu như trong chuỗi bạn muốn có chứa các ký tự đặc biệt như: dấu nháy đôi "", dấu slash \, dấu đô la $ , bạn phải sử dụng đến ký tự chuyển (gọi là dấu escape) đó là dấu slash (\). Tôi quen đọc dấu / là "dấu suyệt trái" và \ là "dấu suyệt phải". Giả sử, để xuất ra màn hình một dòng chữ: , như bạn thấy trong đó chứa tới 4 dấu nháy đôi - thuộc dạng ký tự đặc biệt. Ta phải sử dụng tới 4 dấu suyệt phải như sau: làm sao? Bởi vì trong chuỗi này có chứa $, điều này sẽ làm cho PHP hiểu đó là một biến mới. Chúng ta xem cách giải quyết như sau: Nếu như trong chuỗi bạn muốn có chứa các ký tự đặc biệt như: dấu nháy đôi "", dấu slash \, dấu đô la $ , bạn phải sử dụng đến ký tự chuyển (gọi là dấu escape) đó là dấu slash (\). Tôi quen đọc dấu / là "dấu suyệt trái" và \ là "dấu suyệt phải". Giả sử, để xuất ra màn hình một dòng chữ:
làm sao? Bởi vì trong chuỗi này có chứa $, điều này sẽ làm cho PHP hiểu đó là một biến mới.
Chúng ta xem cách giải quyết như sau:
Nếu như trong chuỗi bạn muốn có chứa các ký tự đặc biệt như: dấu nháy đôi "", dấu slash \,
dấu đô la $ , bạn phải sử dụng đến ký tự chuyển (gọi là dấu escape) đó là dấu slash (\).
Tôi quen đọc dấu / là "dấu suyệt trái" và \ là "dấu suyệt phải".
Giả sử, để xuất ra màn hình một dòng chữ:


, như bạn thấy trong đó chứa tới 4 dấu nháy đôi - thuộc dạng ký tự đặc biệt. Ta phải sử dụng tới 4 dấu suyệt phải như sau:
như
bạn thấy trong đó chứa tới 4 dấu nháy đôi - thuộc dạng ký tự đặc biệt. Ta phải sử dụng tới 4
dấu suyệt phải như sau:

echo "";

Thì đến khi chạy chương trình mới mong cho ra kết quả như mong muốn.

Tác dụng của dấu nháy đơn đối với PHP: Bạn sẽ thấy dấu nháy đơn trong PHP có tác dụng hơn dấu nháy đôi như thế nào! Nếu chuỗi của bạn có chứa các biến (bắt đầu bằng $), bạn bao lại bằng dấu nháy đơn thì biến đó sẽ bò biến thành chuỗi luôn, chớ không được hiểu là một biến như cách bao bằng dấu nháy đôi:Bạn sẽ thấy dấu nháy đơn trong PHP có tác dụng hơn dấu nháy đôi như thế nào! Nếu chuỗi của bạn có chứa các biến (bắt đầu bằng $), bạn bao lại bằng dấu nháy đơn thì biến đó sẽ bò biến thành chuỗi luôn, chớ không được hiểu là một biến như cách bao bằng dấu nháy đôi:
Bạn sẽ thấy dấu nháy đơn trong PHP có tác dụng hơn dấu nháy đôi như thế nào! Nếu chuỗi
của bạn có chứa các biến (bắt đầu bằng $), bạn bao lại bằng dấu nháy đơn thì biến đó sẽ bò
biến thành chuỗi luôn, chớ không được hiểu là một biến như cách bao bằng dấu nháy đôi:

$my_name = "Jay"; echo ‘Hello, my name is, $my_name’; echo ‘Hello, my name is, $my_name’;
echo ‘Hello, my name is, $my_name’;

Kết quả cho ra là Hello, my name is, $my_name chứ không phải Hello, my name is Jay.

Cuối cùng, trong PHP4 bạn có thể sử dụng dấu Here Documents. Đây là một loại ký hiệu tương tợ hai loại nháy đơn và nháy đôi. Trong một số trường hợp khi sử dụng nó bạn sẽ cảm thấy rất tiện lợi. Here Docs xác đònh giới hạn ở đầu chuỗi với 3 dấu nhỏ hơn < và ký hiệu tương tợ hai loại nháy đơn và nháy đôi. Trong một số trường hợp khi sử dụng nó bạn sẽ cảm thấy rất tiện lợi. Here Docs xác đònh giới hạn ở đầu chuỗi với 3 dấu nhỏ hơn < và ký hiệu
tương tợ hai loại nháy đơn và nháy đôi. Trong một số trường hợp khi sử dụng nó bạn sẽ cảm
thấy rất tiện lợi. Here Docs xác đònh giới hạn ở đầu chuỗi với 3 dấu nhỏ hơn <<< và ký hiệu
nhận dạng (trong sách này tôi sử dụng ký hiệu nhận dạng EOQ) Chuỗi được kết thúc cũng với
ký hiệu nhận dạng như vậy và kèm theo là dấu chấm phẩy (;). Sau đây là ví dụ chuỗi Toi
thich hoc PHP được gán cho biến $mystring được xác đònh bằng cách sử dụng Here Doc.

$my_string = Toi thich hoc PHP. EOQ;
Toi thich hoc PHP.
EOQ;

Sử dụng Here Doc, các biến sẽ chỉ ảnh hưởng trong chuỗi cho nên khi thể hiện dấu nháy đôi trong chuỗi thì không cần sử dựng dấu escape. trong chuỗi thì không cần sử dựng dấu escape.
trong chuỗi thì không cần sử dựng dấu escape.

$element = EOQ;

EOQ;

Như ví dụ trên các bạn thấy không cần phải hao phí nhiều dấu suyệt (\), chúng ta vẫn có thể có được một chuỗi chứa các ký hiệu dạng biến không có tầm ảnh hưởng ra bên ngoài. Các phần tử mảng sử dụng khoá liên hợp (bạn sẽ tìm hiểu ở phần tiếp theo) không thể sử dụng Here Doc được. Ví dụ sau đây sẽ xuất hiện lỗi: có được một chuỗi chứa các ký hiệu dạng biến không có tầm ảnh hưởng ra bên ngoài. Các phần tử mảng sử dụng khoá liên hợp (bạn sẽ tìm hiểu ở phần tiếp theo) không thể sử dụng Here Doc được. Ví dụ sau đây sẽ xuất hiện lỗi:
có được một chuỗi chứa các ký hiệu dạng biến không có tầm ảnh hưởng ra bên ngoài.
Các phần tử mảng sử dụng khoá liên hợp (bạn sẽ tìm hiểu ở phần tiếp theo) không thể sử
dụng Here Doc được. Ví dụ sau đây sẽ xuất hiện lỗi:

$array = array ("fname"=>"jay", "lname"=>"greenspan"); $str = $str =
$str = <EOQ;
Mảng (array) trong PHP

Mảng là một dạng của biến trong đó có chứa nhiều giá trò. Ví dụ một dạng đơn giản của mảng là tháng: là tháng:
là tháng:

$thang = array("Gieng", "Hai", "Ba", "Bon", "Nam", "Sau", "Bay", "Tam", "Chin", "Muoi", "Muoi Mot", "Muoi Hai"); "Sau", "Bay", "Tam", "Chin", "Muoi", "Muoi Mot", "Muoi Hai");
"Sau", "Bay", "Tam", "Chin", "Muoi", "Muoi Mot", "Muoi Hai");

Mảng này có chứa 12 phần tử, và bạn có thể đònh vò chúng bằng thứ tự ở trong mảng, bắt đầu bằng vò trí 0. Do đó lệnh echo $thang[0] sẽ cho ra là Gieng và echo $thang[11] sẽ cho ra Muoi Hai. Để truy xuất được tất cả các phần tử trong mảng, bạn có thể tính ra chiều dài của mảng và thực hiện vòng lặp: bằng vò trí 0. Do đó lệnh echo $thang[0] sẽ cho ra là Gieng và echo $thang[11] sẽ cho ra Muoi Hai. Để truy xuất được tất cả các phần tử trong mảng, bạn có thể tính ra chiều dài của mảng và thực hiện vòng lặp:
bằng vò trí 0. Do đó lệnh echo $thang[0] sẽ cho ra là Gieng và echo $thang[11] sẽ cho ra Muoi
Hai. Để truy xuất được tất cả các phần tử trong mảng, bạn có thể tính ra chiều dài của mảng
và thực hiện vòng lặp:

for ($i=0; $i{ echo $thang[$i] . "\n" ; }
{
echo $thang[$i] . "
\n" ;
}

Chi tiết về vòng lặp sẽ được trình bày ở các phần sau. Bạn có thể gán giá trò vào mảng với

một phép toán đơn giản như sau:

$dogs = array(); $dogs[0] = "kiki"; $dogs[1] = "lulu"; $dogs[0] = "kiki"; $dogs[1] = "lulu";
$dogs[0] = "kiki";
$dogs[1] = "lulu";

Nếu bạn không xác đònh chỉ số bên trong ngoặc vuông thì giá trò sẽ được gán cho phần tử cuối mảng. Trong ví dụ sau "nana sẽ được gán vào $dogs[2]: mảng. Trong ví dụ sau "nana sẽ được gán vào $dogs[2]:
mảng. Trong ví dụ sau "nana sẽ được gán vào $dogs[2]:

$dogs[] = "nana";

Mảng liên hợp Cũng giống như các ngôn ngữ khác, PHP tận dụng khả năng của mảng liên hợp (associative array). Có thể bạn cảm thấy mới mẻ với khái niệm này. Để tôi nói sơ qua một chút: Mỗi phần tử trong mảng liên hợp mang khoá(key) riêng. Các phần tử của mảng sẽ được truy cập thông qua khoá. Điều này giống như cách thức truy xuất trong các query khi làm việc với Database. Trong ví dụ sau, bạn sẽ thấy các phần tử first_name, last_name, e-mail sử dụng các key: Cũng giống như các ngôn ngữ khác, PHP tận dụng khả năng của mảng liên hợp (associative array). Có thể bạn cảm thấy mới mẻ với khái niệm này. Để tôi nói sơ qua một chút: Mỗi phần tử trong mảng liên hợp mang khoá(key) riêng. Các phần tử của mảng sẽ được truy cập thông qua khoá. Điều này giống như cách thức truy xuất trong các query khi làm việc với Database. Trong ví dụ sau, bạn sẽ thấy các phần tử first_name, last_name, e-mail sử dụng các key:
Cũng giống như các ngôn ngữ khác, PHP tận dụng khả năng của mảng liên hợp (associative
array). Có thể bạn cảm thấy mới mẻ với khái niệm này. Để tôi nói sơ qua một chút: Mỗi phần
tử trong mảng liên hợp mang khoá(key) riêng. Các phần tử của mảng sẽ được truy cập thông
qua khoá. Điều này giống như cách thức truy xuất trong các query khi làm việc với Database.
Trong ví dụ sau, bạn sẽ thấy các phần tử first_name, last_name, e-mail sử dụng các key:

$person = array ( "first_name" => "Jay", "last_name" => "Greenspan", "e-mail" => "" ); "first_name" => "Jay", "last_name" => "Greenspan", "e-mail" => "" );
"first_name" => "Jay",
"last_name" => "Greenspan",
"e-mail" => ""
);

Nếu như bạn muốn thêm phần tử vào mảng, bạn có thể gán tiếp một giá trò khác. Dòng lệnh sau sẽ thêm một số nguyên vào trong mảng, do đó mảng này sẽ chứa tất cả 4 phần tử. sau sẽ thêm một số nguyên vào trong mảng, do đó mảng này sẽ chứa tất cả 4 phần tử.
sau sẽ thêm một số nguyên vào trong mảng, do đó mảng này sẽ chứa tất cả 4 phần tử.

$person["age"] = 32;

Nếu bạn muốn truy cập cả khoá và giá trò của một mảng liên hợp, bạn sẽ dùng list() = each()

như sau:

while (list($key, $value) = each($person)) { echo "key : $key, value = $value \n"; } { echo "key : $key, value = $value \n"; }
{
echo "key : $key, value = $value
\n";
}

Các chương sau này tôi sẽ nói kỹ về list() = each() một cách chi tiết hơn. Trên cơ bản each() truy xuất được cả khoá và giá trò của phần tử trong mảng. List() giữ các giá trò và gán vào $key và $value. Tiến trình này tiếp tục cho đến khi mỗi phần tử trong mảng được truy cập. Nếu bạn muốn duyệt qua hết mảng bạn cần phải sử dụng reset($person). Nếu bạn chỉ muốn sử dụng giá trò của phần tử trong mảng mà thôi hoặc bạn muốn sử dụng mảng không liên lợp và vẫn muốn sử dụng cấu trúc list()=each() bạn phải thực hiện như sau: bản each() truy xuất được cả khoá và giá trò của phần tử trong mảng. List() giữ các giá trò và gán vào $key và $value. Tiến trình này tiếp tục cho đến khi mỗi phần tử trong mảng được truy cập. Nếu bạn muốn duyệt qua hết mảng bạn cần phải sử dụng reset($person). Nếu bạn chỉ muốn sử dụng giá trò của phần tử trong mảng mà thôi hoặc bạn muốn sử dụng mảng không liên lợp và vẫn muốn sử dụng cấu trúc list()=each() bạn phải thực hiện như sau:
bản each() truy xuất được cả khoá và giá trò của phần tử trong mảng. List() giữ các giá trò
và gán vào $key và $value. Tiến trình này tiếp tục cho đến khi mỗi phần tử trong mảng được
truy cập. Nếu bạn muốn duyệt qua hết mảng bạn cần phải sử dụng reset($person).
Nếu bạn chỉ muốn sử dụng giá trò của phần tử trong mảng mà thôi hoặc bạn muốn sử dụng
mảng không liên lợp và vẫn muốn sử dụng cấu trúc list()=each() bạn phải thực hiện như sau:

while (list( , $value) = each($person)) { echo "value = $value \n"; } { echo "value = $value \n"; }
{
echo "value = $value
\n";
}

Hoặc bạn chỉ muốn truy xuất khoá, bạn sẽ làm như sau:

while (list($key) = each($person)) { echo "key = $key \n"; } { echo "key = $key \n"; }
{
echo "key = $key
\n";
}

Hãy nhận đònh về mảng trong PHP như sau: - Tất cả các mảng trong PHP đều là mảng liên hợp. Tại vì sao? Bởi vì những mảng không phải là liên hợp thì PHP cũng sẽ tự động gán cho chúng các key. Ví dụ: $x= array ("pug", "poodle"), PHP sẽ tự gán cho $x các khoá là các con số nguyên theo thứ tự bắt đầu từ số 0. Bạn sẽ được tìm hiểu kỹ ở chương 6. - Tất cả các mảng trong PHP đều là mảng liên hợp. Tại vì sao? Bởi vì những mảng không phải là liên hợp thì PHP cũng sẽ tự động gán cho chúng các key. Ví dụ: $x= array ("pug", "poodle"), PHP sẽ tự gán cho $x các khoá là các con số nguyên theo thứ tự bắt đầu từ số 0. Bạn sẽ được tìm hiểu kỹ ở chương 6.
- Tất cả các mảng trong PHP đều là mảng liên hợp. Tại vì sao? Bởi vì những mảng không phải là liên hợp thì
PHP cũng sẽ tự động gán cho chúng các key. Ví dụ: $x= array ("pug", "poodle"), PHP sẽ tự gán cho $x các khoá
là các con số nguyên theo thứ tự bắt đầu từ số 0. Bạn sẽ được tìm hiểu kỹ ở chương 6.

Mảng đa chiều PHP cũng hỗ trợ mảng đa chiều. Mảng đa chiều thường sử dụng nhất đó là mảng hai chiều. Chúng chứa thông tin dựa trên hai khoá. Giả sử, nếu chúng ta chứa thông tin hai người trở lên thì mảng hai chiều sẽ hỗ trợ việc này rất tốt. Chúng ta sẽ xác lập một mảng $people. Trong mảng $people lại chứa mảng cho từng cá nhân: PHP cũng hỗ trợ mảng đa chiều. Mảng đa chiều thường sử dụng nhất đó là mảng hai chiều. Chúng chứa thông tin dựa trên hai khoá. Giả sử, nếu chúng ta chứa thông tin hai người trở lên thì mảng hai chiều sẽ hỗ trợ việc này rất tốt. Chúng ta sẽ xác lập một mảng $people. Trong mảng $people lại chứa mảng cho từng cá nhân:
PHP cũng hỗ trợ mảng đa chiều. Mảng đa chiều thường sử dụng nhất đó là mảng hai chiều.
Chúng chứa thông tin dựa trên hai khoá. Giả sử, nếu chúng ta chứa thông tin hai người trở lên
thì mảng hai chiều sẽ hỗ trợ việc này rất tốt. Chúng ta sẽ xác lập một mảng $people. Trong
mảng $people lại chứa mảng cho từng cá nhân:

$people = array ( "khai" => array ("ho_lot" => "tongphuoc", "tuoi" => 30), "minh" => array ("ho_lot" => "leanh" , "tuoi" => 52) ); "khai" => array ("ho_lot" => "tongphuoc", "tuoi" => 30), "minh" => array ("ho_lot" => "leanh" , "tuoi" => 52) );
"khai" => array ("ho_lot" => "tongphuoc", "tuoi" => 30),
"minh" => array ("ho_lot" => "leanh" , "tuoi" => 52)
);

Ta thấy $people chứa các thông tin của 2 người, Khai và Minh. Để truy cập một trò trong bất kỳ thông tin của cá nhân nào bạn sẽ phải dùng cả hai khoá. Ví dụ để truy xuất tuổi của Minh bạn sẽ thực hiện lệnh như sau: kỳ thông tin của cá nhân nào bạn sẽ phải dùng cả hai khoá. Ví dụ để truy xuất tuổi của Minh bạn sẽ thực hiện lệnh như sau:
kỳ thông tin của cá nhân nào bạn sẽ phải dùng cả hai khoá. Ví dụ để truy xuất tuổi của Minh
bạn sẽ thực hiện lệnh như sau:

echo $people["minh"]["tuoi"];

Bạn có thể truy cập tất cả các phần tử trong mảng hai chiều bằng cách sử dụng vòng lặp trên cả hai chiều của mảng: cả hai chiều của mảng:
cả hai chiều của mảng:

while(list($person, $person_array) = each($people)) { echo "Ban biet gi ve $person\n"; while(list($person_attribute, $value) = each($person_array)) { echo "$person_attribute = $value\n"; } } Biến gán từ trình duyệt (web browser) { echo "Ban biet gi ve $person\n"; while(list($person_attribute, $value) = each($person_array)) { echo "$person_attribute = $value\n"; } } Biến gán từ trình duyệt (web browser)
{
echo "Ban biet gi ve $person
\n";
while(list($person_attribute, $value) = each($person_array))
{
echo "$person_attribute = $value
\n";
}
}
Biến gán từ trình duyệt (web browser)

Quan điểm chung của việc sử dụng PHP cũng như các ngôn ngữ khác là cung cấp khả năng nhập thông tin theo ý muốn của khách. Thông thường các thông tin này được nhập vào thông qua một form HTML. Nhưng cũng có thể chúng xuất phát từ các nguồn khác như: HTML, cookie, session. nhập thông tin theo ý muốn của khách. Thông thường các thông tin này được nhập vào thông qua một form HTML. Nhưng cũng có thể chúng xuất phát từ các nguồn khác như: HTML, cookie, session.
nhập thông tin theo ý muốn của khách. Thông thường các thông tin này được nhập vào thông
qua một form HTML. Nhưng cũng có thể chúng xuất phát từ các nguồn khác như: HTML,
cookie, session.

Biến từ Form của HTML Dạng thông thường nhất để khách có thể nhập thông tin riêng là thông qua một form HTML. Trong phần phụ lục A có trình bày chi tiết về các tạo một form HTML. Nếu bạn chưa biết gì về cách tạo form này thì hãy đọc phần phụ lục. Bạn hãy tạo trang sign.php chỉ chứa 100% mã lệnh HTML như sau (có thể đặt là sign.htm cũng được): Dạng thông thường nhất để khách có thể nhập thông tin riêng là thông qua một form HTML. Trong phần phụ lục A có trình bày chi tiết về các tạo một form HTML. Nếu bạn chưa biết gì về cách tạo form này thì hãy đọc phần phụ lục. Bạn hãy tạo trang sign.php chỉ chứa 100% mã lệnh HTML như sau (có thể đặt là sign.htm cũng được):
Dạng thông thường nhất để khách có thể nhập thông tin riêng là thông qua một form HTML.
Trong phần phụ lục A có trình bày chi tiết về các tạo một form HTML. Nếu bạn chưa biết gì
về cách tạo form này thì hãy đọc phần phụ lục. Bạn hãy tạo trang sign.php chỉ chứa 100% mã
lệnh HTML như sau (có thể đặt là sign.htm cũng được):

Một khi khách nhấp chuột vào nút SUBMIT (chấp nhận) thì các biến như $email, $first_name, và $submit, $first_name, và $submit
,
$first_name, và $submit

sẽ được chuyển giao sang trang action là mypage.php. Sau đó, trong trang mypage.php bạn sẽ xử lý các biến này tuỳ thuộc vào mục đích chương trình. Để ý rằng phần lớn các ứng dụng trong sách này đều sử dụng giá trò của nút lệnh SUBMIT. Trong trang mypage.php bạn phải viết các lệnh để xử các thao tác của người truy cập. Bạn hãy xem cách xử lý trong trang mypage.php mẫu như sau:trang mypage.php bạn sẽ xử lý các biến này tuỳ thuộc vào mục đích chương trình. Để ý rằng phần lớn các ứng dụng trong sách này đều sử dụng giá trò của nút lệnh SUBMIT. Trong trang mypage.php bạn phải viết các lệnh để xử các thao tác của người truy cập. Bạn hãy xem cách xử lý trong trang mypage.php mẫu như sau:
trang mypage.php bạn sẽ xử lý các biến này tuỳ thuộc vào mục đích chương trình. Để ý rằng
phần lớn các ứng dụng trong sách này đều sử dụng giá trò của nút lệnh SUBMIT.
Trong trang mypage.php bạn phải viết các lệnh để xử các thao tác của người truy cập. Bạn
hãy xem cách xử lý trong trang mypage.php mẫu như sau: