Hướng dẫn how can we store database in php? - làm thế nào chúng ta có thể lưu trữ cơ sở dữ liệu trong php?


Chèn dữ liệu vào MySQL bằng MySQLI và PDO

Sau khi một cơ sở dữ liệu và một bảng đã được tạo, chúng ta có thể bắt đầu thêm dữ liệu vào chúng.

Dưới đây là một số quy tắc cú pháp để tuân theo:

  • Truy vấn SQL phải được trích dẫn trong PHP
  • Các giá trị chuỗi bên trong truy vấn SQL phải được trích dẫn
  • Giá trị số không được trích dẫn
  • Từ null không được trích dẫn

Câu lệnh INSERT được sử dụng để thêm các bản ghi mới vào bảng MySQL:

Chèn vào các giá trị Table_Name (cột1, cột2, cột3, ...) (value1, value2, value3, ...)
VALUES (value1, value2, value3,...)

Để tìm hiểu thêm về SQL, vui lòng truy cập hướng dẫn SQL của chúng tôi.

Trong chương trước, chúng tôi đã tạo một bảng trống có tên "MyGuests" với năm cột: "ID", "FirstName", "LastName", "Email" và "Reg_date". Bây giờ, chúng ta hãy điền vào bảng với dữ liệu.

Lưu ý: Nếu một cột là Auto_increment (như cột "id") hoặc dấu thời gian với bản cập nhật mặc định của current_timesamp (như cột "reg_date"), nó không cần phải được chỉ định trong truy vấn SQL; MySQL sẽ tự động thêm giá trị. If a column is AUTO_INCREMENT (like the "id" column) or TIMESTAMP with default update of current_timesamp (like the "reg_date" column), it is no need to be specified in the SQL query; MySQL will automatically add the value.

Các ví dụ sau đây thêm một bản ghi mới vào bảng "MyGuests":

Ví dụ (hướng đối tượng mysqli) theo định hướng đối tượng)

$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";

// Tạo kết nối $ Conn = new mysqli ($ servername, $ username, $ password, $ dbname); // kiểm tra kết nối if ($ Conn-> Connect_error) & nbsp; {& nbsp; & nbsp; die ("Kết nối không thành công:".
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
  die("Connection failed: " . $conn->connect_error);
}

$ sql = "chèn vào myguests (firstName, lastName, email) giá trị ('john', 'doe', '' ')";
VALUES ('John', 'Doe', '')";

if ($ Conn-> truy vấn ($ sql) === true) {& nbsp; echo "bản ghi mới được tạo thành công";} other {& nbsp; Echo "Lỗi:". $ SQL. "". $ Conn-> lỗi;}
  echo "New record created successfully";
} else {
  echo "Error: " . $sql . "
" . $conn->error;
}

$ Conn-> đóng (); ?>
?>




Ví dụ (thủ tục MySQLI)

$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";

// Tạo kết nối $ Conn = new mysqli ($ servername, $ username, $ password, $ dbname); // kiểm tra kết nối if ($ Conn-> Connect_error) & nbsp; {& nbsp; & nbsp; die ("Kết nối không thành công:".
$conn = mysqli_connect($servername, $username, $password, $dbname);
// Check connection
if (!$conn) {
  die("Connection failed: " . mysqli_connect_error());
}

$ sql = "chèn vào myguests (firstName, lastName, email) giá trị ('john', 'doe', '' ')";
VALUES ('John', 'Doe', '')";

if ($ Conn-> truy vấn ($ sql) === true) {& nbsp; echo "bản ghi mới được tạo thành công";} other {& nbsp; Echo "Lỗi:". $ SQL. "". $ Conn-> lỗi;}
  echo "New record created successfully";
} else {
  echo "Error: " . $sql . "
" . mysqli_error($conn);
}

$ Conn-> đóng (); ?>
?>


Ví dụ (thủ tục MySQLI)

$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDBPDO";

// Tạo kết nối $ Conn = new mysqli ($ servername, $ username, $ password, $ dbname); // kiểm tra kết nối if ($ Conn-> Connect_error) & nbsp; {& nbsp; & nbsp; die ("Kết nối không thành công:".
  $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
  // set the PDO error mode to exception
  $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
  $sql = "INSERT INTO MyGuests (firstname, lastname, email)
  VALUES ('John', 'Doe', '')";
  // use exec() because no results are returned
  $conn->exec($sql);
  echo "New record created successfully";
} catch(PDOException $e) {
  echo $sql . "
" . $e->getMessage();
}

$ sql = "chèn vào myguests (firstName, lastName, email) giá trị ('john', 'doe', '' ')";
?>




Tải lên tệp phía máy chủ có thể dễ dàng thực hiện bằng PHP. Có nhiều cách khác nhau để tải hình ảnh lên máy chủ và hiển thị hình ảnh trên trang web. Nói chung, trong một ứng dụng web động, hình ảnh được tải lên được lưu trữ trong thư mục của máy chủ và tên tệp được chèn vào cơ sở dữ liệu. Sau đó, các hình ảnh được lấy từ máy chủ dựa trên tên tệp được lưu trong cơ sở dữ liệu và hiển thị trên trang web.

Hình ảnh có thể được tải trực tiếp lên cơ sở dữ liệu mà không cần lưu trữ trên máy chủ. Nhưng nó sẽ tăng kích thước cơ sở dữ liệu và thời gian tải trang web. Vì vậy, nó luôn luôn là một ý tưởng tốt để tải hình ảnh lên máy chủ và lưu trữ tên tệp trong cơ sở dữ liệu. Trong hướng dẫn này, chúng tôi sẽ cho bạn thấy toàn bộ quá trình để tải lên và lưu trữ tệp hình ảnh trong cơ sở dữ liệu MySQL bằng PHP.upload and store the image file in MySQL database using PHP.

Mã ví dụ cho thấy quá trình triển khai chức năng tải lên tệp trong ứng dụng web và chức năng sau sẽ được thực hiện.

  • Hình thức HTML để tải lên hình ảnh.
  • Tải hình ảnh lên máy chủ bằng PHP.
  • Lưu trữ tên tệp trong cơ sở dữ liệu bằng PHP và MySQL.
  • Lấy hình ảnh từ cơ sở dữ liệu và hiển thị trong trang web.

Tạo bảng Datbase

Để lưu trữ tên tệp hình ảnh, một bảng cần được tạo trong cơ sở dữ liệu. SQL sau đây tạo bảng images với một số trường cơ bản trong cơ sở dữ liệu MySQL.

CREATE TABLE `images` (
 `id` int(11) NOT NULL AUTO_INCREMENT,
 `file_name` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
 `uploaded_on` datetime NOT NULL,
 `status` enum('1','0') COLLATE utf8_unicode_ci NOT NULL DEFAULT '1',
 PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

Cấu hình cơ sở dữ liệu (dbconfig.php)

Tệp dbConfig.php được sử dụng để kết nối và chọn cơ sở dữ liệu MySQL. Chỉ định tên máy chủ cơ sở dữ liệu ($dbHost), tên người dùng ($dbUsername), mật khẩu ($dbPassword) và tên (

// Database configuration
$dbHost     "localhost";
$dbUsername "root";
$dbPassword "root";
$dbName     "codexworld";// Create database connection
$db = new mysqli($dbHost$dbUsername$dbPassword$dbName);// Check connection
if ($db->connect_error) {
    die(
"Connection failed: " $db->connect_error);
}
?>
0) theo thông tin đăng nhập MySQL của bạn.

// Database configuration
$dbHost     "localhost";
$dbUsername "root";
$dbPassword "root";
$dbName     "codexworld";// Create database connection
$db = new mysqli($dbHost$dbUsername$dbPassword$dbName);// Check connection
if ($db->connect_error) {
    die(
"Connection failed: " $db->connect_error);
}
?>

Tải lên mẫu HTML

Tạo biểu mẫu HTML để cho phép người dùng chọn tệp họ muốn tải lên. Đảm bảo thẻ chứa các thuộc tính sau.form> tag contains the following attributes.

  • method="post"
  • enctype="multipart/form-data"

Ngoài ra, hãy chắc chắn rằng thẻ chứa thuộc tính

// Database configuration
$dbHost     "localhost";
$dbUsername "root";
$dbPassword "root";
$dbName     "codexworld";// Create database connection
$db = new mysqli($dbHost$dbUsername$dbPassword$dbName);// Check connection
if ($db->connect_error) {
    die(
"Connection failed: " $db->connect_error);
}
?>
1.input> tag contains
// Database configuration
$dbHost     "localhost";
$dbUsername "root";
$dbPassword "root";
$dbName     "codexworld";// Create database connection
$db = new mysqli($dbHost$dbUsername$dbPassword$dbName);// Check connection
if ($db->connect_error) {
    die(
"Connection failed: " $db->connect_error);
}
?>
1 attribute.

<form action="upload.php" method="post" enctype="multipart/form-data">
    Select Image File to Upload:
    <input type="file" name="file">
    <input type="submit" name="submit" value="Upload">
form>

Hướng dẫn how can we store database in php? - làm thế nào chúng ta có thể lưu trữ cơ sở dữ liệu trong php?

Biểu mẫu tải lên tệp sẽ được gửi đến tệp

// Database configuration
$dbHost     "localhost";
$dbUsername "root";
$dbPassword "root";
$dbName     "codexworld";// Create database connection
$db = new mysqli($dbHost$dbUsername$dbPassword$dbName);// Check connection
if ($db->connect_error) {
    die(
"Connection failed: " $db->connect_error);
}
?>
2 để tải hình ảnh lên máy chủ.

Tải tệp lên máy chủ và lưu trữ trong cơ sở dữ liệu (upload.php)

Tệp

// Database configuration
$dbHost     "localhost";
$dbUsername "root";
$dbPassword "root";
$dbName     "codexworld";// Create database connection
$db = new mysqli($dbHost$dbUsername$dbPassword$dbName);// Check connection
if ($db->connect_error) {
    die(
"Connection failed: " $db->connect_error);
}
?>
2 xử lý chức năng tải lên hình ảnh và hiển thị thông báo trạng thái cho người dùng.

  • Bao gồm tệp cấu hình cơ sở dữ liệu để kết nối và chọn cơ sở dữ liệu MySQL.
  • Nhận tiện ích mở rộng tệp bằng hàm pathinfo () trong PHP và xác thực định dạng tệp để kiểm tra xem người dùng có chọn tệp hình ảnh hay không.pathinfo() function in PHP and validate the file format to check whether the user selects an image file.
  • Tải lên hình ảnh lên máy chủ bằng hàm move_uploaded_file () trong PHP.move_uploaded_file() function in PHP.
  • Chèn tên tệp hình ảnh trong cơ sở dữ liệu MySQL bằng PHP.
  • Trạng thái tải lên sẽ được hiển thị cho người dùng.
// Include the database configuration file
include 'dbConfig.php';
$statusMsg '';// File upload path
$targetDir "uploads/";
$fileName basename($_FILES["file"]["name"]);
$targetFilePath $targetDir $fileName;
$fileType pathinfo($targetFilePath,PATHINFO_EXTENSION);

if(isset(

$_POST["submit"]) && !empty($_FILES["file"]["name"])){
    
// Allow certain file formats
    
$allowTypes = array('jpg','png','jpeg','gif','pdf');
    if(
in_array($fileType$allowTypes)){
        
// Upload file to server
        
if(move_uploaded_file($_FILES["file"]["tmp_name"], $targetFilePath)){
            
// Insert image file name into database
            
$insert $db->query("INSERT into images (file_name, uploaded_on) VALUES ('".$fileName."', NOW())");
            if(
$insert){
                
$statusMsg "The file ".$fileName" has been uploaded successfully.";
            }else{
                
$statusMsg "File upload failed, please try again.";
            } 
        }else{
            
$statusMsg "Sorry, there was an error uploading your file.";
        }
    }else{
        
$statusMsg 'Sorry, only JPG, JPEG, PNG, GIF, & PDF files are allowed to upload.';
    }
}else{
    
$statusMsg 'Please select a file to upload.';
}
// Display status message
echo $statusMsg;
?>

Hiển thị hình ảnh từ cơ sở dữ liệu

Bây giờ chúng tôi sẽ truy xuất các hình ảnh đã tải lên từ máy chủ dựa trên tên tệp trong cơ sở dữ liệu và hiển thị hình ảnh trong trang web.

  • Bao gồm tệp cấu hình cơ sở dữ liệu.
  • Tìm nạp hình ảnh từ cơ sở dữ liệu MySQL bằng PHP.
  • Liệt kê hình ảnh từ thư mục tải lên của máy chủ.uploads directory of the server.
// Include the database configuration file
include 'dbConfig.php';// Get images from the database
$query $db->query("SELECT * FROM images ORDER BY uploaded_on DESC");

if(

$query->num_rows 0){
    while(
$row $query->fetch_assoc()){
        
$imageURL 'uploads/'.$row["file_name"];
?> <img src="echo $imageURL?>" alt="" /> }
}else{ 
?> <p>No image(s) found...p
> ?>

Hướng dẫn how can we store database in php? - làm thế nào chúng ta có thể lưu trữ cơ sở dữ liệu trong php?

Tạo bộ sưu tập hình ảnh động với JQuery, PHP & MySQL

Sự kết luận

Ở đây chúng tôi đã chỉ ra cách hiệu quả nhất để thực hiện chức năng tải lên hình ảnh trên trang web. Bạn có thể dễ dàng mở rộng chức năng tải lên tệp theo yêu cầu của bạn. Để cung cấp giao diện người dùng tốt hơn, bạn có thể tích hợp chức năng tải lên tệp AJAX.

Tải lên nhiều hình ảnh bằng JQuery, Ajax và PHP

Bạn có muốn nhận trợ giúp thực hiện hoặc sửa đổi hoặc tăng cường chức năng của tập lệnh này không? Gửi yêu cầu dịch vụ trả phí

Nếu bạn có bất kỳ câu hỏi nào về kịch bản này, hãy gửi nó cho cộng đồng QA của chúng tôi - đặt câu hỏi

Làm thế nào để bạn lưu trữ một cơ sở dữ liệu?

Các bảng và chỉ mục cơ sở dữ liệu có thể được lưu trữ trên đĩa dưới một trong một số hình thức, bao gồm các tệp phẳng được đặt hàng/không theo thứ tự, ISAM, tệp heap, xô băm hoặc cây B+.Mỗi hình thức có những ưu điểm và nhược điểm riêng của nó.Các hình thức được sử dụng phổ biến nhất là cây B và ISAM.. Each form has its own particular advantages and disadvantages. The most commonly used forms are B-trees and ISAM.

Chúng ta có thể sử dụng PHP cho cơ sở dữ liệu không?

Với PHP, bạn có thể kết nối và thao tác cơ sở dữ liệu.MySQL là hệ thống cơ sở dữ liệu phổ biến nhất được sử dụng với PHP.. MySQL is the most popular database system used with PHP.

Làm thế nào tôi có thể sử dụng cơ sở dữ liệu trong PHP?

Tạo nên cơ sở dữ liệu..
Tạo một thư mục trong htdocs ..
Tạo tệp kết nối cơ sở dữ liệu trong PHP ..
Tạo tệp PHP mới để kiểm tra kết nối cơ sở dữ liệu của bạn ..
Chạy nó ..

Làm thế nào chúng ta có thể lưu trữ dữ liệu trong PHP mà không cần cơ sở dữ liệu?

Nếu bạn không thể chạy dịch vụ cơ sở dữ liệu, bạn có thể sử dụng SQLite hoặc lưu trữ dữ liệu trong các tệp JSON hoặc XML.Tôi cũng đã cố gắng lưu trữ các khóa API trong tệp riêng biệt.với một phần mở rộng tập tin.use SQLite or store the data in JSON or XML files. I also tried to store api keys in separate file. with a file extension .