Notice: Array to string conversion in C:\xampp\xampp\htdocs\classes\DB.php on line 21
Warning: PDO::__construct(): php_network_getaddresses: getaddrinfo failed: No such host is known. in C:\xampp\xampp\htdocs\classes\DB.php on line 21
SQLSTATE[HY000] [2002] php_network_getaddresses: getaddrinfo failed: No such host is known.
Это дает мне эту ошибку, когда она находится на XAMPP, но когда я помещаю ее на живой сервер, она работает нормально, я знаю, что учетные данные БД верны, я использую текущую версию XAMPP (по состоянию на вчерашний день) для окон и использования Apache 2 на реальном сервере, как с MySql.SQLSTATE [HY000] [2002] php_network_getaddresses: getaddrinfo не удалось: такой хост не известен. Ошибка PHP
Линия 18-25:
// Takes values from 'config.php' and uses them to connect
private function __construct() {
try {
$this->_pdo = new PDO('mysql:host=' . Config::get('msql/host') . ';dbname=' . Config::get('mysql/db'), Config::get('mysql/username'), Config::get('mysql/password'));
} catch(PDOException $e) {
die($e->getMessage());
}
}
И это, где массив установлен:
// Sets the config valuses
$GLOBALS['config'] = array(
'mysql' => array(
'host' => '127.0.0.1',
'username' => 'root',
'password' => 'password',
'db' => 'site'
),
'remember' => array(
'cookie_name' => 'hash',
'cookie_expiry' => 604800
),
'session' => array(
'session_name' => 'user'
)
);
И класс конфигурации:
class Config {
public static function get($path = null) {
if($path) {
$config = $GLOBALS['config'];
$path = explode('/', $path);
foreach($path as $bit) {
if(isset($config[$bit])) {
$config = $config[$bit];
}
}
return $config;
}
return false;
}
}
Попробуйте 'var_dump (Config :: get ('msql/host'))' (а также другие), чтобы узнать, что вы получаете. Ясно, что (по крайней мере) один из них является массивом. –
Выбрал ошибку, но появился новый, «Ошибка синтаксиса: ошибка синтаксиса, неожиданность»; в C: \ xampp \ xampp \ htdocs \ classes \ DB.php в строке 21 ". – Carefree4
Вы добавили ';' после строки 'var_dump'? –