Неустранимая ошибка: Не удалось получить ошибку: класс 'mysqli' не найден в / var / www / html / [duplicate]

Предполагая, что вы не используете jQuery или какую-либо другую библиотеку, которая упрощает вам эту задачу, вы можете просто использовать свойство innerHTML элемента.

document.getElementById("content").innerHTML = "whatever";
72
задан Peter Mortensen 9 February 2016 в 22:11
поделиться

14 ответов

Похоже, вам просто нужно установить MySQLi .

Если вы считаете, что сделали это и все еще имеете проблемы, отправьте свою операционную систему и все остальное, что может помощь.

68
ответ дан Greg 21 August 2018 в 20:37
поделиться

Если вы вызываете «новый mysqli (..)» из класса с пространством имен, вы можете увидеть аналогичную ошибку Fatal error: Class 'foo\bar\mysqli' not found in. Способ исправить это заключается в том, чтобы явно установить его в корневое пространство имен с предыдущим обратным слэшем следующим образом:

<?php 
$mysqli = new \MySQLi($db_server, $db_user, $db_pass, $db_name) or die(mysqli_error());
11
ответ дан alexkb 21 August 2018 в 20:37
поделиться

Помимо раскомментации расширения php_mysqli.dll в php.ini , также раскомментируйте директиву extension_dir в php.ini и укажите свое местоположение:

extension_dir = "C:\software\php\dist\ext"

Это заставило его работать на меня.

9
ответ дан Andrew Elliott 21 August 2018 в 20:37
поделиться
  • 1
    Он работал для меня, но с ./ext, который является относительным путем. И мне пришлось переименовать php.ini-development в php.ini и раскомментировать в этом файле extension=php_mysqli.dll. О, мальчик, я не пропустил тебе PHP. – Overdrivr 18 March 2017 в 13:48

Как включить mysqli в php.ini

  1. Измените / раскомментировать, удалив ';' (двоеточие) следующую конфигурацию в php.ini: 1 (uncomment и add config): include_path = «C: \ php \ includes» 2nd (uncomment): extension_dir = «ext» 3rd (uncomment и edit config): extension = C: /PHP/ext/php_mysql.dll extension = C: /PHP/ext/php_mysqli.dll
  2. Перезапустить сервер IIS
  3. Убедитесь, что mysql запущен в системе.

Как загрузить файл php.ini

  1. Переименуйте любой из файлов php.ini-production / php.ini-development в php.ini из C: \ PHP (обратите внимание, что расширение будет ini, то есть «php.ini»).
  2. После переименования на сервер перезагрузки сервера php.ini
  3. См. изменения в http: //localhost/phpinfo.php
1
ответ дан Gani 21 August 2018 в 20:37
поделиться

PHP zip включает большинство распространенных расширений (* .dll в таких окнах, как php_mysqli.dll) в каталоге \ ext, но по умолчанию они не включены. Вы можете получить эту Неустранимая ошибка при попытке использовать MySQLi:

( ! ) Fatal error: Uncaught Error: Class 'mysqli' not found in C:\myProject\ class.Database.php on line 24

Чтобы включить расширения, откройте php.ini (вам может потребоваться сначала скопировать php.ini-development как php.ini) и un-comment (или добавить) эти две строки:

extension_dir = "ext"

И любые конкретные расширения, которые вы получаете Fatal Errors для, т. е. для mysqli:

extension=mysqli
0
ответ дан Griknok 21 August 2018 в 20:37
поделиться

на ubuntu:

sudo apt-get install php-mysql
sudo service apache2 restart
0
ответ дан hue23289 21 August 2018 в 20:37
поделиться

Я думал, что могу помочь кому-либо с той же проблемой, используя серверы Namesco. Я пытался решить эту проблему после перемещения базы данных с моего локального сервера на домашнем компьютере в namesco. Они не помогли бы им сказать, что это проблема кодирования.

  • Однако было легко исправить их с помощью интерфейса хостинга CPANEl LINUX.
  • Нажмите на php.
  • , затем щелкните на php-модулях и из их списка предустановленных модулей просто щелкните поле для mysqli.
  • Затем нажмите «Сохранить». (Не нужно менять код, если он работал на другом сервере.)

К сожалению, их статьи поддержки были пустой тратой времени. Прочитав это, я пошел в админ-интерфейс с новым определением.

Спасибо, всем.

1
ответ дан JustBaron 21 August 2018 в 20:37
поделиться

Вы можете проверить, присутствуют ли библиотеки mysqli, выполнив этот код:

if (!function_exists('mysqli_init') && !extension_loaded('mysqli')) {
    echo 'We don\'t have mysqli!!!';
} else {
    echo 'Phew we have it!';
}
41
ответ дан karim79 21 August 2018 в 20:37
поделиться
  • 1
    Я все еще получаю «У нас нет mysqli !!! & quot; даже после запуска `sudo apt-get install php5-mysqlnd`? – Banned_User 1 January 2015 в 20:29
  • 2
    Я получаю «У нас есть это, но я все равно получаю ту же ошибку, что класс« msqli »не найден в ... каких-либо идеях? – WCA 17 August 2018 в 01:27
<?php  /* If the error is due to calling mysqli in a class */

    class dbconnect extends mysqli{

        private $host = 'localhost';
        private $user = 'root';
        private $pass = '';
        private $db = 'test';

        public function __construct() {
            parent::__construct($this->host, $this->user, $this->pass, $this->db);

            if (mysqli_connect_error()) {
                die('Connect Error (' . mysqli_connect_errno() . ') ' .
                    mysqli_connect_error());
            }
        }
    }
?>
34
ответ дан Peter Mortensen 21 August 2018 в 20:37
поделиться
  • 1
    И не забудьте перезапустить Apache после этого! – fracz 23 March 2015 в 00:27
  • 2
    @fracz Перезапуск Apache - это та часть, которую я забыл. Я только перезапустил MySQL. Благодарю. – James 17 May 2015 в 16:59
  • 3
    Я побежал. ошибка сохраняется. – Hermann Ingjaldsson 3 August 2015 в 12:07
  • 4
    Этого недостаточно. Мне все еще не хватало пакета php5-mysql. Используйте sudo apt-get -y install php5-mysql php5-mysqlnd, чтобы получить оба. Это то, что вам не хватало, @Hermann Ingjaldsson? – Balmipour 17 September 2015 в 00:33
  • 5
    это была некоторая ошибка конфигурации. [Д0] stackoverflow.com/questions/31535173/… – Hermann Ingjaldsson 17 September 2015 в 07:22

Это решило исходную ошибку «не найден» для меня. Обратите внимание на обратную косую черту, теперь это выглядит как сон.

$ mysqli = new \ MySQLi ($ db_server, $ db_user, $ db_pass, $ db_name) или умереть (mysqli_error ());

]
0
ответ дан Rob Baartwijk 21 August 2018 в 20:37
поделиться

Я проверил все выше, и это не сработало для меня,

Есть несколько шагов, которые я нашел.

Я использовал PHP Version 5.5.9-1ubuntu4.17 на Ubuntu 14.04

Сначала проверьте папку

#ls /etc/php5/mods-available/
json.ini  mcrypt.ini  mysqli.ini  mysql.ini  mysqlnd.ini  opcache.ini  pdo.ini  pdo_mysql.ini  readline.ini  xcache.ini

Если она не содержит mysqli.ini, прочитайте другой ответ для ее установки,

Откройте php.ini find extension_dir

В моем случае я должен установить extension_dir = /usr/lib/php5/20121212

и перезапустить apache2: /ect/init.d/apache2 restart

0
ответ дан vanduc1102 21 August 2018 в 20:37
поделиться

Похоже на проблему с вашей установкой.

  • Установили ли вы MySQLi?
  • Вы активировали его в php.ini?

http://www.php.net/manual/en/mysqli.installation.php

2
ответ дан vartec 21 August 2018 в 20:37
поделиться
0
ответ дан Klaus-Peter Ow Lex 4 November 2018 в 17:44
поделиться
34
ответ дан Peter Mortensen 4 November 2018 в 17:44
поделиться
Другие вопросы по тегам:

Похожие вопросы: