Tải bản đầy đủ (.pdf) (70 trang)

Tìm hiểu và ứng dụng một vài ngôn ngữ lập trình để thiết kế trang web

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.65 MB, 70 trang )


4






T×m hiÓu vµ øng dông mét vµi ng«n
ng÷ lËp tr×nh ®Ó thiÕt kÕ trang web



Luận văn tốt nghiệp ñại học

5

Mở đầu
Mở đầuMở đầu
Mở đầu


1. Lý do chọn đề tài
Với sự ra đời và phát triển của Word wide web (www) trong những năm
vừa qua đã dẫn tới sự phát triển đáng kinh ngạc của Internet và web. Đã xuất
hiện các công ty mới chuyên xây dựng các ứng dụng trên web. Cho tới nay
trên thế giới đã có hơn 4 tỉ website.
Ngày nay web ngày càng thâm nhập vào cuộc sống hàng ngày, web xuất
hiện ở mọi lĩnh vực nh kinh tế, văn hoá, chính trị.Để thiết kế một trang
web đơn giản không có sự tơng tác với ngời sử dụng rất dễ. Tuy nhiên việc
thiết kế các trang web có sự tơng tác với ngời sử dụng đòi hỏi ngời thiết kế


phải sử dụng các ngôn ngữ lập trình trên đó. Với việc thiết kế các website
bằng cách sử dụng các ngôn ngữ lập trình web sẽ tạo ra sự tơng tác 2 chiều
giữa ngời sử dụng và ngời thiết kế, nó giúp ngời thiết kế có thể thu đợc
các thông tin từ phía ngời sử dụng và có thể lu các thông tin đó để sử dụng
lâu dài, hơn thể nữa nó làm tăng tính bảo mật của các website khi sử dụng cơ
sở dữ liệu. Các ngôn ngữ lập trình web ngày càng phát triển cùng với sự phát
triển của Internet. Với các u điểm trong việc sử dụng ngôn ngữ lập trình web
nên hầu nh các website ngày nay đều sử dụng các ngôn ngữ lập trình này.
Tuy nhiên việc tìm hiểu các ngôn ngữ lập trình web này trong chơng trình
học của hệ đào tạo s phạm tin là rất hạn chế. Với các lý do trên và với sự
hớng dẫn tận tình của thầy giáo Trịnh Thanh Hải chúng tôi đã quyết định
chọn đề tài:
Tìm hiểu và ứng dụng một vài ngôn ngữ lập trình để thiết kế trang
web.
2. Mục đích nghiên cứu
Nghiên cứu một số ngôn ngữ lập trình web từ đó ứng dụng vào việc thiết
kế website hỗ trợ việc học tập.


6

3. Các nhiệm vụ chính
- Nghiên cứu các ngôn ngữ lập trình mạng HTML, Java applet,
JavaScript, PHP, cơ sở dữ liệu MySQL. Xây dựng website sử dụng các ngôn
ngữ trên.
- Nghiên cứu cách sử dụng các phần mềm Maple, Cabri. Tích hợp các
sản phẩm của các phần mềm đó lên website.
- Xây dựng diễn đàn dành cho giáo viên và học sinh trên mạng. Từ đó
thúc đẩy sự giao lu, học hỏi, và quảng bá rộng rãi tới đông đảo giáo viên và
học sinh.

4. Phơng pháp nghiên cứu:
- Nghiên cứu các tài liệu về ngôn ngữ lập trình mạng, phần mềm flash,
dreamwave, cabri
- Lấy ý kiến đóng góp của các thầy cô giáo.
5. Giới hạn của đề tài
Các ngôn ngữ lập trình web ngày này rất nhiều tuy nhiên trong đề tài này
chúng tôi chỉ nghiên cứu 2 ngôn ngữ đó là Javascript và PHP.












7

Chơng
Chơng Chơng
Chơng 1
11
1


Các kiến thức cơ bản
Các kiến thức cơ bảnCác kiến thức cơ bản

Các kiến thức cơ bản


Để thiết kế web động, ngời thiết kế cần phải có một số kiến thức, kỹ
năng cơ bản về các ngôn ngữ sau:
1.1 JavaScript [3]
JavaScrip là ngôn ngữ lập trình hớng đối tợng, chạy đợc trên nhiều hệ
điều hành, có cấu trúc câu lệnh giống nh C, nó đợc thiết kế để lập trình các
script tơng tác cho các trang web động và các ứng dụng trên sever.
1.1.1 Các nguyên tắc trong JavaScript
Mỗi câu lệnh trong JavaScript đều kết thúc bằng dấu ;. Các điều kiện
đợc khai báo trong dấu bao đơn ( ).
Mỗi hàm hay mỗi phơng thức do ngời dùng định nghĩa đợc bắt đầu
với từ khoá function, tham số truyền vào phơng thức không cần khai báo
kiểu dữ liệu.
Khi khai báo biến trong JavaScript, bạn cần phải sử dụng từ khoá var
trớc tên biến. Biến có thể khởi tạo giá trị hoặc không đều đợc chấp nhận.
Trong câu lệnh điều khiển, nếu có hơn một câu lệnh, phải sử dụng cặp
dấu ngoặc nhọn { }.
1.1.2 Tham chiếu đến thẻ HTML
Để tham chiếu đến thẻ HTML bằng JavaScript, phải xác định đợc loại
thẻ và thuộc tính của thẻ. Để thẻ HTML đợc tham chiếu, chúng phải có tên
(Name) hay ID nhận dạng.
Đối với một số thẻ không có thuộc tính value khi tham chiếu đến giá trị
của chúng, bạn phải tham chiếu đến thuộc tính value nh một phần lấy giá trị
của chúng. Ví dụ nh thẻ textarea.
Tham chiếu đến thuộc tính value của một số thẻ HTML cho phép nhập
liệu thuộc một form trình bày nh trong bảng 1-1 bao gồm:

8


Bảng 1-1 Tham chiếu đến giá trị của thẻ HTML
Thẻ Ví dụ
Text` document.form.txtUser.value
hidden document.form.txtForm.value
password document.form.txtPWD.value
textarea document.form.txtDsc.value
select document.form.cblop.value
select document.form.cblop[i].value
checkbox document.form.Cau1.value
checkbox document.form.Cau1[i].value
radio document.form.Cau1.value
radio document.form.Cau1[i].value

Tuy nhiên đôi khi ta muốn tham chiếu đến các thuộc tính khác nh chiều
dài của các thẻ trên ta cũng có thể sử dụng các thuộc tính nh ở bảng 1-2.
Bảng 1-2 Tham chiếu đến chiều dài của thẻ HTML
Thẻ Ví dụ
text document.form.txtUser.length
hidden document.form.txtForm.length
password document.form.txtPWD.length
textarea document.form.txtDsc.value.length

select document.form.cblop.length

Ngoài các tham chiếu đến các thẻ HTML trong thẻ Form nh trên,
JavaScript còn có thể tham chiếu đến các thẻ HTML khác không thuộc thẻ
Form.




9

1.1.3 Một số biến cố thờng dùng trong Javascript
Khi ngời dùng thực hiện một hành động nào đó trên một số thẻ HTML,
bạn có thể sử dụng một số phơng thức do ngời dùng định nghĩa thông qua
biến cố phát sinh.
Danh sách các biến cố xảy ra trên thẻ HTML khi sử dụng JavaScript để
thực hiện một công việc nào đó đợc trình bày trong bảng 1-3.
Bảng 1-3 Một số biến cố trên thẻ HTML
Biến cố Ví dụ
Onclick Khi ngời dùng nhấn chuột trên thẻ.
OnSubmit
Khi ngời dùng submit một form.
OnReset
Khi ngời dùng reset một form.
OnActive Khi form hoạt động.
OnLoad Khi form nạp trên trình duyệt.
Onunload Khi form đóng lại.
Onmousemove Khi mouse di chuyển vào thẻ.
Onmouseout Khi mouse di chuyển ra khỏi thẻ.
Onmouseover Khi mouse di chuyển trên thẻ.
Onblur Khi con trỏ di chuyển ra khỏi thẻ.
Onkeypress Khi phím di chuyển trên thẻ.

1.1.4 Một số phơng thức thờng dùng trong Javascript
Ngoài một số phơng thức JavaScript do ngời dùng định nghĩa, bản thân
JavaScript cung cấp một số phơng thức, cho phép ngời dùng thực hiện một
số hành động thay vì sử dụng thông qua các biến cố.
Các phơng thức thông thờng của JavaScript để thực hiện một số công

việc nào đó đợc trình bày trong bảng 1-4.



10
Bảng 1-4 Một số phơng thức của JavaScript
Phơng thức Diễn giải
alert(str) Xuất hiện hộp thoại thông báo với nội dung là chuỗi str.
comfirm(str) Xuất hiện hộp thoại chứa nội dung cần xác nhận với nút
OK và Cance.
Prompt(str,default)

Xuất hiện hộp thoại với nội dung là chuỗi str, mệnh đề
default cho phép ngời dùng nhập vào giá trị.
f.submit() Submit một form có tên là f.
f.reset() Reset một form có tên là f.
t.focus() Trỏ con trỏ nháy vào thẻ có tên là t.
s.toString() Chuyển giá trị của đối tợng sang dạng chuỗi.
s.IndexOf(i) Trả về vị trí đầu tiên của chuỗi i tìm thấy trong chuỗi s.
s.LastIndexOf(i) Trả về vị trí cuối cùng của chuỗi i tìm thấy trong chuỗi s.

s.substr(i,j) Trả về chuỗi con trong chuỗi từ vị trí i dài j kí tự.
s.charAt(i) Trả về ký tự tại vị trí thứ i trong chuỗi s.

Ngoài ra JavaScript còn có các phơng thức thờng dùng để điều khiển
cửa sổ hay trình duyệt nh trong bảng 1-5.
Bảng 1-5 Một số phơng thức điều khiển khác
Phơng thức Diễn giải
Window.close() Đóng cửa sổ hiện tại.
Window.open(URL) Mở một cửa sổ trình duyệt với địa chỉ URL.

Window.opener(URL) Mở một cửa sổ trình duyệt với địa chỉ URL trên cửa
sổ popup.
Window.history.back(i)

Trở về trang web trình duyệt trớc đó i lần.
Window.history.go(-i) Trở về cửa sổ trang web trình duyệt trớc đó i lần.
Window.print() Mở hộp thoại print để in trang web.
document.write(str) In chuỗi str ra tại vị trí hiện tại của trang web

11
1.1.5 Khai báo và sử dụng biến trong JavaScript.
Khai báo và sử dụng biến.
Để khai báo biến trong JavaScript, ta cần phải sử dụng từ khoá var trớc
tên biến, biến có thể khởi tạo giá trị trong khi khai báo hay có thể gán khi
dùng.
Để sử dụng biến, cũng tơng tự nh các ngôn ngữ khác, ta sử dụng phép
gán nh phép gán trong C hoặc Java.
Các phép toán trong JavaScript.
Các phép toán trong JavaScript đợc thể hiện trong bảng 1-6 nh sau:
Bảng 1-6 Một số phép toán trong JavaScript
Phép toán Diễn giải
== Phép toán so sánh bằng.
!= Phép toán so sánh khác nhau.
|| Phép or.
&& Phép and.
! Phép not
? : Phép thay thế cho câu lệnh if và else đơn giản

1.1.6 Các câu lệnh điều khiển của JavaScript
Câu lệnh if

Cú pháp: If (biểu thức logic)
{ các câu lệnh}
Thực hiện: Nếu thoả mãn biểu thức logic sẽ thực hiện dãy các câu lệnh
nếu không sẽ thoát khỏi câu lệnh rẽ nhánh.





12
câu lệnh if.else
Cú pháp:
If (biểu thức logic)
{ dy câu lệnh 1}
Else
{ dy câu lệnh 2}
Thực hiện: Nếu thoả mãn biểu thức logic sẽ thực hiện dãy câu lệnh 1, nếu
không sẽ thực hiện dãy các lệnh 2.
Câu lệnh Switchcase
Cú pháp: Switch (biểu thức)
{ case giá trị 1:
lệnh 1; break;
case giá trị 2:
lệnh 2; break;
.
case giá trị n:
lệnh n; break;
default:
lệnh n+1;
}

Câu lệnh While
Cú pháp : While (biểu thức logic)
{ dy các lệnh}
Thực hiện: Trong khi biểu thức logic còn thoả mãn thì tiếp tục thực hiện
dãy các lệnh sau While.
Câu lệnh For
Cú pháp: For(biểu thức 1; biểu thức điều kiện; biểu thức 2)
{ dy các lệnh}

13
Thực hiện: Lặp đi lặp lại một số lần nhất định các công việc giống nhau
cho đến khi vẫn còn thoả mãn biểu thức điều kiện.
1.1.7 Chèn tập tin JavaScript
Khi xây dựng một web site, có khá nhiều mục sử dụng lại nhiều lần, một
trong những loại đợc sử dụng lại nhiều lần là thẻ style.
Đối với các phơng thức JavaScript do ngời dùng tạo ra cũng vậy, trong
trờng hợp nhiều lần cần sử dụng lại có thể tạo ra một trang js với các phơng
thức chung, sau đó khai báo sử dụng chúng khi có nhu cầu. Để khai báo sử
dụng trang JavaScript có sẵn ta khai báo nh sau:
<script language="javascript" dẫn đến file js >
</script>
1.2 Ngôn ngữ lập trình máy chủ php
PHP (Pesonal Home Page) là kịch bản trên server (Sever Script), đợc
thiết kế cho phép ta xây dựng ứng dụng web trên cơ sở dữ liệu. Mã PHP có
thể thực thi trên Web Server để tạo ra trang html và xuất ra trình duyệt web
theo yêu cầu của ngời dùng.
PHP ra đời vào khoảng năm 1994, do một ngời phát minh tên Rasmus
Lerdorf, dần dần nó đợc tiếp tục phát triển bởi nhiều ngời khác cho đến
ngày nay. Một số nhà phát triển ứng dụng web, thờng sử dụng PHP để xây
dựng các ứng dụng thơng mại điện tử. Cho đến thời điểm tháng 1 năm 2005

đã có khoảng 7 triệu tên miền trên thế giới sử dụng PHP.
PHP là Open Source (mã nguồn mở), điều này có nghĩa là ta có thể làm
việc trên mã nguồn, thêm, sửa, sử dụng và phân phối chúng.
1.2.1 Nhúng mã PHP trong HTML
Để nhúng mã PHP trong html, ta bắt đầu với <? và đóng lại bằng ?>.
Có 4 loại thẻ PHP
Kiểu short: Đây là thẻ mặc định mà các nhà lập trình PHP thờng sử
dụng. Dạng của thẻ này nh sau: <? Dy các lệnh ?>

14
Kiểu định dạng XML: Thẻ này có thể sử dụng với văn bản định dạng
kiểu XML.Cú pháp của dạng thẻ này nh sau:
<?php dy các lệnh ?>
Kiểu Script: Trong trờng hợp sử dụng PHP nh một Script tơng tự
nh khai báo JavaScript hay VBScript ta có thể khai báo nh sau:
<script language=php>
Dy các lệnh
</script>
Kiểu ASP : Cú pháp của dạng này nh dạng thẻ của asp.
1.2.2 Hằng, biến trong PHP
* Hằng: Tất cả các hằng đều phải khai báo bằng chữ hoa và sử dụng từ
khoá define để khai báo.
Cú pháp khai báo hằng define(Tên hằng, giá trị hằng)
Ví dụ: define(SOCAU,10) khi đó hằng SOCAU sẽ nhận giá trị là 3
* Biến: Là đại lợng biến thiên. Biến trong PHP không yêu cầu phải khai
báo trớc khi sử dụng chúng. Tuy nhiên để chơng trình dễ kiểm soát ta nên
khai báo biến trớc khi sử dụng.
Biến trong PHP bắt đầu bằng kí tự $ ví dụ nh : $a.
Chú ý: Trong PHP các biến có phân biệt chữ hoa và chữ thờng.
Biến form

Dữ liệu đến từ các Script đều là biến PHP, ta có thể nhận biết đợc chúng
bằng cách sử dụng $ trớc tên biến. Một loại biến dùng để lấy dữ liệu từ các
phần tử trong thẻ form gọi là biến form. Có hai cách để truy cập tới biến form
Cách 1: $ <tên thẻ form cần lấy dữ liệu>.
Cách 2: sử dụng mảng $HTTP_POST_VARS[tên thẻ cần lấy dữ liệu]
hoặc $HTTP_GET_VARS[tên thẻ cần lấy dữ liệu].

15
Ví dụ: ở một trang PHP hoặc HTML có một hộp textbox tên là txtUser và
để lấy đợc dữ liệu từ hộp textbox này từ trang khác ta có thể sử dụng 2 cách
nh trên.
$txtUser hay $HTTP_POST_VAR[txtUser].
1.2.3 Các kiểu dữ liệu trong PHP
PHP hỗ trợ 5 kiểu dữ liệu sau:
Integer: Kiểu số nguyên.
Double: Kiểu số thực.
String: Kiểu kí tự, kiểu chuỗi.
Array: Dữ liệu kiểm mảng
Object: Sử dụng hầu hết cho các giá trị có kiểu dữ liệu là đối tợng
của lớp.
1.2.4 Toán tử trong PHP
Các phép toán số học
Các phép toán số học trong PHP bao gồm các phép toán số học thông
thờng (bảng 1-7).
Bảng 1-7 Toán tử số học
Phép toán Tên
+ Cộng
- Trừ
* Nhân
/ Chia

% Lấy phần d






16
Phép toán so sánh và phép toán logic
Bảng 1-8 Một số phép toán so sánh và phép toán logic
Phép toán Diễn giải
== So sánh bằng.
=== So sánh bằng về cả giá trị lẫn kiểu dữ liệu
!= Khác nhau.
> So sánh lớn hơn.
< So sánh nhỏ hơn.
>= So sánh lớn hơn hoặc bằng.
<= So sánh nhỏ hơn hoặc bằng.
||; or Phép or.
&&; and Phép and.
! Phép phủ định.

1.2.5 Các câu lệnh điều khiển
Câu lệnh if
Cú pháp: If (biểu thức logic)
{ các câu lệnh}
Thực hiện: Nếu thoả mãn biểu thức logic sẽ thực hiện dãy các câu lệnh
nếu không sẽ thoát khỏi câu lệnh rẽ nhánh.
Câu lệnh if.else
Cú pháp:

If (biểu thức logic)
{ dy câu lệnh 1}
Else
{ dy câu lệnh 2}
Thực hiện: Nếu thoả mãn biểu thức logic sẽ thực hiện dãy câu lệnh 1, nếu
không sẽ thực hiện dãy các lệnh 2.

17
Câu lệnh Switchcase
Cú pháp: Switch (biểu thức)
{ case giá trị 1:
lệnh 1; break;
case giá trị 2:
lệnh 2; break;
.
case giá trị n:
lệnh n; break;
default:
lệnh n+1;
}
Câu lệnh While
Cú pháp : While (biểu thức logic)
{ dy các lệnh}
Thực hiện: Trong khi biểu thức logic còn thoả mãn thì tiếp tục thực hiện
dãy các lệnh sau While.
Câu lệnh For
Cú pháp: For(biểu thức 1; biểu thức điều kiện; biểu thức 2)
{ dy các lệnh}
Thực hiện: Lặp đi lặp lại một số lần nhất định các công việc giống nhau
cho cho đến khi vẫn còn thoả mãn biểu thức điều kiện.

1.2.6 Sử dụng khai báo require() và include()
Một trong những mục tiêu của của những nhà làm công nghệ phần mềm
là sử dụng lại những đoạn mã đã viết trong khi viết đoạn mã chơng trình mới.
Làm nh vậy nhằm tăng tính mềm dẻo, tính nhất quán trong các ứng dụng,
giảm thời gian xây dựng ứng dụng cùng các chi phí phát triển phần mềm khác.

18
PHP cung cấp hai cách khai báo để sử dụng bất kì đoạn mã chơng trình
nào đã có, bằng cách sử dụng khai báo require() và include(). Ta có thể chèn
tệp tin, kịch bản PHP, text, HTML và ngay cả các lớp (class) của PHP.
Cú pháp khai báo nh sau:
require(đờng dẫn đến tệp tin chứa đoạn m cần sử dụng lại)
include(đờng dẫn đến tệp tin chứa đoạn m cần sử dụng lại)
Hai cách khai báo require() và include() là tơng tự nhau, tuy nhiên
chúng có sự khác nhau cần chú ý đó là: Khi khai báo sử dụng require() thì
websever phải nạp tất cả nội dung bên trong trang đó vào, còn khi sử dụng
include chỉ khi nào cần sử dụng thì websever mới nạp nội dung của trang đó
vào.
1.2.7 Sử dụng hàm trong PHP
Cấu trúc đơn giản của hàm
function <tên hàm>([các tham số nếu có])
{ nội dung bên trong hàm
[return <biểu thức>]
}
Gọi hàm
Trong trờng hợp hàm không có giá trị trả về(thủ tục) thì lời gọi hàm nh
sau:
Tên hàm ([Các tham số nếu có]);
Trong trờng hợp hàm trả về giá trị cụ thể ta có thể gọi hàm với một biến
nhận giá trị trả về nh sau:

$Tên biến= tên hàm([tham số nếu có])
Chú ý: Nếu gọi một hàm cha khai báo sẽ có lỗi xảy ra.
Tham số trong hàm
Khi truyền các tham số từ bên ngoài vào các tham số này không cần
định nghĩa kiểu dữ liệu. Có 2 cách truyền tham số trong lời gọi hàm

19
Tham biến: Khi truyền tham số ở dạng này, nếu có sự thay đổi về
giá trị của tham số đó trong hàm, giá trị đó sẽ giữ lại sau khi tham
số này ra khỏi hàm. PHP dùng từ khoá & để quy định tham số
truyền vào là ở dạng tham biến.
Tham trị: Khi truyền tham số theo dạng này, nếu có sự thay đổi về
giá trị của tham số đó trong hàm, khi ra khỏi hàm giá trị này sẽ
không đợc lu lại ở tham số đó.
1.2.8 PHP và cơ sở dữ liệu MySQL
Thiết lập kết nối cơ sở dữ liệu
PHP cung cấp 2 cách để thiết lập kết nối với hệ cơ sở dữ liệu MySQL.
Cách 1: Sử dụng hàm có cú pháp nh sau:
int mysql_pconnect
(tên server, tên ngời sử dụng, mật khẩu đăng
nhập)
If (!$db)
{
Câu thông báo không kết nối đợc với CSDL.
exit; }
Trong trờng hợp biến $db trả về giá trị false thì việc kết nối cơ sở dữ
liệu là không thành công khi đó cần chấm dứt các thao tác sau đó và in ra lỗi.
Cách 2: Có thể sử dụng lệnh sau :
$link= mysql_connect
(tên server, tên ngời sử dụng, mật khẩu)

Or die (câu thông báo khi không kết nối đợc tới CSDL )
Mở một cơ sở dữ liệu
Tơng ứng với hai cách kết nối tới cơ sở dữ liệu MySQL ta cũng có hai
cách khác nhau để mở một cơ sở dữ liệu.

20
Cách 1: Sử dụng hàm sau:
mysql_select_db(tên cơ sở dữ liệu)
Cách 2: mysql_select_db(tên cơ dữ liệu,$link)
Đóng kết nối cơ sở dữ liệu
Để đóng kết nối với cơ sở dữ liệu ta dùng hàm sau:
Mysql_close(tên cơ sở dữ liệu hoặc biến $link)
Truy vấn cơ sở dữ liệu
Để truy vấn cơ sở dữ liệu, ta có thể sử dụng hàm mysql_query() với tham
số bắt buộc là chuỗi SQL, tham số tuỳ chọn là chuỗi kết nối cơ sở dữ liệu nh
1 trong 3 hàm sau:
int mysql_query(string sql)
int mysql_query(string sql,[int db_connect]);
int mysql_query(string database, string sqlstr,[int db_connect]);
Cả ba hàm trên đều trả về kết quả là thành công hay thất bại, cho phép ta
truy vấn dữ liệu trả về. Ta nên lu kết quả này trong một biến.
Ví dụ:
<?php
$link = mysql_connect ("localhost", "root", "")
or die ("Không thể kết nối tới cơ sở dữ liệu MySQL");
mysql_select_db("qltest", $link);
$sql="select * from cauhoi";
$result = mysql_query($sql,$link);
mysql_close($link);
?>

1.3 Cơ sở dữ liệu mysql [3]
MySQL là cơ sở dữ liệu đợc sử dụng cho các ứng dụng web có quy mô
vừa và nhỏ. Tuy không phải là một cơ sở dữ liệu lớn nhng chúng cũng có

21
trình giao diện trên Windows hay Linux, cho phép ngời dùng có thể thao tác
các hành động liên quan đến cơ sở dữ liệu.
Cũng giống nh các hệ cơ sở dữ liệu khác, khi làm việc với cơ sở dữ liệu
MySQL, ta phải đăng ký kết nối, tạo cơ sở dữ liệu, quản lý ngời dùng, phân
quyền sử dụng, thiết kế đối tợng table của cơ sở dữ liệu và xử lý dữ liệu.
MySQL có thể sử dụng trình quản lý dạng đồ hoạ hay dùng dòng lệnh.
1.3.1 Các kiểu dữ liệu trong cơ sở dữ liệu MySQL
Kiểu dữ liệu trong cơ sở dữ liệu MySQL chia thành 4 nhóm nh:
Numeric, date and time và string.
Kiểu dữ liệu Numeric.
Kiểu dữ liệu Numeric bao gồm có kiểu số nguyên và kiểu số thực. Kiểu
số nguyên đợc trình bày trong bảng 1-9:
Bảng 1-9 kiểu dữ liệu số nguyên
Loại Phạm vi Số byte Diễn giải
Tinyint
-127128
1 Kiểu số nguyên rất nhỏ.
Smallint
063535
2 Phép toán so sánh khác nhau.

Mediumint
016777215
3 Số nguyên vừa.
Int

-2
31
2
31
-1
4 Số nguyên.
Bigint
-2
63
2
63
-1
8 Số nguyên lớn

Bảng 1-10 kiểu dữ liệu số thực
Loại Phạm vi Số byte

Diễn giải
Float Phụ thuộc số thập
phân
4 Số thập phân dạng single
hay double.
Double 8 Số thập phân dạng double



22
Kiểu dữ liệu Date and Time.
Kiểu dữ liệu Date and time cho phép nhập dữ liệu dới dạng chuỗi ngày
tháng hay dạng số nh trong bảng 1-11.

Bảng 1-11 kiểu dữ liệu Date and Time
Loại Phạm vi Diễn giải
Date 1000-01-01 Date trình bày dới dạng yyyy-mm-dd

Time 00:00:00
23:59:59
Time trình bày dới dạng hh:mm:ss
DateTime

1000-01-01
00:00:00
9999-12-31
23:59:59
Date và Time trình bày dới dạng
yyyy-mm-dd hh:mm:ss
Year(2|4)

Year trình bày dới dạng 2 số hay 4 số


Kiểu dữ liệu String
Cho phép dữ liệu nhập vào là các kí tự. Kiểu dữ liệu string đợc trình bày
trong bảng 1-12.
Bảng 1-12 Kiểu dữ liệu String
Loại Phạm vi Diễn giải
Char 1-255 characters Chiều dài lớn nhất của chuỗi là 255 kí tự.
Varchar 1-255 Chiều dài lớn nhất của chuỗi là 255 kí tự.
Text 2
16
-1 Kiểu chuỗi văn bản cỡ 65535 kí tự







23
1.3.2 Các phép toán trong MySQL
Các phép toán so sánh
Bảng 1-13 Các phép toán so sánh
Phép toán Diễn giải
> Lớn hơn
< Nhỏ hơn
>= Lớn hơn hoặc bằng
<= Nhỏ hơn hoặc bằng
!= Khác
= Bằng

Các phép toán logic
Bảng 1-14 Các phép toán logic
Phép toán Diễn giải
Or Phép toán or.
And Phép toán and.
Not Phép phủ định.
Not in Phép toán phủ định tập hợp.
Like Phép so sánh gần giống sử dụng kí tự % để thay thế cho các
kí tự đại diện.
Not like Phép phủ định của phép so sánh gần giống.
In Phép toán so sánh trong tập hợp


1.3.3 Câu lệnh SQL trong thao tác dữ liệu
Câu lệnh SQL trong thao tác dữ liệu bao gồm các loại sau:
SELECT (truy vấn mẩu tin)
INSERT(Thêm mẩu tin)
UPDATE (cập nhật dữ liệu)
DELETE (xoá dữ liệu)

24
Câu lệnh SQL dạng Select
Câu lệnh select dùng để truy vấn dữ liệu từ một hay nhiều bảng khác
nhau, kết quả trả về là một tập mẩu tin thoả mãn các điều kiện cho trớc nếu
có, cú pháp SQL của câu lệnh select nh sau:
Select <danh sách các cột>
From <danh sách các bảng>
[ where <các điều kiện ràng buộc>]
[Group by <tên cột | biểu thức trong select>]
[Having <điều kiện ràng buộc của Group by]
[Order by <danh sách các cột>]
[Limit <from number, to number>]
Ví dụ: Select mach, noidung
From cauhoi
Where mach=23
Kết quả trả về những mẩu tin có mach là 23.
Câu lệnh SQL dạng Insert
Câu lệnh Insert dùng để chèn một hoặc một số mẩu tin vào trong bảng cơ
sở dữ liệu.
Khi thêm dữ liệu, cần chú ý kiểu dữ liệu phải giống hoặc tơng ứng với
kiểu dữ liệu đã khai báo của cột đó, nếu không phù hợp sẽ phát sinh lỗi. Ngoài
ra ta còn phải quan tâm đến quyền của User đang truy cập cơ sở dữ liệu. User
này phải đợc cấp quyền Insert vào từng bảng cụ thể thì mới có thể chèn dữ

liệu vào bảng đợc. Cú pháp sql của lệnh insert nh sau:
* Chèn vào bảng các giá trị cụ thể
Insert into <tên bảng> [<danh sách các cột>]
Values <danh sách các giá trị>



25
* Chèn vào bảng các giá trị từ bảng khác
Insert into <tên bảng cần chèn> [<danh sách các cột cần chèn>]
Select <danh sách các cột>
From <tên bảng lấy dữ liệu>
Where <biểu thức logic>
Câu lệnh SQL dạng Update
Câu lệnh Update dùng để cập nhật lại dữ liệu đã tồn tại trong bảng. Khi
update dùng để cập nhật dữ liệu cho một mẩu tin chỉ định nào đó thờng lệnh
này sử dụng chung với mệnh đề where. Nếu cập nhật dữ liệu cho tất cả các
mẩu tin trong bảng ta có thể bỏ qua mệnh đề where. Câu lệnh này có cú pháp
nh sau:
* Nếu cập nhật giá trị cụ thể
Update <tên bảng>
Set <tên cột>= <giá trị>,[<tên cột>= <giá trị>]
[Where <biểu thức logic>]
* Nếu cập nhật giá trị từ kết quả trả về từ câu lệnh select tên một hay
nhiều bảng.
Cú pháp :
Update <tên bảng>
Set <tên cột>=<select from <tên bảng> where.>
[where <biểu thức logic>]
Câu lệnh SQl dạng delete

Với câu lệnh SQL dạng delete thì đơn giản hơn. Khi thực hiện lệnh xoá
mẩu tin ta chỉ cần quan tâm đến tên bảng và mệnh đề where để xoá những
mẩu tin đã chọn lọc nếu có. Cú pháp của lệnh delete nh sau:
Delete from <tên bảng>
Where <biểu thức logic>


26
1.4. Cabri java [7]
1.4.1 Khai báo thẻ Applet
Ta khai báo thẻ Applet nh sau
<APPLET CODE="CabriJava.class" WIDTH=m HEIGHT=n
ALIGN=bottom archive="CabriJava.jar">
</Applet>
Trong đó
Code:Chỉ đờng dẫn đến file mã nguồn đợc viết bằng Java
Width:chiều rộng của vùng ảnh.
Hight:Chiều cao của vùng ảnh.
Align: Căn lề vùng ảnh.
Archive: Đờng dẫn đến file Cabrijava.jar(file này bắt buộc phải có)
1.4.2. Chèn một file hình ảnh đợc tạo bằng Cabri
Để chèn một hình đợc tạo bằng phần mềm Cabri vào trong trang Web
ta chèn thẻ sau vào giữa hai thẻ <Applet> :
<PARAM NAME=file or zipfile VALUE=Đờng dẫn đến file *.fig hoặc
*.zip>
Ví dụ:
<PARAM NAME=file VALUE="figures/CnkH04CJ.fig">
<PARAM NAME=zipfile VALUE="figures/CnkH04CJ.zip">
1.4.3 Bật tắt thanh điều khiển hình ảnh.
<PARAM NAME=Autocontrol VALUE=true or false>

Nếu giá trị Value là True thì thanh điều khiển hình ảnh sẽ đợc hiện
nên và ngợc lại.
Nếu ta không khai báo thẻ này thì giá trị ngầm định của nó là False tức
là không hiển thị thanh điều khiển hình ảnh.
Các thành phần của thanh điều khiển hình ảnh



27











Trong đó
Step by step animation: Bắt đầu xem lại quá trình dựng hình.
Forward step: Xem bớc tiếp theo của thao tác dựng hình.
Backward step: Xem lại bớc trớc của thao tác dựng hình.
Choice of construction step: Thanh di điều khiển việc xem lại từng bớc dựng
hình.
Figure drag: Bật tắt chức năng kéo thả hình ảnh.
Animation springs: Chọn điểm di chuyển.
Choice trace: Chọn điểm để lại vết khi chuyển động.
Download of Cabri figure: Download file Cabri xuống máy tính cá nhân.

1.4.4 Xem lại quá trình dựng hình
Chức năng này nh chức năng lấy lại hoạ tiết trong Cabri. Nó cho phép
ta xem lại đợc toàn bộ quá trình tạo ra hình ảnh đó. Ta khai báo thẻ đó nh
sau:
<PARAM NAME=loop VALUE=true>


Hình 1-14

28
1.4.5 Tạo chuyển động của một số điểm hoặc một đoạn thẳng
Để tạo sự chuyển động của một số điểm hoặc của một đoạn thẳng ta sử
dụng thẻ sau:
<PARAM NAME=spring VALUE=một xâu kí tự chỉ điểm hoặc đoạn
thẳng muốn cho chuyển động>
Nếu muốn chuyển động một điểm ta có thể khai báo nh sau:
<PARAM NAME=spring VALUE=point 6 size 49,-7>




Trong đó điểm cần di chuyển là điểm thứ 6 trong thao tác dựng hình với
Cabri.
Size là độ rộng vùng chuyển động.
Tham số thứ 3 là tham số về độ lệch của vùng chuyển động. Nếu độ lệch
bằng 0 tức là điểm đó chỉ chuyển động theo đờng thẳng. Nếu độ lệch bằng
một số dơng tức là điểm đó có thể chuyển động nên trên. Nếu độ lệch bằng
một số âm tức là điểm đó có thể chuyển động xuống dới.
Nếu muốn chuyển động một đoạn thẳng ta khai báo nh sau:
<PARAM NAME=spring VALUE=Segment 15 post 82>

1.4.6 Để lại vết đánh dấu khi chuyển động
Chức năng này rất thuận tiện cho việc đánh dấu quỹ tích của một điểm
ta có thể khai báo nh sau:
<PARAM NAME=spring VALUE=Điểm cần để lại vết khi chuyển
động>

Ví dụ
<PARAM NAME=spring VALUE=point 10>
Hình 1
-
15

Hình 1
-
16

×