Я думаю, у вас есть переменные, определенные в глобальной области, но вы пытаетесь использовать их в локальной области.
Чтобы подтвердить проблему области именования, попробуйте:
require 'accounts.php';
function guestConnection() {
global $host, $database, $guestAccount, $guestPassword;
try {
$conn = new PDO("pgsql:host=$host;dbname=$database", $guestAccount, $guestPassword);
...
Это должно работать, если вашguestConnection()
находится в глобальной области видимости вне какого-либо пространства имен или класса.
или действительно требуется переместить из try
, чтобы получить ошибки, если они есть (файл не существует?):
function guestConnection() {
require('accounts.php');
try {
$conn = new PDO("pgsql:host=$host;dbname=$database", $guestAccount, $guestPassword);
...