Чтобы получить доступ к свойству класса из метода класса, вы должны использовать $this->propertyName
, а не $this->$propertyName
.
Что означает, что ваш user_input()
метод должен быть написан так:
function user_input() {
$this->db_host = 'localhost';
$this->db_user = 'root';
$this->db_name = 'input_oop';
$this->db_table = 'users';
}
(возможно, вам придется сделать такую же модификацию для других мест)
С тем, что вы написали, $this->db_user
никогда не устанавливается; и позже, при использовании этого:
$dbc = mysql_connect($this->db_host , $this->db_user, "")
$this->db_user
равно нулю; это означает, что mysql_connect
будет использовать значение по умолчанию - которое, в вашем случае, кажется, ODBC
, судя по сообщению об ошибке.
(то же самое с другими свойствами - но я взял это в качестве примера, так как значение по умолчанию ODBC
присутствовало в опубликованном вами сообщении об ошибке: это был наиболее очевидный выбор.)