Hướng dẫn class mysqli not found windows - lớp mysqli không tìm thấy cửa sổ

Tôi đã cài đặt Apache và PHP và chạy nó và chạy (tôi có thể truy cập php.ini qua localhost). Tôi đang cố gắng truy cập mã mysqli và không thể tìm thấy nó. Tập lệnh sau đây cho biết MySQLI không tồn tại.

if (!function_exists('mysqli_init') && !extension_loaded('mysqli')) {
    echo 'We don\'t have mysqli!!!';
} else {
    echo 'Phew we have it!';
}

Tôi đã sửa đổi tệp php.ini thành tiện ích mở rộng Uncomment = php_mysqli.dll cũng như windows extension_dir (extension_dir = "ext")

PHP nằm trong C:/PHP

Hỏi ngày 19 tháng 10 năm 2016 lúc 19:19Oct 19, 2016 at 19:19

Hướng dẫn class mysqli not found windows - lớp mysqli không tìm thấy cửa sổ

7

Tôi đã phải thay đổi phần mở rộng_dir = "ext" thành "c:/php/ext"

Đã trả lời ngày 19 tháng 10 năm 2016 lúc 20:06Oct 19, 2016 at 20:06

YitzhakyitzhakYitzhak

3431 Huy hiệu vàng3 Huy hiệu bạc14 Huy hiệu đồng1 gold badge3 silver badges14 bronze badges

1

Một lỗi phổ biến xảy ra, đặc biệt đối với người mới đến, đối với SQL Development là một lỗi nghiêm trọng khi cố gắng tham khảo lớp MySQLI như:

Hướng dẫn class mysqli not found windows - lớp mysqli không tìm thấy cửa sổ

Fatal error: Class 'MySQLi' not found ([URL]) on line [X]

Vấn đề

Vấn đề được gây ra ở đây là lớp học, trong trường hợp này là ‘MySQLI, không thể được khởi tạo. Quên trong một khoảnh khắc rằng đây là vấn đề MySQLI và xem xét rằng đó thực sự là một vấn đề mà bạn có thể gặp phải với bất kỳ sự phát triển lập trình hướng đối tượng nào. Vấn đề cơ bản ở đây là bạn đang cố gắng tải một lớp học hoặc không thể tìm thấy.

Khởi tạo lớp MySQLI

Bạn có thể sẽ sử dụng một chút mã đơn giản để khởi tạo lớp MySQLI của bạn. Cái gì đó như:

$mysqli = new MySQLi($db_server, $db_user, $db_password, $db_name);
  • $ mysqli - Đây là đối tượng mà bạn muốn tham chiếu đến phiên bản MySQLI mới được lưu trữ.
  • $ db_server - địa chỉ đến máy chủ cơ sở dữ liệu của bạn.
  • $ db_user-Tên người dùng để sử dụng với cơ sở dữ liệu của bạn (toàn bộ máy chủ hoặc cụ thể là cơ sở dữ liệu).
  • $ db_password - mật khẩu cho người dùng cơ sở dữ liệu được lưu trữ trong $ db_user
  • $ db_name - Bảng cơ sở dữ liệu mà bạn muốn truy cập.

Nó luôn luôn có giá trị kiểm tra kép cả cấu trúc của mã khởi tạo của bạn để đảm bảo không có lỗi chính tả hoặc các tham số bị thiếu vì đây là nguyên nhân phổ biến. Ngoài ra kiểm tra kỹ tất cả các chi tiết bạn đang cung cấp trong các tham số của bạn.

Kiểm tra cài đặt MySQLI của bạn

Một lý do phổ biến cho lỗi trên xảy ra chỉ đơn giản là quên cài đặt MySQLI. Điều này có thể dễ dàng được thực hiện cục bộ trong quá trình phát triển bằng cách truy cập trang web PHP để cài đặt MySQLI. Trên các máy Windows, bạn có thể sẽ thấy rằng bạn không phải là người (hoặc thiên đường) phải thực hiện việc này bằng tay nếu bạn đã sử dụng trình cài đặt nhị phân. Tiện ích mở rộng MySQLI được bật theo mặc định cho phiên bản PHP 5.3.0 trở đi.

Nếu bạn đã sử dụng trình cài đặt nhị phân và nó vẫn không hoạt động, cố gắng cài đặt lại PHP để xem liệu nó có giải quyết được vấn đề vì có thể đã có một cài đặt hoặc cấu hình không thành công mà không hoàn thành chính xác.

Nếu bạn đang chạy mã của mình trên AWS, bạn có thể sử dụng một lệnh như:

sudo yum install php71-mysqli

Điều này sẽ kích hoạt việc cài đặt MySQLI.

Để cài đặt trình điều khiển gốc trên Linux, bạn sẽ cần một cái gì đó như:

sudo apt-get install php-mysqlnd

Những thứ cần kiểm tra kỹ khi khởi tạo lớp MySQLI

Nếu bạn vẫn gặp khó khăn trong việc khởi tạo lớp MySQLI sau khi kiểm tra cài đặt, bạn có thể thử các độ phân giải chung sau đây cho các vấn đề:

  • Bạn đã bao gồm một cuộc gọi cấu trúc tốt cho Trình xây dựng MySQLI
  • Các giá trị cho các tham số/biến của bạn đã được khởi tạo trước cuộc gọi
  • Các giá trị được truyền cho hàm tạo MySQLI là chính xác.
  • Người dùng cơ sở dữ liệu được chỉ định tồn tại và có các đặc quyền cho bảng bạn đã chỉ định - truy cập toàn cầu hoặc người dùng cụ thể cơ sở dữ liệu.
  • Bảng cơ sở dữ liệu bạn đang truyền tồn tại.

Hy vọng điều đó sẽ giúp! Nếu bạn có thêm bất kỳ lời khuyên hoặc vấn đề nào, hãy bỏ chúng trong các ý kiến ​​dưới đây!

Xin chào! Tôi là người mới cho môi trường PHP. Tôi đã cố gắng thực thi mã của mình với XAMPP và ATOM. Nhưng tôi gặp lỗi này; Lỗi gây tử vong: Lỗi không bị ảnh hưởng: Lớp 'MySQLI' không tìm thấy trong ..... "Đường dẫn dự án". Tôi đã cố gắng chạy phpinfo và tôi nhận được cái này,Fatal error: Uncaught Error: Class 'mysqli' not found in ....."path of project". I tried to run phpinfo and I get this,

Ngày xây dựngNgày 14 tháng 4 năm 2020 16:10:43
API máy chủMáy chủ HTTP tích hợp
Đường dẫn cấu hình (Php.ini)C: \ Windows
API PHP20190902 Php phiên bản 7.4.5

Tôi cũng đã cố gắng để chạy;

if (! function_exists ('mysqli_init') &&! extension_loaded ('mysqli')) {

echo 'chúng tôi không có mysqli !!!';

} khác {

echo 'phew chúng ta có nó!';

}

Nó hiển thị "Chúng tôi không có mysqli!". Tôi cũng đã thay đổi các hàng trong tệp php.ini thành đúng cách mà php.net bảo chúng tôi thay đổi nó. Nhưng nó không hoạt động:/. Đồng nghiệp của tôi và tôi đã cài đặt mọi thứ cùng một lúc và các ứng dụng tương tự. Anh ta có thể chạy một trang web mà không có bất kỳ lỗi nào khi sử dụng XAMPP và ATOM nhưng tôi không thể thoát khỏi vấn đề kỳ lạ này. Tôi đã kiểm tra gấp đôi thông tin kết nối cơ sở dữ liệu của mình và tất cả các điều kiện và thông tin cần thiết là chính xác.

Các mã mà tôi đã cố gắng kết nối với DB của tôi là;

https://www.php.net/manual/tr/mysqli.error.php

và,

$ dbhost = "localhost";

$ dbuser = "userid";

$ dbpass = "pwd";

$ db = "dbname";

$ Conn = new \ mysqli ($ dbhost, $ dbuser, $ dbpass, $ db) hoặc die ("Kết nối không thành công: %s \ n". $ Conn -> lỗi);

trả lại $ Conn;

Và các truy vấn dựa trên SQL bên dưới ... Vấn đề là, điều gì có thể gây ra vấn đề này cho tôi không thể chạy trang dự án ngay cả đồng nghiệp của tôi có thể chạy dễ dàng? Cả hai chúng tôi sử dụng Windows10 BTW.

Làm cách nào để sửa tiện ích mở rộng mysqli bị thiếu?

Thực hiện theo điều này:..
Truy cập PHP_MYSQLI của bạn.đường dẫn dll (trong trường hợp của tôi: c:/xampp/php/ext) ;.
Di chuyển PHP_MYSQLI.DLL cho thư mục trước (c:/xampp/php) ;.
Mở PHP.....
Thay đổi theo đường dẫn tệp của bạn ở đâu: Extension = "C: \ Xampp \ Php \ php_mysqli. ....
Khởi động lại ứng dụng của bạn (WAMPP, XAMPP, v.v.).

Làm thế nào để tôi biết nếu mysqli được cài đặt?

Kiểm tra xem MySQLI có được cài đặt không, bạn có thể thực hiện điều đó bằng cách truy cập trang phpinfo () mà bạn đã thực hiện hoặc bằng cách chạy lệnh này: PHP -M |grep mysqli.php -m | grep mysqli.

MySQLI có phải là một lớp trong PHP không?

Lớp MySQLI thể hiện kết nối giữa cơ sở dữ liệu PHP và MySQL.Represents a connection between PHP and a MySQL database.

Làm thế nào cấu hình mysqli trong PHP?

Mở tệp php.ini của bạn (tệp cấu hình PHP) bên trong thư mục PHP của bạn (hoặc thư mục Windows) .Search cho MySQLI và bật DLL bằng cách xóa;trước nó.Bạn có thể phải khởi động lại hệ thống của bạn. ini file ( php configuration file ) inside your PHP directory ( or windows directory ) . Search for mysqli and enable the dll by removing ; before it. You may have to re-boot your system.