Cách lưu trữ các thẻ HTML trong cơ sở dữ liệu

Việc lưu trữ HTML trong cơ sở dữ liệu với tất cả các thẻ HTML rất đơn giản; . e. không được hiểu là thẻ định dạng), bạn sẽ gặp một số rắc rối với trình duyệt. Bài viết này thảo luận về một số tùy chọn trong việc giải quyết các vấn đề này

Mã ví dụ cần được hiển thị trên một trang web vì nó là. Ví dụ: nếu tôi muốn biểu tượng nhỏ hơn được hiển thị như trong đoạn mã sau

sử dụng thẻ b để in đậm câu lệnh

Sau đây thực sự nên được in đậm.  

sử dụng thẻ b để in đậm câu lệnh

Nếu bạn nhìn vào nguồn, bạn sẽ nhận thấy rằng tôi đang sử dụng < để đại diện cho < trong trường hợp đầu tiên. Trong trường hợp thứ hai, tôi thực sự đã sử dụng ký hiệu less than. Một điều thú vị cần lưu ý là bạn không phải thay thế ký hiệu lớn hơn bằng >. Chỉ cần thay đổi ít hơn biểu tượng, bạn sẽ ổn thôi. Tương tự, đối với dòng mã sau xuất hiện với các ký hiệu nhỏ hơn và lớn hơn một cách khéo léo, tất cả những gì bạn cần làm là thay thế ký hiệu nhỏ hơn bằng <

HtmlEncode và HtmlDecode

If you pass a string through HtmlEncode, it will change all these special HTML symbols into their codes (i.e. < will become <). You can store that in the database and when you obtain the string back to display in a browser, it will render that string with < and > as symbols, not as formatting tags.

Nếu bạn biết bạn đang cho phép người dùng chỉ nhập văn bản (và không có định dạng), thì phương pháp trên hoạt động hoàn hảo. Có nghĩa là, chạy chuỗi người dùng đã nhập thông qua HtmlEncode và lưu trữ nó trong cơ sở dữ liệu và khi bạn truy xuất nó, hãy chuyển chuỗi mà không cần sửa đổi cho trình duyệt (i. e. không chạy HtmlDecode). Bằng cách này, ít hơn và lớn hơn sẽ không gây ra bất kỳ sự cố nào trong trình duyệt

Nếu người dùng của bạn đã nhập văn bản được định dạng (i. e. nó có các thẻ HTML được hiểu là các thẻ định dạng) và nó có khả năng chứa < (ví dụ: trong mã), bạn chỉ cần thay thế các ký hiệu đó. Nếu bạn đang sử dụng một hộp văn bản đơn giản, có một cách là yêu cầu người dùng nhập < cho < theo cách thủ công và sử dụng các thẻ HTML khi cần định dạng

Các bài viết khác có thẻ tương tự

Cách lưu trữ các thẻ HTML trong cơ sở dữ liệu

Bài viết này nói về các khía cạnh khác nhau của việc tạo cơ sở dữ liệu SQLite. Nó cũng sử dụng vỏ SQLite của Android làm ví dụ

Cách lưu trữ các thẻ HTML trong cơ sở dữ liệu

Bài viết này nói về các gói SQLite có sẵn trong Android SDK

Cách lưu trữ các thẻ HTML trong cơ sở dữ liệu

Bạn đã định nghĩa một thủ tục lưu trữ có tham số. Bạn đã tạo một SqlDataSource sử dụng các tham số này. Bây giờ làm cách nào để bạn thay đổi các tham số này trong thời gian chạy từ C# (hoặc VB. mạng) mã?

Cách lưu trữ các thẻ HTML trong cơ sở dữ liệu

Đoạn mã nhanh này cho biết cách lấy dữ liệu bằng SqlDataSource và đính kèm nó vào Bộ lặp để hiển thị dữ liệu đó

Làm cách nào để lưu các thẻ html trong cơ sở dữ liệu máy chủ sql?


Bạn có thể sử dụng các phương thức HtmlEncode() và HtmlDecode() để chuyển đổi dữ liệu trước khi lưu và truy xuất dữ liệu

Thêm giải pháp của bạn ở đây

 B   I   U   S  small BIG code var  <   >   &  link [^] encode untab case indent outdent

Xem trước 0

thành viên hiện có

hoặc tham gia với chúng tôi

Tải xuống, Bình chọn, Nhận xét, Xuất bản

Email của bạn

Email này đang được sử dụng. Bạn có cần mật khẩu của bạn?

Mật khẩu tùy chọn

Khi trả lời một câu hỏi xin vui lòng

  1. Đọc kỹ câu hỏi
  2. Hiểu rằng tiếng Anh không phải là ngôn ngữ đầu tiên của mọi người, vì vậy hãy khoan dung với lỗi chính tả và ngữ pháp
  3. Nếu một câu hỏi được diễn đạt kém thì hãy yêu cầu làm rõ, bỏ qua nó hoặc chỉnh sửa câu hỏi và khắc phục sự cố. Xúc phạm không được chào đón
  4. Đừng bảo ai đó đọc hướng dẫn. Rất có thể họ có và không nhận được. Đưa ra câu trả lời hoặc chuyển sang câu hỏi tiếp theo
Hãy làm việc để giúp các nhà phát triển, không làm họ cảm thấy ngu ngốc


Nội dung này, cùng với bất kỳ tệp và mã nguồn liên quan nào, được cấp phép theo Giấy phép Mở Dự án Code (CPOL)

Chào mừng bạn đến với hướng dẫn nhanh về cách lưu trữ và truy xuất mã HTML bằng PHP và MySQL. Bạn đang cố gắng tạo hệ thống quản lý nội dung tùy chỉnh (CMS), hệ thống mẫu hoặc có thể bạn muốn chấp nhận đóng góp đoạn mã từ người dùng?

  • Mã HTML có thể được lưu trữ trong trường văn bản cơ sở dữ liệu thông thường. Ví dụ – INSERT INTO `contents` (`id`, `text`) VALUES (123, '

    Hello

    ')
  • Để truy xuất mã HTML từ cơ sở dữ liệu, hãy chạy truy vấn CHỌN như bình thường. Ví dụ – SELECT `text` FROM `contents` WHERE `id` = 123

Vâng, đó không phải là bí mật. HTML theo nghĩa đen là văn bản thuần túy với một số định dạng. Không cần suy nghĩ quá sâu, không có “quy trình đặc biệt” nào để lưu trữ và truy xuất mã HTML trong cơ sở dữ liệu. Đọc tiếp nếu bạn cần một ví dụ chi tiết

ⓘ Tôi đã bao gồm một tệp zip chứa tất cả mã nguồn ví dụ khi bắt đầu hướng dẫn này, vì vậy bạn không cần phải sao chép-dán mọi thứ… Hoặc nếu bạn chỉ muốn đi sâu vào

P. S. Nếu bạn đang tìm kiếm “cách lưu biểu mẫu HTML vào cơ sở dữ liệu” – Thay vào đó, hãy xem hướng dẫn này

 

 

TLDR – TRANG TRÌNH BÀY NHANH

Tải xuống & Ghi chú

 

TẢI XUỐNG & LƯU Ý

Đầu tiên, đây là liên kết tải xuống mã nguồn ví dụ như đã hứa

 

GHI CHÚ NHANH

  • Tạo cơ sở dữ liệu giả và nhập 1-contents-table.sql
  • Thay đổi cài đặt cơ sở dữ liệu trong 2-lib-content.php thành cài đặt của riêng bạn
  • Chạy
    pdo = new PDO(
          "mysql:host=".DB_HOST.";dbname=".DB_NAME.";charset=".DB_CHARSET,
          DB_USER, DB_PASSWORD, [
          PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
          PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC
        ]);
      }
    
      // (B) DESTRUCTOR - CLOSE DATABASE CONNECTION
      function __destruct() {
        if ($this->stmt !== null) { $this->stmt = null; }
        if ($this->pdo !== null) { $this->pdo = null; }
      }
    
      // (C) HELPER - EXECUTE SQL QUERY
      function exec ($sql, $data=null) {
        $this->stmt = $this->pdo->prepare($sql);
        $this->stmt->execute($data);
      }
    
      // (D) SAVE CONTENT
      function save ($html) {
        $this->exec("INSERT INTO `web_contents` (`contents`) VALUES (?)", [$html]);
        return true;
      }
    
      // (E) LOAD CONTENT
      function load ($id) {
        $this->exec("SELECT `contents` FROM `web_contents` WHERE `id`=?", [$id]);
        return $this->stmt->fetchColumn();
      }
    }
    
    // (F) DATABASE SETTINGS - CHANGE THESE TO YOUR OWN
    define("DB_HOST", "localhost");
    define("DB_NAME", "test");
    define("DB_CHARSET", "utf8mb4");
    define("DB_USER", "root");
    define("DB_PASSWORD", "");
    
    // (G) CONTENT OBJECT
    $_CONTENT = new Content();
    
    0 và
    pdo = new PDO(
          "mysql:host=".DB_HOST.";dbname=".DB_NAME.";charset=".DB_CHARSET,
          DB_USER, DB_PASSWORD, [
          PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
          PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC
        ]);
      }
    
      // (B) DESTRUCTOR - CLOSE DATABASE CONNECTION
      function __destruct() {
        if ($this->stmt !== null) { $this->stmt = null; }
        if ($this->pdo !== null) { $this->pdo = null; }
      }
    
      // (C) HELPER - EXECUTE SQL QUERY
      function exec ($sql, $data=null) {
        $this->stmt = $this->pdo->prepare($sql);
        $this->stmt->execute($data);
      }
    
      // (D) SAVE CONTENT
      function save ($html) {
        $this->exec("INSERT INTO `web_contents` (`contents`) VALUES (?)", [$html]);
        return true;
      }
    
      // (E) LOAD CONTENT
      function load ($id) {
        $this->exec("SELECT `contents` FROM `web_contents` WHERE `id`=?", [$id]);
        return $this->stmt->fetchColumn();
      }
    }
    
    // (F) DATABASE SETTINGS - CHANGE THESE TO YOUR OWN
    define("DB_HOST", "localhost");
    define("DB_NAME", "test");
    define("DB_CHARSET", "utf8mb4");
    define("DB_USER", "root");
    define("DB_PASSWORD", "");
    
    // (G) CONTENT OBJECT
    $_CONTENT = new Content();
    
    1 trong trình duyệt web
Nếu bạn phát hiện ra một lỗi, hãy bình luận bên dưới. Tôi cũng cố gắng trả lời các câu hỏi ngắn, nhưng đó là một người so với cả thế giới… Nếu bạn cần câu trả lời gấp, vui lòng xem danh sách các trang web của tôi để được trợ giúp về lập trình

 

MÃ VÍ DỤ TẢI XUỐNG

Nhấp vào đây để tải xuống mã nguồn, tôi đã phát hành nó theo giấy phép MIT, vì vậy hãy thoải mái xây dựng trên mã nguồn hoặc sử dụng nó trong dự án của riêng bạn

 

 

LƯU TRỮ và LẤY MÃ HTML

Được rồi, bây giờ chúng ta hãy đi vào ví dụ về cách lưu trữ và truy xuất mã HTML trong cơ sở dữ liệu

 

PHẦN 1) NỘI DUNG BẢNG CƠ SỞ DỮ LIỆU

1-nội dung-bảng. sql

CREATE TABLE `web_contents` (
  `id` bigint(20) NOT NULL,
  `contents` text NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
 
ALTER TABLE `web_contents`
  ADD PRIMARY KEY (`id`);
 
ALTER TABLE `web_contents`
  MODIFY `id` bigint(20) NOT NULL AUTO_INCREMENT;
FieldDescriptionidKhóa chính, tự động tăng. trường contentText để lưu trữ mã HTML

Trước tiên, chúng tôi bắt đầu với việc tạo một bảng cơ sở dữ liệu đơn giản để chứa mã hoặc đoạn mã HTML. Không cần tìm đâu xa, một trường

pdo = new PDO(
      "mysql:host=".DB_HOST.";dbname=".DB_NAME.";charset=".DB_CHARSET,
      DB_USER, DB_PASSWORD, [
      PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
      PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC
    ]);
  }

  // (B) DESTRUCTOR - CLOSE DATABASE CONNECTION
  function __destruct() {
    if ($this->stmt !== null) { $this->stmt = null; }
    if ($this->pdo !== null) { $this->pdo = null; }
  }

  // (C) HELPER - EXECUTE SQL QUERY
  function exec ($sql, $data=null) {
    $this->stmt = $this->pdo->prepare($sql);
    $this->stmt->execute($data);
  }

  // (D) SAVE CONTENT
  function save ($html) {
    $this->exec("INSERT INTO `web_contents` (`contents`) VALUES (?)", [$html]);
    return true;
  }

  // (E) LOAD CONTENT
  function load ($id) {
    $this->exec("SELECT `contents` FROM `web_contents` WHERE `id`=?", [$id]);
    return $this->stmt->fetchColumn();
  }
}

// (F) DATABASE SETTINGS - CHANGE THESE TO YOUR OWN
define("DB_HOST", "localhost");
define("DB_NAME", "test");
define("DB_CHARSET", "utf8mb4");
define("DB_USER", "root");
define("DB_PASSWORD", "");

// (G) CONTENT OBJECT
$_CONTENT = new Content();
2 hoặc
pdo = new PDO(
      "mysql:host=".DB_HOST.";dbname=".DB_NAME.";charset=".DB_CHARSET,
      DB_USER, DB_PASSWORD, [
      PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
      PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC
    ]);
  }

  // (B) DESTRUCTOR - CLOSE DATABASE CONNECTION
  function __destruct() {
    if ($this->stmt !== null) { $this->stmt = null; }
    if ($this->pdo !== null) { $this->pdo = null; }
  }

  // (C) HELPER - EXECUTE SQL QUERY
  function exec ($sql, $data=null) {
    $this->stmt = $this->pdo->prepare($sql);
    $this->stmt->execute($data);
  }

  // (D) SAVE CONTENT
  function save ($html) {
    $this->exec("INSERT INTO `web_contents` (`contents`) VALUES (?)", [$html]);
    return true;
  }

  // (E) LOAD CONTENT
  function load ($id) {
    $this->exec("SELECT `contents` FROM `web_contents` WHERE `id`=?", [$id]);
    return $this->stmt->fetchColumn();
  }
}

// (F) DATABASE SETTINGS - CHANGE THESE TO YOUR OWN
define("DB_HOST", "localhost");
define("DB_NAME", "test");
define("DB_CHARSET", "utf8mb4");
define("DB_USER", "root");
define("DB_PASSWORD", "");

// (G) CONTENT OBJECT
$_CONTENT = new Content();
3 thông thường là tất cả những gì chúng ta cần. Vì HTML theo nghĩa đen là văn bản thuần túy, nên chúng ta có thể lưu trữ nó giống như “bất kỳ chuỗi nào khác” mà không cần “xử lý đặc biệt”

 

PHẦN 2) THƯ VIỆN NỘI DUNG PHP

2-lib-nội dung. php

pdo = new PDO(
      "mysql:host=".DB_HOST.";dbname=".DB_NAME.";charset=".DB_CHARSET,
      DB_USER, DB_PASSWORD, [
      PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
      PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC
    ]);
  }

  // (B) DESTRUCTOR - CLOSE DATABASE CONNECTION
  function __destruct() {
    if ($this->stmt !== null) { $this->stmt = null; }
    if ($this->pdo !== null) { $this->pdo = null; }
  }

  // (C) HELPER - EXECUTE SQL QUERY
  function exec ($sql, $data=null) {
    $this->stmt = $this->pdo->prepare($sql);
    $this->stmt->execute($data);
  }

  // (D) SAVE CONTENT
  function save ($html) {
    $this->exec("INSERT INTO `web_contents` (`contents`) VALUES (?)", [$html]);
    return true;
  }

  // (E) LOAD CONTENT
  function load ($id) {
    $this->exec("SELECT `contents` FROM `web_contents` WHERE `id`=?", [$id]);
    return $this->stmt->fetchColumn();
  }
}

// (F) DATABASE SETTINGS - CHANGE THESE TO YOUR OWN
define("DB_HOST", "localhost");
define("DB_NAME", "test");
define("DB_CHARSET", "utf8mb4");
define("DB_USER", "root");
define("DB_PASSWORD", "");

// (G) CONTENT OBJECT
$_CONTENT = new Content();

Tiếp theo, chúng tôi tạo một thư viện đơn giản sẽ lưu và tải nội dung HTML trong cơ sở dữ liệu. Điều này có thể đáng sợ đối với người mới bắt đầu, nhưng hãy bình tĩnh và quan sát kỹ

  • (A, B, G) Khi
    pdo = new PDO(
          "mysql:host=".DB_HOST.";dbname=".DB_NAME.";charset=".DB_CHARSET,
          DB_USER, DB_PASSWORD, [
          PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
          PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC
        ]);
      }
    
      // (B) DESTRUCTOR - CLOSE DATABASE CONNECTION
      function __destruct() {
        if ($this->stmt !== null) { $this->stmt = null; }
        if ($this->pdo !== null) { $this->pdo = null; }
      }
    
      // (C) HELPER - EXECUTE SQL QUERY
      function exec ($sql, $data=null) {
        $this->stmt = $this->pdo->prepare($sql);
        $this->stmt->execute($data);
      }
    
      // (D) SAVE CONTENT
      function save ($html) {
        $this->exec("INSERT INTO `web_contents` (`contents`) VALUES (?)", [$html]);
        return true;
      }
    
      // (E) LOAD CONTENT
      function load ($id) {
        $this->exec("SELECT `contents` FROM `web_contents` WHERE `id`=?", [$id]);
        return $this->stmt->fetchColumn();
      }
    }
    
    // (F) DATABASE SETTINGS - CHANGE THESE TO YOUR OWN
    define("DB_HOST", "localhost");
    define("DB_NAME", "test");
    define("DB_CHARSET", "utf8mb4");
    define("DB_USER", "root");
    define("DB_PASSWORD", "");
    
    // (G) CONTENT OBJECT
    $_CONTENT = new Content();
    
    4 được tạo, hàm tạo sẽ tự động kết nối với cơ sở dữ liệu. Hàm hủy đóng kết nối
  • (C)
    pdo = new PDO(
          "mysql:host=".DB_HOST.";dbname=".DB_NAME.";charset=".DB_CHARSET,
          DB_USER, DB_PASSWORD, [
          PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
          PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC
        ]);
      }
    
      // (B) DESTRUCTOR - CLOSE DATABASE CONNECTION
      function __destruct() {
        if ($this->stmt !== null) { $this->stmt = null; }
        if ($this->pdo !== null) { $this->pdo = null; }
      }
    
      // (C) HELPER - EXECUTE SQL QUERY
      function exec ($sql, $data=null) {
        $this->stmt = $this->pdo->prepare($sql);
        $this->stmt->execute($data);
      }
    
      // (D) SAVE CONTENT
      function save ($html) {
        $this->exec("INSERT INTO `web_contents` (`contents`) VALUES (?)", [$html]);
        return true;
      }
    
      // (E) LOAD CONTENT
      function load ($id) {
        $this->exec("SELECT `contents` FROM `web_contents` WHERE `id`=?", [$id]);
        return $this->stmt->fetchColumn();
      }
    }
    
    // (F) DATABASE SETTINGS - CHANGE THESE TO YOUR OWN
    define("DB_HOST", "localhost");
    define("DB_NAME", "test");
    define("DB_CHARSET", "utf8mb4");
    define("DB_USER", "root");
    define("DB_PASSWORD", "");
    
    // (G) CONTENT OBJECT
    $_CONTENT = new Content();
    
    5 Hàm trợ giúp để chạy truy vấn SQL
  • (D & E) Tự giải thích…
    • pdo = new PDO(
            "mysql:host=".DB_HOST.";dbname=".DB_NAME.";charset=".DB_CHARSET,
            DB_USER, DB_PASSWORD, [
            PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
            PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC
          ]);
        }
      
        // (B) DESTRUCTOR - CLOSE DATABASE CONNECTION
        function __destruct() {
          if ($this->stmt !== null) { $this->stmt = null; }
          if ($this->pdo !== null) { $this->pdo = null; }
        }
      
        // (C) HELPER - EXECUTE SQL QUERY
        function exec ($sql, $data=null) {
          $this->stmt = $this->pdo->prepare($sql);
          $this->stmt->execute($data);
        }
      
        // (D) SAVE CONTENT
        function save ($html) {
          $this->exec("INSERT INTO `web_contents` (`contents`) VALUES (?)", [$html]);
          return true;
        }
      
        // (E) LOAD CONTENT
        function load ($id) {
          $this->exec("SELECT `contents` FROM `web_contents` WHERE `id`=?", [$id]);
          return $this->stmt->fetchColumn();
        }
      }
      
      // (F) DATABASE SETTINGS - CHANGE THESE TO YOUR OWN
      define("DB_HOST", "localhost");
      define("DB_NAME", "test");
      define("DB_CHARSET", "utf8mb4");
      define("DB_USER", "root");
      define("DB_PASSWORD", "");
      
      // (G) CONTENT OBJECT
      $_CONTENT = new Content();
      
      6 Lưu đoạn mã HTML đã cho vào cơ sở dữ liệu
    • pdo = new PDO(
            "mysql:host=".DB_HOST.";dbname=".DB_NAME.";charset=".DB_CHARSET,
            DB_USER, DB_PASSWORD, [
            PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
            PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC
          ]);
        }
      
        // (B) DESTRUCTOR - CLOSE DATABASE CONNECTION
        function __destruct() {
          if ($this->stmt !== null) { $this->stmt = null; }
          if ($this->pdo !== null) { $this->pdo = null; }
        }
      
        // (C) HELPER - EXECUTE SQL QUERY
        function exec ($sql, $data=null) {
          $this->stmt = $this->pdo->prepare($sql);
          $this->stmt->execute($data);
        }
      
        // (D) SAVE CONTENT
        function save ($html) {
          $this->exec("INSERT INTO `web_contents` (`contents`) VALUES (?)", [$html]);
          return true;
        }
      
        // (E) LOAD CONTENT
        function load ($id) {
          $this->exec("SELECT `contents` FROM `web_contents` WHERE `id`=?", [$id]);
          return $this->stmt->fetchColumn();
        }
      }
      
      // (F) DATABASE SETTINGS - CHANGE THESE TO YOUR OWN
      define("DB_HOST", "localhost");
      define("DB_NAME", "test");
      define("DB_CHARSET", "utf8mb4");
      define("DB_USER", "root");
      define("DB_PASSWORD", "");
      
      // (G) CONTENT OBJECT
      $_CONTENT = new Content();
      
      7 Tải đoạn mã HTML đã cho
  • (F) Hãy nhớ thay đổi cài đặt cơ sở dữ liệu thành cài đặt của riêng bạn

 

 

PHẦN 3) LƯU TRỮ VÀ LẤY MÃ HTML

3A) LƯU TRỮ MÃ HTML TRONG CƠ SỞ DỮ LIỆU

3a-chèn-html. php

save("HELLO WORLD")
  ? "OK" : "ERROR" ;

Xin lỗi vì đã làm thất vọng những người đang tìm kiếm “mã hacker tuyệt vời”. Đây là tất cả những gì chúng ta cần để lưu trữ HTML trong cơ sở dữ liệu – Chỉ cần sử dụng thư viện để thực hiện một câu lệnh

pdo = new PDO(
      "mysql:host=".DB_HOST.";dbname=".DB_NAME.";charset=".DB_CHARSET,
      DB_USER, DB_PASSWORD, [
      PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
      PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC
    ]);
  }

  // (B) DESTRUCTOR - CLOSE DATABASE CONNECTION
  function __destruct() {
    if ($this->stmt !== null) { $this->stmt = null; }
    if ($this->pdo !== null) { $this->pdo = null; }
  }

  // (C) HELPER - EXECUTE SQL QUERY
  function exec ($sql, $data=null) {
    $this->stmt = $this->pdo->prepare($sql);
    $this->stmt->execute($data);
  }

  // (D) SAVE CONTENT
  function save ($html) {
    $this->exec("INSERT INTO `web_contents` (`contents`) VALUES (?)", [$html]);
    return true;
  }

  // (E) LOAD CONTENT
  function load ($id) {
    $this->exec("SELECT `contents` FROM `web_contents` WHERE `id`=?", [$id]);
    return $this->stmt->fetchColumn();
  }
}

// (F) DATABASE SETTINGS - CHANGE THESE TO YOUR OWN
define("DB_HOST", "localhost");
define("DB_NAME", "test");
define("DB_CHARSET", "utf8mb4");
define("DB_USER", "root");
define("DB_PASSWORD", "");

// (G) CONTENT OBJECT
$_CONTENT = new Content();
8 SQL đơn giản

 

3B) TRUY XUẤT MÃ HTML TỪ CƠ SỞ DỮ LIỆU

3b-lấy-html. php




  
    MYSQL HTML DEMO
    
  
  
    load(1)?>
  

Cuối cùng, chúng ta chỉ cần lấy các đoạn mã HTML từ bảng cơ sở dữ liệu và chèn chúng vào trang HTML. Không có gì đặc biệt ở đây một lần nữa… Chỉ cần sử dụng thư viện để thực hiện một truy vấn SQL “thông thường”

pdo = new PDO(
      "mysql:host=".DB_HOST.";dbname=".DB_NAME.";charset=".DB_CHARSET,
      DB_USER, DB_PASSWORD, [
      PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
      PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC
    ]);
  }

  // (B) DESTRUCTOR - CLOSE DATABASE CONNECTION
  function __destruct() {
    if ($this->stmt !== null) { $this->stmt = null; }
    if ($this->pdo !== null) { $this->pdo = null; }
  }

  // (C) HELPER - EXECUTE SQL QUERY
  function exec ($sql, $data=null) {
    $this->stmt = $this->pdo->prepare($sql);
    $this->stmt->execute($data);
  }

  // (D) SAVE CONTENT
  function save ($html) {
    $this->exec("INSERT INTO `web_contents` (`contents`) VALUES (?)", [$html]);
    return true;
  }

  // (E) LOAD CONTENT
  function load ($id) {
    $this->exec("SELECT `contents` FROM `web_contents` WHERE `id`=?", [$id]);
    return $this->stmt->fetchColumn();
  }
}

// (F) DATABASE SETTINGS - CHANGE THESE TO YOUR OWN
define("DB_HOST", "localhost");
define("DB_NAME", "test");
define("DB_CHARSET", "utf8mb4");
define("DB_USER", "root");
define("DB_PASSWORD", "");

// (G) CONTENT OBJECT
$_CONTENT = new Content();
9 và xuất nó. Kết thúc. HTML và cơ sở dữ liệu sống hạnh phúc mãi mãi về sau

 

 

3C) CÁC THỰC THỂ HTML

3c-html-thực thể. php

load(1));
 
// (C) OUTPUT ?>


Một số bạn có thể muốn truy xuất HTML trong cơ sở dữ liệu, sau đó đặt nó vào một

save("HELLO WORLD")
  ? "OK" : "ERROR" ;
0 hoặc hiển thị nó dưới dạng một đoạn mã. Như bạn có thể đoán, nếu chúng tôi cắm trực tiếp HTML đó, trình duyệt sẽ chỉ hiển thị nó như hiện tại. Ví dụ,
save("HELLO WORLD")
  ? "OK" : "ERROR" ;
1

Để “khắc phục” sự cố này, chúng tôi sử dụng hàm

save("HELLO WORLD")
  ? "OK" : "ERROR" ;
2 để chuyển đổi các dấu ngoặc nhọn thành các thực thể HTML tương đương –
save("HELLO WORLD")
  ? "OK" : "ERROR" ;
3. Bây giờ,
save("HELLO WORLD")
  ? "OK" : "ERROR" ;
4 sẽ hiển thị là
save("HELLO WORLD")
  ? "OK" : "ERROR" ;
5 và
save("HELLO WORLD")
  ? "OK" : "ERROR" ;
6 sẽ hiển thị là
save("HELLO WORLD")
  ? "OK" : "ERROR" ;
7

 

THÊM) TÁCH THẺ HTML

thẻ 4 dải. php

Hi!

"; // (C) ALLOW ONLY "P" TAGS $html = strip_tags($html, ["p"]); // (D) SAVE INTO DATABASE echo $_CONTENT->save($html) ? "OK" : "ERROR" ;

Nếu bạn cần một “bộ lọc HTML” và chỉ yêu cầu “văn bản không có thẻ”, hãy sử dụng hàm

save("HELLO WORLD")
  ? "OK" : "ERROR" ;
8 – Chúng tôi cũng có thể xác định những thẻ nào sẽ giữ lại làm ngoại lệ

 

 

BIT BỔ SUNG & LIÊN KẾT

Đó là tất cả cho hướng dẫn này và đây là một phần nhỏ về một số tính năng bổ sung và liên kết có thể hữu ích cho bạn

 

LƯU TRỮ HTML TRONG CƠ SỞ DỮ LIỆU CÓ THỰC SỰ ĐƯỢC KHÔNG. ?

Lưu trữ mã HTML trong cơ sở dữ liệu là hoàn toàn đúng và bình thường. Nhiều hệ thống quản lý nội dung (CMS) cũng làm như vậy để lưu các trang, bài đăng và bài báo vào cơ sở dữ liệu theo cách này. Quên đi những kẻ troll giận dữ nói với bạn rằng đó là một ý tưởng tồi

Câu hỏi quan trọng hơn cần đặt ra là - Nó có hợp lý không? . Nhưng nếu nó chỉ là một dự án nhỏ với chỉ một vài trang, thì các trang HTML thô có lẽ sẽ là một ý tưởng thông minh hơn.

 

LIÊN KẾT và THAM KHẢO

  • Lưu trữ mã HTML trong cơ sở dữ liệu Mysql – SitePoint Community
  • Pháp nhân – MDN
  • Danh sách thực thể HTML – Freeformatter
  • Mã hóa HTML Với htmlspecialchars và htmlentities – Vegibit
  • Hàm htmlentities – PHP

 

VIDEO HƯỚNG DẪN

 

BẢNG CHEAT INFOGRAPHIC

Cảm ơn bạn đã đọc, và chúng tôi đã đi đến phần cuối của hướng dẫn này. Tôi hy vọng rằng nó đã giúp bạn với dự án của bạn và nếu bạn muốn chia sẻ bất cứ điều gì với hướng dẫn này, xin vui lòng bình luận bên dưới. Chúc may mắn và mã hóa hạnh phúc

Làm cách nào để lưu thẻ HTML trong cơ sở dữ liệu?

Trường hợp sử dụng. Tạo một đơn đặt hàng mới .
Xác định truy vấn. Chúng tôi sẽ xác định hai truy vấn. .
Tạo lược đồ XML. .
Tạo biểu mẫu. .
Liên kết đến cơ sở dữ liệu. .
Xác định truy vấn SQL. .
Tạo một lược đồ XML. .
Tạo biểu mẫu. .
Liên kết đến cơ sở dữ liệu

Bạn có thể lưu trữ HTML trong cơ sở dữ liệu không?

Chắc chắn có thể lưu trữ html (hoặc bất kỳ đánh dấu hoặc ngôn ngữ nào) bên trong cơ sở dữ liệu . Cũng có thể xử lý điều đó với PHP. Tất cả những gì bạn phải đảm bảo là bạn thoát khỏi nội dung để a) mã của bạn không bị nhiễm sql injection và b) các câu lệnh hợp lệ bất kể giá trị nội dung là gì.

Làm cách nào để lưu trữ các thẻ HTML trong cơ sở dữ liệu MySQL?

Đối với điều này, bạn cần làm theo các bước sau. .
Bước 1. Lọc các yêu cầu về biểu mẫu HTML của bạn cho trang web liên hệ với chúng tôi. .
Bước 2. Tạo cơ sở dữ liệu và bảng trong MySQL. .
Bước 3. Tạo biểu mẫu HTML để kết nối với cơ sở dữ liệu. .
Bước 4. Tạo một trang PHP để lưu dữ liệu từ dạng HTML vào cơ sở dữ liệu MySQL của bạn. .
Bước 5. Tất cả đã được làm xong

Làm cách nào để lưu các thẻ HTML trong SQL Server?

bạn có thể lưu mã html giống như văn bản. Bạn có thể sử dụng cột loại varchar(max) để lưu mã html trong bảng . Hiển thị mã là tùy thuộc vào trình duyệt. Nhưng nếu bạn sử dụng loại nvarchar sẽ gây ra vấn đề trong hiển thị.