Использование строковой переменной $ dsn в качестве параметра в базе данных PDO

Цель: просто получить массив из базы данных MySQL.

Проблема: я использую переменную $ dsn «string variable» как параметр в заявлении PDO, но, похоже, это неперехваченное исключение, и оно имеет какое-то отношение к вызову драйвера или конструкции PDO -> __) – я не конечно. Есть ли у вас какие-либо идеи относительно того, как исправить строковую переменную $ dsn или другие области этого кода, которые могут привести к ее провалу? Заранее спасибо.

// Определение параметров базы данных

$dbhost = "localhost"; $dbname = "x"; $dbuser = "y"; $dbpass = "z"; 

// Invoke Driver (как переменная строка)

  $dsn = "mysql:host=$dbhost;dbname=$dbname"; 

// Подключение к вновь созданному объекту db

  $dbh = new PDO($dsn, $dbuser, $dbpass); 

// Установите режим ошибки PDO для включения исключений

      $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $dbh->setAttribute(PDO::ATTR_EMULATE_PREPARES, false); 

    // Выполнение запроса к базе данных

      $sql = "SELECT * FROM a_aif_remaining"; $sth = $dbh->prepare($sql); $sth->execute(); 

    // Представляем результаты запроса

      print("PDO::FETCH_ASSOC: "); print("Return next row as an array indexed by column name"); $result = $sth->fetch(PDO::FETCH_ASSOC); print_r($result); print(""); return $results; 

    // Закрыть соединение db

      $dbh = NULL; ?> 

    Related of "Использование строковой переменной $ dsn в качестве параметра в базе данных PDO"