Phppgadmin, объектов не найдено

Я пытаюсь получить мой localhost db в списке в phpPgAdmin, но он говорит, что объект не найден phppgadmin GUI

Я уже настроил conf / config.inc

$conf['servers'][0]['desc'] = 'PostgreSQL'
$conf['servers'][0]['host'] = 'localhost';
$conf['servers'][0]['port'] = 5432;
$conf['owned_only'] = false;

Любая помощь, пожалуйста, я пытался с Postgresql версии 9.2,9.5,10.3 (не поддерживается phppgadmin?)

1

Решение

ОБЪЯСНЕНИЕ ПРОБЛЕМЫ

Я вижу проблему! Это сообщение об ошибке является ошибкой в ​​коде phpPgAdmin, который, очевидно, имеет более старый код, который был написан до PHP 7.x был выпущен.

Ошибка в phpPgAdmin появится, если вы недавно загрузили технологический стек со всеми последними версиями PHP, PostGreSQL и phpPgAdmin. Например … сегодняшние (февраль 2019) последние версии:

  • PHP 7.3.1
  • PostGreSQL версия 11
  • phpPgAdmin 5.6 (12 ноября 2018 г.) <= Это не работает с PHP 7.x, но мы хотим, чтобы он работал с ним, и мы можем заставить его работать с ним!

PHP.net объясняет проблему в их Конструкторы и деструкторы страница:

Предупреждение. Конструкторы старого стиля УСТАРЕЛИ в PHP 7.0 и будут
удалено в будущей версии. Вы всегда должны использовать __construct () в
новый код

Их пример в этом разделе на этой странице:

Пример # 2 Конструкторы в классах пространства имен

<?php
namespace Foo;
class Bar {
public function Bar() { <- This is an older style of creating a constructor.
For PHP 7.x, it should be changed to "__construct" instead of "Bar".
// treated as constructor in PHP 5.3.0-5.3.2
// treated as regular method as of PHP 5.3.3
}
}
?>

Теперь, когда мы знаем, в чем заключается проблема, вот как ее решить.

РЕШЕНИЕ

Посмотри в свой /phpPgAdmin/ папка на вашем веб-сервере. Вы должны найти следующие файлы в /classes/ подпапка:

  • ArrayRecordSet.php <- заменить function ArrayRecordSet с function __construct
  • class.select.php <- заменить function XHtmlSimpleElement с function __construct
  • Gui.php <- заменить function GUI с function __construct
  • Misc.php <- заменить function Misc() с function __construct
  • plugin.php <- уже есть function __construct
  • PluginManager.php <- уже есть function __construct

Редактировать эти файлы & изменить любое из имен конструктора, которые отображаются как дублирующиеся имена классов, на __construct,

Когда вы сохраняете эти файлы & перезагрузите phpPgAdmin в вашем браузере, и вы увидите, что сообщение «Объекты не найдены» исчезнет. Затем будет отображено имя сервера.

Вуаля! Последняя версия phpPgAdmin 5.6 работает с последней версией PHP 7.3.1. & последняя версия PostGreSQL 11!

Если вы хотите проверить содержимое XML этого левого дерева, просто добавьте это на свой веб-сайт, так как это остальная часть URL, который он использует: /phppgadmin/servers.php?action=tree, Это поможет упростить отладку кода phpPgAdmin.

Вы также можете удалить action=tree параметр строки запроса. Или найдите его внутри кода phpMyAdmin.

СООБЩЕНИЕ ОБ ОШИБКЕ

Я посмотрю о подаче Отчет об ошибке phpPgAdmin со ссылкой на эту страницу. Надеюсь, кто-то исправит эту ошибку в базе кода phpPgAdmin.

Получайте удовольствие, используя последнюю версию phpPgAdmin, PHP & PostGreSQL!

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]