Penso che l'oggetto PDO non sia valido, perché stai usando virgolette doppie con metodo/proprietà dell'oggetto, in tal caso devi usare la notazione di stringa complessa("{$object->property}"
) o unisci stringhe con .
(un punto)
$this->db_conn = new PDO("mysql:host=$this->db_host;dbname=$this->db_name", $this->db_user,$this->db_pass);
cambia in:
$this->db_conn = new PDO("mysql:host={$this->db_host};dbname={$this->db_name}", $this->db_user,$this->db_pass);