MySQL view

Định nghĩa và cách dùng

  • Khi đã có dữ liệu thì việc kế tiếp phải xem coi dữ liệu đó hiển thị như thế nào, hoặc dữ liệu hiển thị cho người dùng thấy.
  • Các bước thực hiện:

    • Kết nối database và table.
    • Xử lý dữ liệu.
    • Đóng database.

Cấu trúc view:

Chỉ cần một câu truy vấn SELECT, sau đó dùng vòng lặp while truy xuất các phần tử trong table.

<?php
SELECT tên_cột FROM tên_table
?>
  • tên_cột: là tên các cột, tên cột cách nhau bởi dấu phẩy, có thể sử dụng ký tự * để đại diện cho tất cả các cột.
  • tên_table: là tên bảng được chọn xem dữ liệu.

Xuất dữ liệu ra trình duyệt

Kiểu hướng đối tượng

<?php
$username = "user_tintuc"; // Khai báo username
$password = "123456";      // Khai báo password
$server   = "localhost";   // Khai báo server
$dbname   = "tintuc";      // Khai báo database

// Kết nối database tintuc
$connect = new mysqli($server, $username, $password, $dbname);

//Nếu kết nối bị lỗi thì xuất báo lỗi và thoát.
if ($connect->connect_error) {
    die("Không kết nối :" . $conn->connect_error);
    exit();
}

//Code xử lý, insert dữ liệu vào table
$sql     = "SELECT * FROM tin_xahoi";
$ket_qua = $connect->query($sql);

//Nếu kết quả kết nối không được thì xuất báo lỗi và thoát
if (!$ket_qua) {
    die("Không thể thực hiện câu lệnh SQL: " . $connect->connect_error);
    exit();
}

//Dùng vòng lặp while truy xuất các phần tử trong table
while ($row = $ket_qua->fetch_array(MYSQLI_ASSOC)) {
    echo "<p>ID: " . $row['id'] . "</p>";
    echo "<p>Tiêu đề: " . $row['title'] . "</p>";
    echo "<p>Ngày: " . $row['date'] . "</p>";
    echo "<p>Mô tả: " . $row['description'] . "</p>";
    echo "<p>Nội dung: " . $row['content'] . "</p>";
    echo "<hr>";
}

//Đóng kết nối database tintuc
$connect->close();
?>

ID: 1

Tiêu đề: Học không bao giờ là trễ

Ngày: 2016-10-24

Mô tả: Bài viết sau đây sẽ cho bạn biết rõ lý do tại sao học không bao giờ là trễ.

Nội dung: Đây là nội dung của bài viết "Học không bao giờ là trễ"


ID: 2

Tiêu đề: Tin hot

Ngày: 2016-10-24

Mô tả: Đây là mô tả cho tin hot

Nội dung: Đây là nội dung của tin hot


Câu truy vấn SELECT * FROM tin_xahoi, với dấu * đại diện cho tất cả cột có trong table, nếu cần lấy vài giá trị thì ta gọi ứng với từng giá trị đó, mỗi giá trị cách nhau bởi dấu phẩy, vd: SELECT title, content FROM tin_xahoi

Kiểu thủ tục

<?php
$username = "user_tintuc"; // Khai báo username
$password = "123456";      // Khai báo password
$server   = "localhost";   // Khai báo server
$dbname   = "tintuc";      // Khai báo database

// Kết nối database tintuc
$connect = mysqli_connect($server, $username, $password, $dbname);

//Nếu kết nối bị lỗi thì xuất báo lỗi và thoát.
if (!$connect) {
    die("Không kết nối :" . mysqli_connect_error());
    exit();
}

//Code xử lý, truy vấn xem dữ liệu
$sql = "SELECT * FROM tin_xahoi";
$ket_qua = mysqli_query($connect,$sql);

if (!$ket_qua) {
    die("Không thể thực hiện câu lệnh SQL: " . mysqli_error($connect));
    exit();
}

//Dùng vòng lặp while truy xuất các phần tử trong table
while ($row = mysqli_fetch_array($ket_qua)) {
    echo "<p>ID: " . $row['id'] . "</p>";
    echo "<p>Tiêu đề: " . $row['title'] . "</p>";
    echo "<p>Ngày: " . $row['date'] . "</p>";
    echo "<p>Mô tả: " . $row['description'] . "</p>";
    echo "<p>Nội dung: " . $row['content'] . "</p>";
    echo "<hr>";
}

//Đóng database
mysqli_close($connect);
?>

ID: 1

Tiêu đề: Học không bao giờ là trễ

Ngày: 2016-10-24

Mô tả: Bài viết sau đây sẽ cho bạn biết rõ lý do tại sao học không bao giờ là trễ.

Nội dung: Đây là nội dung của bài viết "Học không bao giờ là trễ"


ID: 2

Tiêu đề: Tin hot

Ngày: 2016-10-24

Mô tả: Đây là mô tả cho tin hot

Nội dung: Đây là nội dung của tin hot


Download file ví dụ

Trong file download đã có sẵn file tintuc.sql, file này là file dữ liệu mẫu, sau khi đã tạo database chúng ta có thể đưa dữ liệu từ file tintuc.sql bằng thao tác import có trong phpMyAdmin.

THÔNG BÁO LỖI