2013-03-23 2 views
-2

Я создал класс под названием class.admin.php, который выполняет некоторую проверку. У меня есть файл, который вызывает класс, который отлично работает, где он пытается выбрать db.php mysql_select_db не работает

Когда я запустил mysql_select_db() or die Я получаю сообщение об ошибке «База данных не выбрана».

class.admin.php

class admin { 

    ### Function that check for the connect file (if it exists) 
    public function checkConnector() { 
     if(file_exists(CONN)) { return true; } else { return false; } 
    } 

    ### Check connection to MYSQL 
    public function checkConnection() { 
     global $cn; if(mysql_connect()) { return true; } else { return false; } 
    } 

    ### Check connection to database 
    public function checkDB() { 
     global $db; if(mysql_select_db()) { return true; } else { return false; } 
    } 

index.php

$admin = new admin(); 

# Check the connect file exists 
if($admin->checkConnector() === true) { 

    # Check connection to MYSQL server 
    if($admin->checkConnection() === true) { 

     ### Check selection of DB 
     if($admin->checkDB() === true) { 

      print 'Selection of database is fine.'; 

     } else { 

      print 'Selection of database is not working.'; 

     } 

    } else { 

     print '<p>I\'m sorry, could not connect to MYSQL.</p>'; 

    }; 

} else { 

    print '<p>I\'m sorry the connection file does not exist. Please install accordingly.</p>'; 

} 
+0

КСТАТИ: 'если (Foo()) {возвращает истину; } else {return false; } '... Пожалуйста, сократите это до нормального' return foo(); '. – deceze

+0

http://php.net/manual/en/function.mysql-select-db.php ожидает строку (имя базы данных) в качестве первого параметра – Crisp

+0

Я не понимаю отрицательные моменты этого вопроса. Итак, почему существует переполнение стека? – HPM

ответ

5

Для SELECTDB, Вы должны предоставить свое название

mysql_select_db(); // wrong, which database to select? 

Correct является

mysql_select_db("MyDatabaseName"); 

Ссылка: mysql_select_db

+0

Я изменил свой класс.admin на: if (mysql_select_db (NAME)) {return true; } else {return false; } ИМЯ - это имя определяемого db. Еще не радость. –

+0

Но это не так в коде, который вы опубликовали. Там вы не указываете название базы данных. Остается ли ошибка после обновления? проверьте, верно ли ваше постоянное значение внутри функции. –

+0

Я изменил функцию класса, чтобы использовать NAME в переменной connect. Я не добавил его, потому что работает метод проверки соединения. Метод теперь читает: if (mysql_select_db (NAME)) {return true; } else {return false; } Но до сих пор нет радости. –

Смежные вопросы