1
GIỚI THIỆU VỀ PHP
1. PHP là gì?
PHP viết tắt của Hypertext Preprocessor là một ngôn ngữ lập trình kiểu script ,
chạy trên Server và trả về mã HTML cho trình duyệt
2. Cách sử dụng PHP
Cú pháp:
<?php
//khối lệnh thực hiện công việc
?>
Mỗi câu lệnh trong php được kết thúc bằng dấu (;). Dấu này là một toán tử dùng
để phân biệt các cấu trúc với nhau
Có hai câu lệnh cơ bản dùng để hiển thị các câu text ra browser là : echo và print
2
GIỚI THIỆU VỀ PHP
Lưu ý:
o Các file php phải có phần mở rộng là .php. Nếu phần mở rộng là .html thì
đoạn mã php sẽ không được thực thi
o
Có thể viết các câu chú thích cho đoạn mã php. Có hai cách viết là: /* chú
thích */ hoặc // chú thích
2. Cách sử dụng PHP
Ví dụ:
<html>
<head>
<title>Example</title>
</head>
<body>
<?php
echo "<p>Php programing</p>";
print "<p>Mysql database</p>";
?>
</body>
</html>
3
KiỂU DỮ LiỆU CƠ BẢN, HẰNG, BiẾN TRONG PHP
1. Biến trong PHP
PHP quy định bất kỳ từ nào có dấu $ ở trước đều là tên của biến. Ví dụ: $a
Tên biến là một chuỗi các ký tự chỉ bao gồm các chữ số, chữ cái (a z) và dấu gạch
dưới ( _ ). Và PHP quy định phân biệt các biến chữ hoa và chữ thường là khác
nhau, ví dụ $ab và $Ab là 2 biến hoàn toàn khác nhau.
PHP tự động khởi gán giá trị của các biến này là rỗng (đối với kiểu dữ liệu văn bản)
hoặc 0 (đối với kiểu dữ liệu số)
Để gán giá trị cho các biến, bạn sử dụng câu lệnh gán như sau:
$tên_biến = giá trị cần gán;
Ví dụ:
Nam_sinh=1980;
$ho_ten="CMXQ";
4
KiỂU DỮ LiỆU CƠ BẢN, HẰNG, BiẾN TRONG PHP
2. Các kiểu dữ liệu trong PHP
PHP có 3 kiểu dữ liệu cơ bản: Integer, double và string. Tất cả các biến đều được
chỉ định kiểu dữ liệu, và như chúng ta đã nói ở trên, giá trị của chúng có thể bị thay
đổi trong quá trình sử dụng.
o Kiểu giá trị Integer sử dụng 4 byte của bộ nhớ và có giá trị nằm trong khoảng
từ -2 tỷ đến 2 tỷ
o
Kiểu dữ liệu double là kiểu dữ liệu số thực, cho phép chứa các số thực.
o
Kiểu String được sử dụng để chứa các dữ liệu như là các ký tự văn bản, ký tự
đặc biệt và các chữ số. Dữ liệu kiểu string được đặt trong cặp dấu ngoặc kép
“ " chỉ định một xâu (hay còn gọi là chuỗi ký tự)
Ví dụ:
2: Kiểu integer;
2.0: kiểu double
"2 gio": Kiểu xâu
5
KiỂU DỮ LiỆU CƠ BẢN, HẰNG, BiẾN TRONG PHP
3. Định nghĩa hằng
Hàm define() được sử dụng để tạo một hằng số. Hàm này có cấu trúc sau:
define ("tên_hằng","giá trị của hằng");
Ví dụ:
define (“C",“Công ty");// Định nghĩa hằng C với giá trị là “Công ty"
4. Lừa kiểu và ép kiểu
PHP có thể tính toán chuỗi như là một số. Trong đoạn ví dụ sau, biến $str được xác
định là một chuỗi:
$str="300 là số nguyên";
Nếu chúng ta cố cộng thêm một giá trị nguyên là 4 vào biến $str, biến $str sẽ tự
động tính với số nguyên 756300: $x=4+$str;//$x =304. Nhưng bản thân giá trị của
biến $str không thay đổi
Chuyển kiểu chuỗi phải tuân theo 2 nguyên tắc sau:
o
Chỉ những chuỗi bắt đầu là một xâu các chữ số. VD: chuỗi "35 tuổi" sẽ được
ước lượng là 35, nhưng chuỗi "tuổi 35" sẽ chỉ xác định giá trị 0
6
KiỂU DỮ LiỆU CƠ BẢN, HẰNG, BiẾN TRONG PHP
4. Lừa kiểu và ép kiểu
o Một chuỗi sẽ chỉ được xác định như là một giá trị kiểu double nếu giá trị kiểu
double được miêu tả bao gồm toàn bộ chuỗi. Chuỗi "3.4", "-4.2" sẽ được ước
lượng như giá trị thực 3.4 và -4.2. Nếu một ký tự không phải là ký tự kiểu số
thực được đưa vào chuỗi, giá trị của chuỗi đó sẽ được ước lượng như là một số
nguyên. Chuỗi "3.4 dollar" sẽ thành số nguyên 3.
PHP sẽ thực hiện "lừa kiểu" giữa 2 kiểu số. Nếu bạn thực hiện một phép toán số học
giữa kiểu thực và kiểu nguyên, giá trị sẽ là số thực. Ví dụ:
$a=1 //$ a là một số nguyên
$b= 1.0 //$b là số thực
$c=$a+$b //$c là kiểu số thực , = 2.0
Ép kiểu dữ liệu cho phép bạn thay đổi kiểu dữ liệu của biến
a=11.2// $a là kiểu thực
$a=(int)$a// Bây giờ, $ a là kiểu nguyên, giá trị = 11
$a= (double) $a// Bây giờ $a lại trở về kiểu thực = 11.0
$b= (string)$a// $b là giá trị kiểu chuỗi ="11"
7
KiỂU DỮ LiỆU CƠ BẢN, HẰNG, BiẾN TRONG PHP
5. Phạm vi của biến
Nếu biến được khai báo trong Script thì có phạm vi trong toàn Script
Nếu biến được khai báo trong một hàm nào đó thì chỉ có tác dụng trong hàm đó
6. Kiểm tra/ loại bỏ biến:
Sử dụng hàm isset(Tên_biến) để kiểm tra biến đó có tồn tại hay không? Kết quả
trae về kiểu boolean.
Sử dụng hàm unset(Tên_biến) để loại bỏ biến đang tồn tại ra khỏi trạng thái thực
thi
Sử dụng hàm empty(Tên_biến) để kiểm tra biến tồn tại và không rỗng
8
CÁC PHÉP TOÁN TRONG PHP
1. Các phép toán số học
Toán tử Tên Ví dụ
+ Cộng $a + $b
- Trừ $a - $b
* Nhân $a * $b
/ Chia nguyên $a / $b
% Chia lấy dư $a % $b
2. Các phép toán quan hệ
Toán tử Tên Ví dụ
< Bé thua 3 < 5
<= Bé thua hoặc bằng A <= b
> Lớn hơn $a > $b
>= Lớn hơn hoặc bằng $a>= $b
9
CÁC PHÉP TOÁN TRONG PHP
2. Các phép toán quan hệ
Toán tử Tên Ví dụ
!= Khác 123 != “123”
<> Khác 123<> “123”
3. Các phép toán logic
Toán tử Tên Ví dụ
&& And (và) $a && $b
|| Or (hoặc) $a or $b
! Not (phủ định) !$b
10
CÁC PHÉP TOÁN TRONG PHP
4. Các phép toán tự tăng giảm
5. Phép toán về chuỗi
Để tăng (hoặc giảm) giá trị của một biến lên (xuống) một đơn vị có thể sử dụng
phép toán tự tăng ++ và tự giảm - -
Có hai cách viết phép toán tự tăng giảm:
o
++&Tên_biến (hoặc $Tên_biến)
o
&Tên_biến++ (hoặc $Tên_biến )
Lưu ý: cần phân biệt hai cách viết trên
Phép cộng chuỗi: Để cộng (ghép) hai chuỗi lại với nhau ta sử dụng dấu chấm (.)
11
CÁC PHÉP TOÁN TRONG PHP
5. Phép toán về chuỗi
Ví dụ: Xét đoạn mã sau:
<html>
<head>
<title>Example 4</title>
</head>
<Body>
<?php
$st1 = "Welcome you to ";
$st2 = "Web programing";
echo $st1.$st2;
?>
</body>
</html>
12
CÁC PHÉP TOÁN TRONG PHP
5. Phép toán về chuỗi
Ví dụ: Xét đoạn mã sau:
<html>
<head>
<title>Example 4</title>
</head>
<Body>
<?php
$st1 = "Welcome you to ";
$st2 = "Web programing";
echo $st1.$st2;
?>
</body>
</html>
13
CẤU TRÚC ĐIỀU KHIỂN
1. Cấu trúc rẽ nhánh
Cấu trúc if:
Cú pháp: if (điều kiện) câu lệnh php;
Cấu trúc if … else:
Cú pháp: if (điều kiện) công việc 1;
Else công việc 2;
Lưu ý:
Ta có thể sử dụng cấu trúc if lồng nhau khi có nhiều hơn 2 sự lựa chọn
Nếu cần thực thi nhiều câu lệnh thì cần đặt nó trong cặp dấu ngoặc móc { }
14
CẤU TRÚC ĐIỀU KHIỂN
1. Cấu trúc rẽ nhánh
Ví dụ:
//cấu trúc if….
$h=1;
if ($h > 0) {
echo “h là số dương";
}
//cấu trúc if… else….
$h=1;
if ($h > 0)
{
echo (" h là số dương");
}
else {
echo (" h là số âm");
}
15
CẤU TRÚC ĐIỀU KHIỂN
1. Cấu trúc rẽ nhánh
Cấu trúc switch: sử dụng khi có nhiều sự lựa chọn
Cú pháp:
switch (n)
{
case <giá trị 1>: Câu lệnh 1; break;
case <giá trị 2>: Câu lệnh 2; break;
…
case <giá trị n>: Câu lệnh n; break;
default: Câu lệnh mặc định;
}
16
CẤU TRÚC ĐIỀU KHIỂN
1. Cấu trúc rẽ nhánh
Ví dụ:
$val = 6;
switch ($val) {
case $a:
echo "five";
break;
case $b:
echo "six";
break;
default:
echo “zero";
}
17
CẤU TRÚC ĐIỀU KHIỂN
1. Cấu trúc lặp
Cấu trúc For:
Cú pháp:
for (giá trị khởi tạo; điều kiện; giá trị tăng)
{
các câu lệnh;
}
Ví dụ:
for ($i = 1; $i < 11; ++$i) {
echo ("$i <BR> \n"); //In từ 1 đến 10
}
18
CẤU TRÚC ĐIỀU KHIỂN
1. Cấu trúc lặp
Cấu trúc While:
Cú pháp:
While (biểu thức điều kiện)
{
các câu lệnh;
}
Ví dụ:
While ($i <11) {
echo ("$i <BR> \n"); //In từ 1 đến 10
}
19
TRUY CẬP ĐẾN FORM
Form cùng với các thuộc tính của nó là nơi để người sử dụng nhập dữ liệu vào
Để làm việc với các dữ liệu đó đòi hỏi phải kết nối đến form
Khi làm việc với form thì các phần tử form trên trang html sẽ tự động trở thành biến
trong đoạn mã php
Để lấy giá trị từ các phần tử form ta sử dụng các hàm $_GET hoặc $_POST
1. Hàm $_GET
Là hàm xây dựng sẵn dùng để lấy các giá trị từ form có sử dụng method = GET
Thông tin khi truyền đi với phương thức GET sẽ được hiển thị trên Browser’s
address bar. Mọi người có thể nhìn thấy thông tin và số ký tự tối đa là 100
Cú pháp lấy giá trị từ các phần tử form
$_GET[“Tên phần tử form”]
20
TRUY CẬP ĐẾN FORM
1. Hàm $_GET
Ví dụ đoạn chương trình trang login.php sau:
<body>
<?php
if (isset($_GET["submit"])){
echo "User name: ".$_GET["username"]."<br>";
echo "Password: ".$_GET["password"];
}
?>
<h2> Login user: </h2>
<form name="f1" method = "get" action = "thu.php">
<p>User name: <input type="text" name="username" size="35"
maxlength="30" value=""></p>
<p>Password: <input type="password" name="password" size="35"
value=""></p>
<p><input type="submit" name="submit" value="Ok" style="width: 50;
height: 25">
<input type="reset" name="reset" value="Cancel" style="width:50;
height:25"></p>
</form>
</body>
21
TRUY CẬP ĐẾN FORM
2. Hàm $_POST
Là hàm xây dựng sẵn dùng để lấy các giá trị từ form có sử dụng method = POST
Thông tin khi truyền đi với phương thức POST sẽ không được hiển thị trên Browser’s
address bar
Không thể nhìn thấy các thông tin (biến và giá trị) đang truyền.
Cú pháp lấy giá trị từ các phần tử form
$_POST[“Tên phần tử form”]
22
KẾT NỐI CSDL MYSQL TRONG PHP
1. Tạo kết nối đến MySQL
$biến_kết_nối = mysql_connect(“máy_chủ”,“tên truy cập CSDL”,“mật_khẩu”)
or die(“Không kết nối được”);
Trong đó:
•
Hàm die(“Chuỗi”): Đưa ra thông báo và kết thúc.
•
Với cách viết trên, die chỉ thực hiện khi lệnh trước nó không thành công
Ví dụ:
<?
mysql_connect ("localhost", "root","123") die(“không kết nối được”);
?>
2. Chọn CSDL cần truy cập
mysql_select_db(“Tên CSDL”) or die (“Chưa có CSDL”);
23
KẾT NỐI CSDL MYSQL TRONG PHP
3. Xây dựng câu truy vấn và thực hiện câu truy vấn
$biến = mysql_query(“Lệnh SQL”) or die(“Không thực hiện được SQL”);
Ví dụ:
<?php
$sql= mysql_query(“select * from sinhvien”);
?>
Các hàm cần thiết sử dụng để truy cập dữ liệu:
Hàm mysql_num_rows(data): Số lượng bản ghi trong bảng dữ liệu
Hàm mysql_fetch_array(data, [array_type]): trả về bản ghi trong bảng dữ
liê‹u như là mô‹t mảng kết hợp với các cô‹t là khóa
Hàm mysql_affected_rows([connection]): trả về số bản ghi trong bảng bị
ảnh hưởng bởi update, delete, insert
24
KẾT NỐI CSDL MYSQL TRONG PHP
4. Chọn CSDL cần truy cập
Truy xuất dữ liệu trong bảng sinh viên
<?php
mysql_connect("localhost", "root", "")or die("cannot connect");
mysql_select_db(“QLSV") or die("khong co");
$sql=mysql_query("select MaSV, HoTen from SINHVIEN");
if( mysql_num_rows($sql)<>0)
{
while($row = mysql_fetch_object($sql))
{
//Xuất thông tin
$MaSV = $row->MaSV;
$HoTen = $row->Hoten;
echo "$ MaSV <br>";
echo $ HoTen;
}
}
else
echo "Không có dữ liệu";
?>
25
KẾT NỐI CSDL MYSQL TRONG PHP
4. Chọn CSDL cần truy cập
Truy xuất dữ liệu trong bảng sinh viên
<?php
mysql_connect("localhost", "root", "")or die("cannot connect");
mysql_select_db(“QLSV") or die("khong co");
$sql=mysql_query("select MaSV, HoTen from SINHVIEN");
if( mysql_num_rows($sql)<>0)
{
while($row =mysql_fetch_array ($sql))
{
//Xuất thông tin
$MaSV = $row[“MaSV”];
$HoTen = $row[“Hoten”];
echo "$ MaSV <br>";
echo $ HoTen;
}
}
else
echo "Không có dữ liệu";
?>