Попытка получить соединение PDO для установки - PullRequest
0 голосов
/ 03 мая 2018

Я работал над тем, чтобы установить соединение PDO в классе на лучшую половину дня. Моя проблема в том, что, как только я пытаюсь нажать new PDO(...), я ничего не получаю, без ошибок ничего. Все, что у меня будет после этого, никогда не будет работать, но моя консоль все еще будет работать, ожидая ввода. Я попытался подключиться в нескольких местах, включая файл «Драйвер», где он снова ничего не делает после запуска инстанцирования new PDO(...). Вот часть моего класса базы данных:

namespace App\Database;
class MySQL
{
    private $Host;
    private $DBName;
    private $DBTable;
    private $DBUser;
    private $DBPassword;
    private $DBPort;
    private $PDO;
    private $parameters;
    private $bConnected = false;
    public $querycount = 0;

    function __construct($DBName, $DBTable)
    {
        $this->Host = getenv("DATABASE_HOST");
        $this->DBPort =  getenv("DATABASE_PORT");
        $this->DBUser = getenv("DATABASE_USER");
        $this->DBPassword = getenv("DATABASE_PASSWORD");
        $this->DBName = $DBName;
        $this->DBTable = $DBTable;
        $this->Connect();
        $this->$parameters = array();
    }
    private function Connect()
    {
        try{
            echo "I am the good child and always print".PHP_EOL;
            $this->PDO = new PDO("mysql:host=localhost;port=33061;dbname=store", "root", "password");
            echo "Please Print Me <3".PHP_EOL;
            $this->bConnected = true;
        } catch (PDOException $e){
            echo $e->getMessage();
            die();
        }
    }

Я проверил значения для Host, DBPort и т. Д., И в этом коде ниже все их значения жестко запрограммированы, поэтому ничего не должно быть неправильным из-за форматирования вставки переменных в соответствующие им слоты. Я знаю, что PDO включен, потому что я могу использовать его в других проектах, но мой улов ничего не улавливает, я могу запустить первый эхо, но второй никогда не появляется. Любая помощь будет потрясающей, потому что в этот момент я ломаю голову над тем, почему я не могу заставить это подключиться.

Спасибо!

Если мне неясно, я могу попытаться дать ясность, и я также могу показать файл драйвера, если это необходимо, но в основном, это просто вызов конструктора, и функция connect вызывает у нас проблемы.

1 Ответ

0 голосов
/ 04 мая 2018

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

Спасибо за ваше время и помощь!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...