Thứ Ba, 18 tháng 11, 2014

Kết hợp PHP và MYSQL


Kết hợp PHP và MYSQL




Một website đơn giản hay cũng như phức tạp, đều  không thể thiếu đi các ngôn ngữ lập trình.HTML, CSS, và quan trọng hơn hết là PHP và Mysql. Nếu PHP mà không MYSQL thì website của chúng ta chỉ là một web tĩnh, không có tương tác giữa người dùng và website, MYSQL giúp lưu trữ dữ liệu của website, các thao tác của người dùng với website.

Sự kết hợp giữa PHP và MYSQL giúp chúng ta có được một ứng dụng web hoàn hảo, đáp ứng được các nhu cầu của người dùng như mua hàng, đọc báo, xem tin tức, xem phim, nghe nhạc ... Ở bài này chúng ta sẽ cũng tìm hiểu xem cách kết nối từ PHP đến MYSQL như thế nào nhé

1. Kết nối cơ sở dữ liệu MYSQL

Trước tiên để thao tác được với MYSQL trong PHP thì chúng ta phải kết nối đến cở sở dữ liệu từ đó mới có thể thao tác các truy vấn

a. Cú pháp kết nối mysql

$db = mysql_connect("tên host","tài khoải host","mật khẩu host") or die("Khong the ket noi database");

+ Tên host của máy chủ mysql, thường là localhost
+ Tài khoản host và mật khẩu để bảo vệ database không bị người khác can thiệp

1.     <?php
2.     $db = mysql_connect("localhost","root","") or
3.     die("Khong the ket noi csdl!");
4.     ?>

b. Lựa chọn cơ sở dữ liệu

Trong mysql có thể có rất nhiều database chúng ta phải tiến hành chọn database cho ứng dụng của mình

mysql_select_db("tên database","host mà chúng ta vừa kết nối") or die("Khong the select database");

1.     <?php
2.     $db = mysql_connect("localhost","root","") or
3.     die("Khong the ket noi csdl!");
4.     mysql_select_db("students",$db) or die("Khong the select database!");
5.     ?>
+ Select database students, nếu không select được database sẽ thông báo không thể lựa chọn cơ sở dữ liệu

c. Thực hiện câu truy vấn

Nếu các bạn chưa hiểu về câu truy vấn mysql thì có thể xem tại đây

Ví dụ truy vấn select lấy ra tất cả các sinh viên trong bảng tbl_students

$sql = " select * from tbl_students ";

+ Thực hiện câu truy vân bằng cú pháp : mysql_query(câu lệnh sql);

1.     <?php
2.     $db = mysql_connect("localhost","root","") or
3.     die("Khong the ket noi csdl!");
4.     mysql_select_db("students",$db) or die("Khong the select database!");
5.     $sql = "select * from tbl_students";
6.     mysql_query($sql);
7.     ?>

- Tương tự với các câu truy vấn khác chúng ta làm tương tự, ví dụ câu sql xóa sinh viên có id = 1         

1.     <?php
2.     $sql = "delete from tbl_students where student_id = 1";
3.     mysql_query($sql);
4.     ?>
d. Xuất dữ liệu lấy được từ database

Khi chúng ta truy vấn lấy dữ liệu từ database lên, mặc định toàn bộ dữ liệu sẽ được lưu vào mảng, tùy vào câu truy vấn của bạn mà dữ liệu sẽ được lưu vào 2 loại mảng khác nhau

- Mảng chỉ chứa 1 phần tử : Là khi bạn select chỉ 1 dòng dữ (record) liệu từ database

Ví dụ : $sql = "select * from tbl_students where student_id = 1";

Ở câu truy vấn này chỉ lấy ra duy nhất 1 sinh viên có id = 1

- Mảng chứa nhiều phần từ : Là khi bạn truy vấn nhiều dòng dữ liệu từ database

Ví dụ : $sql = "select * from tbl_students";

Lấy ra tất cả các sinh viên trong bảng tbl_students, lúc này thì kết quả trả về là tất cả các sinh viên có trong bảng tbl_students có nghĩa là mảng ở đây sẽ có nhiều phần tử. Để duyệt mảng chúng ta cần dử dụng vòng lặp while

- Để lấy dữ liệu tử bảng đưa vào mảng chúng ta sử dụng hàm : mysql_fetch_assoc();

* Ví dụ lấy 1 sinh viên trong bảng tbl_students
1.     <?php
2.     $sql = "select * from tbl_students where student_id = 1";
3.     $result = mysql_query($sql);
4.     $data = mysql_fetch_assoc($result);
5.     echo "Tên của bạn : ".$data['student_fullname']."<br />";
6.     echo "Emai của bạn : ".$data['student_email'];
7.     ?>

* Ví dụ khi lấy sinh viên trong bảng tbl_students
         
1.     <?php
2.     $sql = "select * from tbl_students";
3.     $result = mysql_query($sql);
4.     while($data = mysql_fetch_assoc($result)){
5.     echo "Tên sinh viên : ".$data['student_fullname'];            
6.     }
7.     ?>
-Tuỳ vào câu truy vấn mà chúng ta sẽ lấy ra kết quả băng các cách khác nhau, khi truy vấn 1 record từ database thì kết quả trả về chỉ bao gồm 1 phần từ, còn khi truy vấn lấy nhiều record chúng ta phải sử dụng vòng lặp các bạn nhé.

- Nhớ là khi thao tác với mysql thì chúng ta phải kết nối database đã nhé, và đây là toàn bộ code thao tác với mysql cơ bản bao gồm kết nối với database, lựa chọ cơ sở dữ liệu, truy vấn database và đồ dữ liệu ra

1.     <?php

2.     $db = mysql_connect("localhost","root","") or
3.     die("Khong the ket noi csdl!");
4.     mysql_select_db("students",$db) or die("Khong the select database!");
5.     $sql = "select * from tbl_students where student_id = 1";
6.     $result = mysql_query($sql);
7.     $data = mysql_fetch_assoc($result);
8.     echo "Tên của bạn : ".$data['student_fullname']."<br />";
9.     echo "Emai của bạn : ".$data['student_email'];

10. ?>




Không có nhận xét nào:

Đăng nhận xét