Intereting Posts
Почему приложение Symfony2 тратит 70-90% своего времени на анализ YAML? Laravel: Где хранить данные и константы глобальных массивов? Как рассчитать разницу во времени с графиком, работающим с двумя марками времени? Использование DLL с PHP для чайников Почему я получаю Неустранимая ошибка: исключить исключение «GuzzleHttp \ Exception \ RequestException» с сообщением «ошибка cURL 60 Как установить модули MySQL в PHP? Как преобразовать строку в алфавитно-цифровое и преобразовать пробелы в тире? Не удалось выполнить запрос SELECT в подготовленном сообщении Symfony2, настройка хранилища сеансов pdo в базе данных Zend: перенаправление на действие с параметрами Добавление CSS в PHP PHP :: DOTNET загружает каждую ошибку загрузки страницы Детальная форма электронной почты в Sencha Touch, предоставляющая исключение Как указать маршрут с параметром в paginationControl? Запрос Mysqli с статусом переменной SET (т. Е. Несколькими запросами)

Вызов функции-функции-члена () для не-объекта в запросе ()?

class MySQLDatabase { private $connection; function __construct(){ $this->open_connection(); } public function open_connection(){ $this->connection = mysql_connect(DB_SERVER,DB_USER,DB_PASS); if(!$this->connection){ die("Database connection failed: ". mysql_error()); } else { $db_select = mysql_select_db(DB_NAME,$this->connection); if(!$db_select){ die("Database connection failed: ". mysql_error()); } } } public function close_connection(){ if(isset($this->connection)){ mysql_close($this->connection); unset($this->connection); } } public function query($sql){ $result = mysql_query($sql,$this->connection); $this->confirm_query($result); return $result; } public function fetch_array($result_set){ return mysql_fetch_array($result_set); } public function num_rows($result){ return mysql_num_rows($result); } public function affected_rows(){ return mysql_affected_rows($this->connection); } private function confirm_query($result){ if(!$result){ die("Database query failed: ". mysql_error()); } } } $db = new MySQLDatabase(); 

это другой бит {read.php}

 require_once("db.php"); class Read{ private $table_name= "real_estate"; private $column_name = "Property_type"; function __construct(){ } public function pro_type() { global $db; var_dump($db); echo "<select name='".$this->column_name."'>"; $sql = sprintf("SELECT COLUMN_TYPE FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = '%s' AND COLUMN_NAME = '%s'",$this -> table_name,$this ->column_name); $result = $db-> query($sql); $row = $db->fetch_array($result); $enumList = explode(",", str_replace("'", "", substr($row['COLUMN_TYPE'], 5, (strlen($row['COLUMN_TYPE'])-6)))); foreach($enumList as $value) echo "<option value=$value>$value</option>"; echo "</select>"; } } 

link.php

 require_once("read.php"); $link = new Read(); 

index.php

 <?php include '../inc/link.php'; $link -> pro_type(); ?> 

Каждая вещь кажется идеальной, но она дает сообщение об ошибке, говорящее, что запрос вызывается на не-объект. Я на самом деле назвал $ db в другом скрипте, но ничего не работает.

Как выглядит вызов в другом скрипте? Должно быть что-то вроде этого:

 require_once('includes/mysql.php'); // Where your MySQLDatabase class resides if(class_exists('MySQLDatabase')) { $db = new MySQLDatabase(); // Should work from here $db->query("SELECT * FROM `table` WHERE 1"); } else { die('Unable to load class.'); }