PDO не может подключиться к MySql (Phpmyadmin) - PullRequest
0 голосов
/ 09 декабря 2018

Привет, я действительно новичок в этом деле, поэтому я пытаюсь объяснить очень конкретно, в чем заключается моя проблема, и я изучил другие вопросы по stackoverflow, но это все еще не решает мою проблему.

Я следую некоторым инструкциям по PHP в YouTube и тестирую их с помощью xampp localhost.и все работает, без ошибок.

Проблема в том, что я хочу загрузить этот проект онлайн, используя мой университетский сервер.поэтому я скопировал весь проект и изменил имя базы данных, пароль, имя базы данных и т. д.

Учитель на YouTube упомянул, что он использует PDO для подключения к моему SQL.но после того, как я скопировал весь проект и протестировал его с моим университетским сервером, он показывает только пустую страницу, не сообщая мне об ошибке.так что я не знаю, в чем здесь проблема

, поэтому для подключения к базе данных он сделал 2 файла, которые являются config.php и database.php

, вот конфиг.php код:

<?php define("DB_HOST", "localhost");
define("DB_USER", "user");
define("DB_PASS", "password");
define("DB_NAME", "name");
define("SITE_TITLE", "Easy Job"); ?>

и вот код database.php

<?php 
class Database{
private $host = DB_HOST;
private $user = DB_USER;
private $pass = DB_PASS;
private $dbname = DB_NAME;

private $dbh;
private $error;
private $stmt;

public function __construct(){
  //Set DSN
  $dsn = 'mysql:host='. $this->host . ';dbname='. $this->dbname;

  //options
  $options = array(
        PDO::ATTR_PERSISTENT => true,
        PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION
  );

  // PDO Instance
  try {
    $this->dbh = new PDO($dsn, $this->user, $this->pass, $options);
  } catch(PDOException $e) {
      $this->error = $e->getMessage();
  }
}

public function query($query){
  $this->stmt = $this->dbh->prepare($query);

}

public function bind($param, $value, $type = null){
    if(is_null($type)){
        switch(true){
            case is_int ( $value ) :
              $type = PDO::PARAM_INT;
              break;

            case is_bool ( $value ) :
              $type = PDO::PARAM_BOOL;
              break;

            case is_null ( $value ) :
              $type = PDO::PARAM_NULL;
              break;

            default :
              $type = PDO::PARAM_STR;

        }
    }
    $this->stmt->bindValue($param, $value, $type);
}

public function execute(){
  return $this->stmt->execute();
}

public function resultSet(){
  $this->execute();
  return $this->stmt->fetchAll(PDO::FETCH_OBJ);
}

public function single(){
  $this->execute();
  return $this->stmt->fetch(PDO::FETCH_OBJ);
}
} ?>

, поэтому еще раз моя проблема после того, как я скопирую весь файлна сервер, он просто показывает пустую страницу, не сообщая мне, в чем ошибка.

большое спасибо за ваше внимание и вашу помощь.

...