PHP là ngôn ngữ kịch bản máy chủ và là công cụ mạnh mẽ để tạo các trang Web động và tương tác
PHP là một giải pháp thay thế được sử dụng rộng rãi, miễn phí và hiệu quả cho các đối thủ cạnh tranh như ASP của Microsoft
Bắt đầu học PHP ngay bây giờ »Học dễ dàng với "PHP Tryit"
Với trình chỉnh sửa "PHP Tryit" trực tuyến của chúng tôi, bạn có thể chỉnh sửa mã PHP và nhấp vào nút để xem kết quả
Ví dụ
echo "Tập lệnh PHP đầu tiên của tôi. ";
?>
Nhấp vào nút "Tự dùng thử" để xem nó hoạt động như thế nào
Bài tập PHP
Kiểm tra bản thân với các bài tập
Tập thể dục
Chèn phần còn thiếu của mã bên dưới để xuất "Xin chào thế giới"
Cung cấp câu trả lời "
Ví dụ PHP
Tìm hiểu bằng các ví dụ. Hướng dẫn này bổ sung tất cả các giải thích với các ví dụ rõ ràng
Xem tất cả các ví dụ về PHP
Bài kiểm tra PHP
Học bằng cách làm bài kiểm tra. Bài kiểm tra này sẽ cung cấp cho bạn tín hiệu về mức độ bạn biết hoặc không biết về PHP
Bắt đầu bài kiểm tra PHP
Việc học của tôi
Theo dõi tiến trình của bạn với chương trình "Học tập của tôi" miễn phí tại W3Schools
Đăng nhập vào tài khoản của bạn và bắt đầu kiếm điểm
Đây là một tính năng tùy chọn. Bạn có thể học W3Schools mà không cần sử dụng My Learning
Tài liệu tham khảo PHP
Tài liệu tham khảo PHP của W3Schools chứa các danh mục khác nhau của tất cả các hàm, từ khóa và hằng số PHP, cùng với các ví dụ
Tôi đang cố tải xuống tệp pdf từ cơ sở dữ liệu được lưu trữ dưới dạng kiểu dữ liệu blob bằng cách sử dụng cú đánh mã, hiện tại tôi chỉ có thể xem tệp dưới dạng
8 và không9Nội dung chính Hiển thị
- Bước 1 - Tạo cơ sở dữ liệu
- Bạn sẽ nhận được kết quả sau
- 05. máy chủ nơi chứa cơ sở dữ liệu. Trong trường hợp này, bạn đang sử dụng máy chủ 06
- Kết luận
Các
0 chứa kiểu dữ liệu của tệp là1. ____02 chứa chính tệp PDF dưới dạng3Khi thực thi mã php, tôi có thể thấy tệp pdf của mình nhưng tệp nằm trong
8, trình duyệt đang hiển thị tệp trong Trình xem PDF nhưng khi tôi cố tải xuống, nó vẫn cố lưu tệp dưới dạng ____08. Làm cách nào để tải xuống tệp dưới dạng ____09 - ngay bây giờ tôi phải lưu dưới dạng PDF theo cách thủ công mỗi lầnThứ ba, 05/05/2020. 00. 00 GMT+7
BLOB là kiểu dữ liệu MySQL có thể lưu trữ dữ liệu nhị phân như hình ảnh, tệp đa phương tiện và tệp PDF
Khi tạo các ứng dụng yêu cầu cơ sở dữ liệu kết hợp chặt chẽ, trong đó hình ảnh phải được đồng bộ với dữ liệu liên quan (ví dụ:. cổng thông tin nhân viên, cơ sở dữ liệu sinh viên hoặc ứng dụng tài chính), bạn có thể thấy thuận tiện khi lưu trữ hình ảnh như hộ chiếu của sinh viên ảnh và chữ ký trong cơ sở dữ liệu MySQL cùng với các thông tin liên quan khác
Đây là nơi xuất hiện kiểu dữ liệu MySQL
3. Phương pháp thiết lập chương trình này loại bỏ nhu cầu tạo một tệp hệ thống riêng để lưu trữ hình ảnh. Lược đồ tập tin cũng trung hóa cơ sở dữ liệu , làm cho nó dễ di chuyển và an toàn hơn vì dữ liệu được tách biệt khỏi tệp hệ thống. Tạo bản sao lưu liền mạch hơn vì bạn có thể tạo một tệp kết xuất MySQL duy nhất chứa tất cả dữ liệuTruy xuất dữ liệu nhanh hơn và khi tạo bản ghi, bạn có thể chắc chắn rằng các dữ liệu xác thực và tính toàn vẹn tham chiếu được duy trì, đặc biệt khi sử dụng các giao dịch MySQL
Trong hướng dẫn này, bạn sẽ sử dụng kiểu dữ liệu MySQL
3 to save image by PHP on Ubuntu 18. 04Request
Để làm theo hướng dẫn này, bạn cần các thành phần sau
- Máy chủ Ubuntu 18. 04 được cấu hình bằng Cài đặt ban đầu máy chủ với Ubuntu 18. 04 và người dùng không được root có quyền9
- Cài đặt Apache, MySQL và PHP theo hướng dẫn về Cách cài đặt Linux, Apache, MySQL, PHP (LAMP) trên Ubuntu 18. 04. Đối với hướng dẫn này, không cần thiết phải tạo VirtualHost, vì vậy bạn có thể bỏ qua Bước 4
Bước 1 - Tạo cơ sở dữ liệu
Bạn sẽ bắt đầu bằng cách tạo cơ sở dữ liệu mẫu cho dự án của bạn. Để thực hiện công việc này, hãy SSH vào máy chủ và sau đó chạy lệnh sau để đăng nhập vào máy chủ MySQL của bạn với quyền root
- sudo mysql -u root -p
Nhập mật khẩu gốc của cơ sở dữ liệu MySQL của bạn và nhấn
50 to continueSau đó, chạy lệnh sau để tạo cơ sở dữ liệu. Trong hướng dẫn này, ta sẽ đặt tên là
51.- TẠO CƠ SỞ DỮ LIỆU test_company; test_company ;
Khi cơ sở dữ liệu được tạo, bạn sẽ thấy kết quả sau
đầu ra
5Tiếp theo, tạo tài khoản
52 trên máy chủ MySQL và nhớ thay thế53 bằng một mật khẩu mạnh.- TẠO NGƯỜI DÙNG 'test_user'@'localhost' ĐƯỢC XÁC ĐỊNH BỞI 'MẬT KHẨU'; test_user '@'localhost' ĐƯỢC XÁC ĐỊNH BỞI ' PASSWORD';
You will see the results after
đầu ra
0Tiếp theo, tạo tài khoản
52 trên máy chủ MySQL và nhớ thay thế53 bằng một mật khẩu mạnh.- TẠO NGƯỜI DÙNG 'test_user'@'localhost' ĐƯỢC XÁC ĐỊNH BỞI 'MẬT KHẨU'; test_company . * ĐẾN ' test_user '@'localhost';
đầu ra
0Tiếp theo, tạo tài khoản
52 trên máy chủ MySQL và nhớ thay thế53 bằng một mật khẩu mạnh.- TẠO NGƯỜI DÙNG 'test_user'@'localhost' ĐƯỢC XÁC ĐỊNH BỞI 'MẬT KHẨU';
đầu ra
Tiếp theo, tạo tài khoản52 trên máy chủ MySQL và nhớ thay thế53 bằng một mật khẩu mạnhTẠO NGƯỜI DÙNG 'test_user'@'localhost' ĐƯỢC XÁC ĐỊNH BỞI 'MẬT KHẨU';
- TỪ BỎ;
You will see the results after
- Để cấp cho52 đầy đủ các quyền trên cơ sở dữ liệu51 , hãy chạy. test_user -p
CẤP TẤT CẢ CÁC ĐẶC QUYỀN TRÊN test_company. * ĐẾN 'test_user'@'localhost';
- Đảm bảo bạn nhận được kết quả sau. test_company ;
Cuối cùng, xóa bảng quyền để MySQL tải lại quyền
đầu ra
6Tiếp theo, tạo tài khoản
52 trên máy chủ MySQL và nhớ thay thế53 bằng một mật khẩu mạnh.- TẠO NGƯỜI DÙNG 'test_user'@'localhost' ĐƯỢC XÁC ĐỊNH BỞI 'MẬT KHẨU';
Lệnh này tạo một bảng có tên là
58. Table has a table- 7. Cột này sử dụng kiểu dữ liệu8 để chứa một danh sách lớn các sản phẩm có tối đa 2⁶³-1 mục. Bạn đã đánh dấu cột là9 để xác định duy nhất các sản phẩm. Để MySQL xử lý việc tạo số nhận định dạng mới cho các cột được chèn, bạn đã sử dụng từ khóa0
- 1. Cột này chứa tên của các sản phẩm. Bạn đã sử dụng kiểu dữ liệu2 vì trường này thường sẽ xử lý chữ và số đến tối đa3 ký tự — giới hạn3 chỉ là giá trị giả định được sử dụng cho mục đích của hướng dẫn này
- 5. Đối với mục đích demo , bảng58 của bạn chứa cột5 để lưu trữ giá bán lẻ của sản phẩm. Because a number of product can have the value value (ví dụ:. 23,69, 45,36, 102,99), bạn đã sử dụng kiểu dữ liệu8
- 9. Cột này sử dụng kiểu dữ liệu3 để lưu trữ dữ liệu nhị phân thực của hình ảnh sản phẩm
You are used
1 lưu trữ2 cho bảng để hỗ trợ một loạt các tính năng bao gồm các giao dịch MySQL. Sau khi thực hiện điều này để tạo bảng58 , bạn sẽ thấy kết quả sau.đầu ra
0Đăng xuất khỏi máy chủ MySQL của bạn
- TỪ BỎ;
Bạn sẽ nhận được kết quả sau
đầu ra
4Đăng xuất khỏi máy chủ MySQL của bạn
Bạn sẽ nhận được kết quả sau
Bảng
58 đã có sẵn để lưu trữ một số bản ghi bao gồm hình ảnh của sản phẩm và bạn sẽ điền vào bảng này với một số sản phẩm trong bước tiếp theoBước 2 - Create PHP file to connect database
- Trong bước này, bạn sẽ tạo một tập lệnh PHP sẽ kết nối với cơ sở dữ liệu MySQL mà bạn đã tạo ở Bước 1. Lệnh sẽ chuẩn bị cho ba sản phẩm mẫu và đưa chúng vào bảng58
To make PHP code, please open a new file by editor
/var/www/html/config. php
7sudo nano /var/www/html/config. php
Sau đó, nhập thông tin sau vào tệp và thay thế
6 bằng mật khẩu52 mà bạn đã tạo ở Bước 1Lưu tệp
Trong tệp này, bạn đã sử dụng hằng số PHP để kết nối với cơ sở dữ liệu MySQL mà bạn đã tạo ở Bước 1
- 8. Hằng số này giữ tên của cơ sở dữ liệu____051
- 00. Biến này chứa tên người dùng52
- Dòng sau trong tệp khởi tạo Đối tượng dữ liệu PHP (PDO) và kết nối với cơ sở dữ liệu MySQL
- Ở cuối tệp , bạn đã đặt một số thuộc tính PDO
- Sẽ bao gồm tệp_______009 trong hai tệp lệnh PHP mà bạn sẽ tạo tiếp theo để chèn và truy xuất các bản ghi tương ứng
Đầu tiên, hãy tạo tập lệnh PHP
10 để chèn các bản ghi vào bảng sản phẩmSudo nano /var/www/html/insert_products. php
1sudo nano /var/www/html/config. php
Sau đó, nhập thông tin sau vào tệp và thay thế
6 bằng mật khẩu52 mà bạn đã tạo ở Bước 1Lưu tệp
Trong tệp này, bạn đã sử dụng hằng số PHP để kết nối với cơ sở dữ liệu MySQL mà bạn đã tạo ở Bước 1
8. Hằng số này giữ tên của cơ sở dữ liệu____051. 200. Biến này chứa tên người dùng52. 02. Hằng số này lưu trữ53 MySQL của tài khoản5205. máy chủ nơi chứa cơ sở dữ liệu. Trong trường hợp này, bạn đang sử dụng máy chủ 06
Dòng sau trong tệp khởi tạo Đối tượng dữ liệu PHP (PDO) và kết nối với cơ sở dữ liệu MySQL
Ở cuối tệp , bạn đã đặt một số thuộc tính PDO
- 07. Thuộc tính này hướng dẫn PDO xuất một ngoại lệ có thể được ghi lại cho mục đích giải quyết lỗi
/var/www/html/display_products. php
5Save the changes to file and close it
Ở đây, bạn đã bao gồm tập tin
12 to connect with database. Sau đó, bạn đã chuẩn bị sẵn sàng và thực hiện một câu lệnh SQL bằng cách sử dụng PDO để truy xuất tất cả các mục từ bảng58 bằng24Tiếp theo, bạn đã tạo một bảng HTML và điền nó vào dữ liệu của các sản phẩm bằng cách sử dụng câu lệnh
25PHP. Dòng26 truy vấn cơ sở dữ liệu và lưu trữ kết quả trong biến27 dưới dạng một mảng đa chiều, sau đó bạn đã hiển thị trong cột HTML bằng cách sử dụng28 cú pháp28Image image from column
9 được đặt bên trong______031. Bạn đã sử dụng thuộc tính_______032 và_______033 để thay đổi kích thước hình ảnh thành kích thước nhỏ hơn có thể vừa với cột HTMLTo convert data has been started by data type
3 quay lại hình ảnh, bạn đã sử dụng hàm35 PHP và cú pháp sau để lược đồ URI dữ liệu. 6Trong trường hợp này,
36 là37 và chuỗi được mã hóa38 từ cột9 là40Tiếp theo, thực thi tập tin
41 in the web browser by the after address. 7Sau khi chạy tệp
41 trong trình duyệt, bạn sẽ thấy một bảng HTML với danh sách các sản phẩm và hình ảnh liên quanĐiều kiện này xác nhận lệnh PHP để lấy ảnh từ MySQL đang hoạt động như mong đợi
Kết luận
Trong hướng dẫn này, bạn đã sử dụng kiểu dữ liệu MySQL
3 để lưu trữ và hiển thị hình ảnh bằng PHP trên Ubuntu 18. 04. Bạn cũng đã thấy những ưu điểm cơ bản của việc lưu trữ hình ảnh trong cơ sở dữ liệu thay vì lưu trữ chúng trong tệp hệ thống. Chúng bao gồm tính di động, bảo mật và sao lưu dễ dàng. Nếu bạn đang xây dựng một ứng dụng như cổng thông tin sinh viên hoặc cơ sở dữ liệu của nhân viên yêu cầu thông tin và hình ảnh liên quan được lưu trữ giống nhau, thì công nghệ này có thể hữu ích cho bạnĐể biết thêm thông tin về các kiểu dữ liệu được hỗ trợ trong MySQL, hãy làm theo hướng dẫn Kiểu dữ liệu MySQL. Nếu bạn quan tâm đến nội dung khác liên quan đến MySQL và PHP, hãy xem các hướng dẫn sau