Hướng dẫn how do i connect to postgresql and php? - làm cách nào để kết nối với postgresql và php?

Bài viết này mô tả hai phương pháp để kết nối với cơ sở dữ liệu PostgreSQL bằng PHP:

  • PostgreSQL Chức năng gốc
  • PDO (Đối tượng dữ liệu PHP)

Cơ sở dữ liệu PostgreSQL và người dùng phải tồn tại trước khi bạn có thể sử dụng các phương thức này. Để biết thông tin về cách quản lý cơ sở dữ liệu PostgreSQL bằng CPanel, vui lòng xem bài viết này.

Kết nối với PostgreSQL bằng cách sử dụng các hàm gốc

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.

Để kết nối với PostgreSQL bằng các hàm gốc, hãy làm theo các bước sau:

  1. Sử dụng mã PHP sau để kết nối với PostgreSQL và chọn cơ sở dữ liệu. Thay thế tên người dùng bằng tên người dùng, mật khẩu bằng mật khẩu của bạn và dbname & nbsp; với tên cơ sở dữ liệu:
    dbname user=username password=password");
    ?>
    
    username with your username, password with your password, and dbname with the database name:
    dbname user=username password=password");
    ?>
    
  2. Sau khi mã kết nối với PostgreSQL và chọn cơ sở dữ liệu, bạn có thể chạy các truy vấn SQL và thực hiện các hoạt động khác. Ví dụ: mã PHP sau đây chạy truy vấn SQL trích xuất tên cuối cùng từ bảng nhân viên và lưu trữ kết quả trong biến kết quả $:

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

Các chức năng của PostgreSQL trong quy trình trước đó chỉ có thể được sử dụng với cơ sở dữ liệu PostgreSQL. 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.

Để kết nối với PostgreSQL bằng PDO, hãy làm theo các bước sau:

  1. Sử dụng mã PHP sau để kết nối với PostgreSQL và chọn cơ sở dữ liệu. Thay thế tên người dùng bằng tên người dùng, mật khẩu & nbsp; bằng mật khẩu và dbname của bạn bằng tên cơ sở dữ liệu:
    dbname', 'username', 'password');
    ?>
    
    username with your username, password with your password, and dbname with the database name:
    dbname', 'username', 'password');
    ?>
    
  2. Sau khi mã kết nối với PostgreSQL và chọn cơ sở dữ liệu, bạn có thể chạy các truy vấn SQL và thực hiện các hoạt động khác. Ví dụ: mã PHP sau đây chạy truy vấn SQL trích xuất tên cuối cùng từ bảng nhân viên và lưu trữ kết quả trong biến kết quả $:

    query("SELECT lastname FROM employees");
    ?>
    

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

  • Các chức năng của PostgreSQL trong quy trình trước đó chỉ có thể được sử dụng với cơ sở dữ liệu PostgreSQL. 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.
  • Để kết nối với PostgreSQL bằng PDO, hãy làm theo các bước sau:



Nhập ./psql, cơ sở dữ liệu tên máy chủ và nhấn Enter. ....

Nếu bạn đã kết nối thành công, bạn sẽ thấy một tin nhắn tương tự, ví dụ dưới đây ..--without-pgsql at compile time. Still you can use yum command to install PHP -PostgreSQL interface −

yum install php-pgsql

Cài đặtpg_hba.conf file in your PostgreSQL installation directory and add the following line −

# IPv4 local connections:
host    all         all         127.0.0.1/32          md5

Tiện ích mở rộng PostgreSQL được bật theo mặc định trong các bản phát hành mới nhất của Php 5.3.x. Có thể vô hiệu hóa nó bằng cách sử dụng--without-pgsql tại thời điểm biên dịch. Tuy nhiên, bạn có thể sử dụng lệnh yum để cài đặt giao diện php -postgresql -

[root@host]# service postgresql restart
Stopping postgresql service:                               [  OK  ]
Starting postgresql service:                               [  OK  ]

Trước khi bạn bắt đầu sử dụng giao diện PHP PostgreSQL, hãy tìm tệp pg_hba.conf trong thư mục cài đặt PostgreSQL của bạn và thêm dòng sau -

Bạn có thể khởi động/khởi động lại máy chủ Postgres, trong trường hợp nó không chạy, sử dụng lệnh sau -

Người dùng Windows phải bật PHP_PGSQL.DLL để sử dụng tiện ích mở rộng này. DLL này được bao gồm trong các bản phân phối Windows trong các bản phát hành mới nhất của Php 5.3.x

Để biết hướng dẫn cài đặt chi tiết, vui lòng kiểm tra hướng dẫn PHP của chúng tôi và trang web chính thức của nó.

API giao diện PHPSau đây là các thói quen PHP quan trọng, có thể đủ yêu cầu của bạn để làm việc với cơ sở dữ liệu PostgreSQL từ chương trình PHP của bạn. Nếu bạn đang tìm kiếm một ứng dụng tinh vi hơn, thì bạn có thể xem xét tài liệu chính thức của PHP.
1

S. Không.

API & Mô tả

Tài nguyên pg_connect (Chuỗi $ Connection_String [, int $ Connect_Type]))

2

bool pg_connection_reset (Kết nối tài nguyên $)

Thói quen này đặt lại kết nối. Nó rất hữu ích cho việc phục hồi lỗi. Trả về đúng về thành công hoặc sai khi thất bại.

3

int pg_connection_status (Kết nối tài nguyên $)

Thói quen này trả về trạng thái của kết nối được chỉ định. Trả về pgsql_connection_ok hoặc pgsql_connection_bad.

4

Chuỗi pg_dbname ([Tài nguyên $ Kết nối])

Thói quen này trả về tên của cơ sở dữ liệu mà tài nguyên kết nối PostgreSQL đã cho.

5

Tài nguyên pg_prepare ([Kết nối tài nguyên $], chuỗi $ stmtname, chuỗi $ truy vấn)

Điều này gửi một yêu cầu để tạo một câu lệnh đã chuẩn bị với các tham số đã cho và chờ hoàn thành.

6

Tài nguyên PG_EXECUTE ([Tài nguyên $ Connection], Chuỗi $ STMTNAME, Mảng $ params)

Thói quen này gửi một yêu cầu để thực hiện một câu lệnh đã chuẩn bị với các tham số đã cho và chờ kết quả.

7

Tài nguyên PG_Query ([Tài nguyên $ Connection], Chuỗi $ Truy vấn)

Thường trình này thực thi truy vấn trên kết nối cơ sở dữ liệu được chỉ định.

8

mảng pg_fetch_row (tài nguyên $ result [, int $ row])

Thói quen này lấy một hàng dữ liệu từ kết quả liên quan đến tài nguyên kết quả được chỉ định.

9

Mảng PG_FETCH_ALL (result rescent $ result)

Thói quen này trả về một mảng chứa tất cả các hàng (bản ghi) trong tài nguyên kết quả.

10

int pg_affected_rows (result result result)

Thông thường này trả về số lượng hàng bị ảnh hưởng bởi các truy vấn chèn, cập nhật và xóa.

11

int PG_NUM_ROWS (result rescent $)

Thói quen này trả về số lượng hàng trong tài nguyên kết quả PostgreSQL, ví dụ số lượng hàng được trả về bởi câu lệnh select.

12

bool pg_close ([Kết nối tài nguyên $])

Thói quen này đóng kết nối không liên tục với cơ sở dữ liệu PostgreSQL được liên kết với tài nguyên kết nối đã cho.

13

Chuỗi PG_LAST_ERROR ([Tài nguyên $ Connection])

Thói quen này trả về thông báo lỗi cuối cùng cho một kết nối nhất định.

14

Chuỗi pg_escape_literal ([Kết nối tài nguyên $], chuỗi $ data)

Thông thường này thoát khỏi một nghĩa đen để chèn vào một trường văn bản.

15

Chuỗi PG_ESCAPE_STRING ([Tài nguyên $ Connection], Chuỗi $ Data)

Thói quen này thoát khỏi một chuỗi để truy vấn cơ sở dữ liệu.

Kết nối với cơ sở dữ liệu

Mã PHP sau đây cho thấy cách kết nối với cơ sở dữ liệu hiện có trên máy cục bộ và cuối cùng là đối tượng kết nối cơ sở dữ liệu sẽ được trả về.

Bây giờ, chúng ta hãy chạy chương trình đã cho ở trên để mở cơ sở dữ liệu của chúng ta TESTDB: Nếu cơ sở dữ liệu được mở thành công, thì nó sẽ cung cấp thông báo sau -testdb: if the database is successfully opened, then it will give the following message −

Opened database successfully

Tạo một bảng

Chương trình PHP sau đây sẽ được sử dụng để tạo một bảng trong cơ sở dữ liệu được tạo trước đó -

Khi chương trình đã cho ở trên được thực thi, nó sẽ tạo bảng công ty trong TESTDB của bạn và nó sẽ hiển thị các tin nhắn sau -testdb and it will display the following messages −

0

Chèn hoạt động

Chương trình PHP sau đây cho thấy cách chúng tôi có thể tạo bản ghi trong bảng công ty của chúng tôi được tạo trong ví dụ trên -

1

Khi chương trình đã cho ở trên được thực thi, nó sẽ tạo các bản ghi đã cho trong bảng công ty và sẽ hiển thị hai dòng sau -

2

Chọn Hoạt động

Chương trình PHP sau đây cho thấy cách chúng tôi có thể tìm nạp và hiển thị các bản ghi từ bảng công ty của chúng tôi được tạo trong ví dụ trên -

3

Khi chương trình đã cho ở trên được thực hiện, nó sẽ tạo ra kết quả sau đây. Giữ một lưu ý rằng các trường được trả về trong chuỗi chúng được sử dụng trong khi tạo bảng.

4

Cập nhật hoạt động

Mã PHP sau đây cho thấy cách chúng tôi có thể sử dụng câu lệnh Update để cập nhật bất kỳ bản ghi nào và sau đó tìm nạp và hiển thị các bản ghi được cập nhật từ Bảng công ty của chúng tôi -

5

Khi chương trình đã cho ở trên được thực thi, nó sẽ tạo ra kết quả sau -

6

Xóa hoạt động

Mã PHP sau đây cho thấy cách chúng tôi có thể sử dụng câu lệnh Xóa để xóa bất kỳ bản ghi nào và sau đó tìm nạp và hiển thị các bản ghi còn lại từ Bảng công ty của chúng tôi -

7

Khi chương trình đã cho ở trên được thực thi, nó sẽ tạo ra kết quả sau -

8

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

PHP $ db_handle = pg_connect ("host = localhost dbname = edb user = EnterpRedB password = postgres"); if ($ db_handle) {echo 'cố gắng kết nối đã thành công. '; } khác {Echo 'cố gắng kết nối không thành công. '; } echo "thông tin kết nối"; echo "Tên cơ sở dữ liệu:".

PHP có hoạt động với postgres không?

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.Để kết nối với PostgreSQL bằng các hàm gốc, hãy làm theo các bước sau: Sử dụng mã PHP sau để kết nối với PostgreSQL và chọn cơ sở dữ liệu.. To connect to PostgreSQL using native functions, follow these steps: Use the following PHP code to connect to PostgreSQL and select a database.

Php hỗ trợ kết nối postgresql như thế nào?

Mô tả pg_connect () mở kết nối với cơ sở dữ liệu PostgreSQL được chỉ định bởi Connection_String.Nếu cuộc gọi thứ hai được thực hiện cho pg_connect () với cùng một kết nối_string như kết nối hiện có, kết nối hiện có sẽ được trả về trừ khi bạn vượt qua pGSQL_CONNECT_FORCE_NEW dưới dạng cờ.pg_connect() opens a connection to a PostgreSQL database specified by the connection_string . If a second call is made to pg_connect() with the same connection_string as an existing connection, the existing connection will be returned unless you pass PGSQL_CONNECT_FORCE_NEW as flags .

Làm cách nào để kết nối với kết nối PostgreSQL?

Để kiểm tra kết nối với cơ sở dữ liệu PostgreSQL:..
Mở cửa sổ thiết bị đầu cuối ..
Thay đổi thành thư mục BIN Postgres.....
Nhập SU - Postgres và nhấn Enter.....
Nhập ./psql, cơ sở dữ liệu tên máy chủ và nhấn Enter.....
Nếu bạn đã kết nối thành công, bạn sẽ thấy một tin nhắn tương tự, ví dụ dưới đây ..