Hướng dẫn can php work with postgresql? - php có thể hoạt động với postgresql không?

Cập nhật lần cuối vào ngày 19 tháng 8 năm 2022 21:51:31 (UTC/GMT +8 giờ)

Yêu cầu phát triển và cài đặt

Để cài đặt PostgreSQL trên Linux và Windows, chúng tôi đã thảo luận ở đây, quy trình cài đặt chi tiết.

Bạn có thể sử dụng Apache Web Server, PHP, PostgreSQL và PHPPGADMIN (đây là một công cụ tuyệt vời để quản lý các dự án PHP-postgresql) để xây dựng một ứng dụng web cơ bản.

Cách dễ dàng nhất để cài đặt và triển khai tất cả các phần mềm được đề cập ở trên là cài đặt ngăn xếp WAPP (Windows, Apache, PostgreSQL, PHP). Bitnami là một gói phần mềm cung cấp gói WAPP. Bạn có thể tải xuống từ "http://bitnami.org/learn_more/installers" và bằng cách nhấp đúp vào tệp trình cài đặt, nó dễ dàng được cài đặt trên Windows. Trong khi cài đặt, nó hỏi bạn nơi cài đặt nó ở đâu và cũng yêu cầu mật khẩu mà sau này sẽ được yêu cầu đăng nhập phppgadmin.

Kết nối với PostgreSQL bằng các hàm gốc PHP

Giả sử chúng ta có bảng (cuốn sách) sau đây trong cơ sở dữ liệu "Postgres". Đây là cấu trúc của bảng:

     column_name     | is_nullable |     data_type     | character_maximum_length | numeric_precision | numeric_scale
---------------------+-------------+-------------------+--------------------------+-------------------+---------------
 book_id             | NO          | character varying |                       10 |                   |
 author              | YES         | character varying |                       25 |                   |
 publisher           | YES         | character varying |                       25 |                   |
 date_of_publication | YES         | date              |                          |                   |
 price               | YES         | numeric           |                          |                 8 |             2
 

PHP cung cấp nhiều chức năng để làm việc trực tiếp với cơ sở dữ liệu PostgreSQL. Dưới đây là một số chức năng:

PG_Connect: Hàm được sử dụng để mở kết nối PostgreSQL. : The function is used to open a PostgreSQL connection.

Phiên bản: (Php 4, Php 5)

Cú pháp:

resource pg_connect ( string $connection_string [, int $connect_type ] )

Thông số:

  • Connection_String: Connection_String có thể trống để sử dụng tất cả các tham số mặc định hoặc nó có thể chứa một hoặc nhiều cài đặt tham số được phân tách bằng khoảng trắng. Các từ khóa tham số hiện được công nhận là: host, hostaddr, port, dbname (mặc định là giá trị của người dùng), người dùng, mật khẩu, kết nối, tùy chọn, tty (bị bỏ qua), sslMode, aboressL (không sử dụng SSLMode) và dịch vụ. Những đối số nào tồn tại phụ thuộc vào phiên bản PostgreSQL của bạn.
  • Connect_Type: Nếu PGSQL_CONNECT_FORCE_NEW được truyền, thì một kết nối mới được tạo, ngay cả khi Connection_String giống hệt với kết nối hiện có. Nếu PGSQL_CONNECT_ASYNC được đưa ra, thì kết nối được thiết lập không đồng bộ. Trạng thái của kết nối sau đó có thể được kiểm tra qua pg_connect_poll () hoặc pg_connection_status ().

Giá trị trả về: Tài nguyên kết nối PostgreSQL thành công, sai khi thất bại.

pg_query: thực hiện truy vấnExecute a query

Phiên bản: (Php 4> = 4.2.0, Php 5)

Cú pháp:

resource pg_query ([ resource $connection ], string $query )

Thông số:

  • Connection_String: Connection_String có thể trống để sử dụng tất cả các tham số mặc định hoặc nó có thể chứa một hoặc nhiều cài đặt tham số được phân tách bằng khoảng trắng. Các từ khóa tham số hiện được công nhận là: host, hostaddr, port, dbname (mặc định là giá trị của người dùng), người dùng, mật khẩu, kết nối, tùy chọn, tty (bị bỏ qua), sslMode, aboressL (không sử dụng SSLMode) và dịch vụ. Những đối số nào tồn tại phụ thuộc vào phiên bản PostgreSQL của bạn.
  • Connect_Type: Nếu PGSQL_CONNECT_FORCE_NEW được truyền, thì một kết nối mới được tạo, ngay cả khi Connection_String giống hệt với kết nối hiện có. Nếu PGSQL_CONNECT_ASYNC được đưa ra, thì kết nối được thiết lập không đồng bộ. Trạng thái của kết nối sau đó có thể được kiểm tra qua pg_connect_poll () hoặc pg_connection_status ().

Giá trị trả về: Tài nguyên kết nối PostgreSQL thành công, sai khi thất bại.

pg_query: thực hiện truy vấn

Phiên bản: (Php 4> = 4.2.0, Php 5)



Insert data to PostgreSQL with php - creating a simple web application




Enter information regarding book

  • Book ID:
  • Book Name:
  • Author:
  • Publisher:
  • Date of publication:
  • Price (USD):

Thông số :

Hướng dẫn can php work with postgresql? - php có thể hoạt động với postgresql không?

Kết nối: Tài nguyên kết nối cơ sở dữ liệu PostgreSQL. Khi kết nối không có, kết nối mặc định được sử dụng. Kết nối mặc định là kết nối cuối cùng được thực hiện bởi pg_connect () hoặc pg_pconnect ().

Truy vấn: Câu lệnh SQL hoặc câu lệnh được thực thi.

Giá trị trả về: Tài nguyên kết quả truy vấn về thành công hoặc sai khi thất bại.

Chèn dữ liệu vào bảng với PHP


 
Enter bookid to display data - creating a simple web application

Enter bookid and enter

  • Book ID:
  • Book ID:
  • Book Name:
  • Author:
  • Publisher:
  • Date of publication:
  • Price (USD):

  • "; } if (isset($_POST['new'])) { $result1 = pg_query($db, "UPDATE book SET book_id = '$_POST[bookid_updated]', book_name = '$_POST[book_name_updated]', author = '$_POST[author_updated]', publisher = '$_POST[publisher_updated]',date_of_publication = '$_POST[dop_updated]', price = '$_POST[price_updated]'"); if (!$result1) { echo "Update failed!!"; } else { echo "Update successfull;"; } } ?>

    Chúng tôi sẽ tạo một biểu mẫu HTML và tập lệnh PHP để chèn dữ liệu vào bảng "Sách". Đây là mã (tên tệp chèn.php):

    Đây là cách hình thức để chèn dữ liệu trông:

    Sử dụng biểu mẫu này để nhập một số dữ liệu vào bảng "Sách".

    
    
    

    Truy xuất và cập nhật dữ liệu với PHP

    Trong bước tiếp theo, chúng tôi sẽ tạo một biểu mẫu để chúng tôi có thể thấy chi tiết của hồ sơ sách và cập nhật dữ liệu hiện có của bảng "Sách". Đối với điều này, chúng tôi sẽ tạo một biểu mẫu nơi người dùng có thể cung cấp ID sách và nó sẽ hiển thị tất cả các thông tin được lưu trữ trong cơ sở dữ liệu liên quan đến cuốn sách cụ thể đó. Vì vậy, bạn sẽ tìm hiểu cách tìm nạp dữ liệu từ bảng, cách hiển thị dữ liệu đó với PHP và cách cập nhật dữ liệu.

    Đây là mã (tên tệp enter-bookId):

     true));	
    ?>
    
    

    Kết nối với PostgreSQL bằng PDO (đối tượng dữ liệu PHP)

    Tính đến phiên bản 5.1 PHP cung cấp thư viện trừu tượng kết nối cơ sở dữ liệu mới, đối tượng dữ liệu PHP hoặc PDO. PDO tóm tắt truy cập cơ sở dữ liệu và cho phép bạn sử dụng mã có thể xử lý các loại cơ sở dữ liệu khác nhau.user_details table, and stores the result in $sql.

    $dbuser = 'postgres';
    $dbpass = 'abc123';
    $host = 'localhost';
    $dbname='postgres';
    
    $connec = new PDO("mysql:host=$dbhost;dbname=$dbname", $dbuser, $dbpass); }catch (PDOException $e) { echo "Error : " . $e->getMessage() . "
    "; die(); } $sql = 'SELECT fname, lname, country FROM user_details ORDER BY country'; foreach ($connec->query($sql) as $row) { print $row['fname'] . " "; print $row['lname'] . "-->"; print $row['country'] . "
    "; } ?>

    Sử dụng mã PHP sau để kết nối với PostgreSQL và chọn cơ sở dữ liệu. Thay thế $ dbname bằng tên cơ sở dữ liệu, $ dbuser bằng tên người dùng của bạn và $ dbpass bằng mật khẩu của bạn.

    Xử lý lỗi kết nối:

    Trước đó: Kết nối với PostgreSQLnodext: Kiểu dữ liệu Connect to PostgreSQL
    Next: Data Types

    Làm cách nào tôi có thể kết nối cơ sở dữ liệu PostgreSQL bằng PHP?

    Kết nối với cơ sở dữ liệu PHP $ host = "host = 127.0. 0,1"; $ port = "cổng = 5432"; $ dbname = "dbname = testDb"; $ algencids = "user = postgres password = pass123"; $ db = pg_connect ("$ máy chủ $ cổng $ dbname $ thông tin xác thực"); nếu(!

    Phần mở rộng PHP nào cần được bật cho PostgreSQL?

    Đã bật tiện ích mở rộng PGSQL bằng cách chỉnh sửa /etc/php/7.0/mods-available/pgsql.Tệp cấu hình INI.Tệp cấu hình phải chứa một dòng với tiện ích mở rộng văn bản = php_pgsql.so.Nếu nó không được hiển thị, hãy thêm văn bản và lưu tệp.pgsql extension by editing the /etc/php/7.0/mods-available/pgsql. ini configuration file. The configuration file should contain a line with the text extension=php_pgsql.so . If it is not shown, add the text and save the file.

    Ngôn ngữ lập trình nào được sử dụng bởi PostgreSQL?

    PL/PGSQL (Ngôn ngữ thủ tục/PostgreSQL) là ngôn ngữ lập trình thủ tục được hỗ trợ bởi PostgreSQL ORDBMS.Nó gần giống với ngôn ngữ PL/SQL của Oracle.Được triển khai bởi Jan Wieck, PL/PGSQL lần đầu tiên xuất hiện với PostgreSQL 6.4, được phát hành vào ngày 30 tháng 10 năm 1998. (Procedural Language/PostgreSQL) is a procedural programming language supported by the PostgreSQL ORDBMS. It closely resembles Oracle's PL/SQL language. Implemented by Jan Wieck, PL/pgSQL first appeared with PostgreSQL 6.4, released on October 30, 1998.

    Postgresql có tốt cho phát triển web không?

    Ngày 07 tháng 2 năm 2022, Postgresql đã đạt được danh tiếng mạnh mẽ về kiến trúc đã được chứng minh, độ tin cậy, tính toàn vẹn dữ liệu, bộ tính năng mạnh mẽ, khả năng mở rộng và sự cống hiến của cộng đồng nguồn mở đằng sau phần mềm để cung cấp các giải pháp sáng tạo, hiệu suất cao,Công ty nhận xét.