Форум программистов, компьютерный форум, киберфорум
PHP: базы данных
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 17.01.2017
Сообщений: 182
1

Проверка соединения с базой в ООП

31.01.2022, 20:13. Показов 662. Ответов 9
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте.
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<?php
    
    
    class Classes {
        public $database;
        
        public function db_connect(){   
            $database_info = require "database_info.php";
            $this -> database = new mysqli($database_info['host'], $database_info['login'], $database_info['password'], $database_info['dbname']);
            $this -> database -> set_charset("utf8");   
        }
        
        public function db_close(){ 
            $this -> database -> close();   
        }   
        
    }
    
    
    
    $Classes = new Classes;
    
    $Classes -> db_connect();
    
    if($Classes -> database)echo "true";
    
    $Classes -> db_close();
    
    if($Classes -> database)echo "true";
    
?>
Почему
PHP
1
if($Classes -> database)echo "true";
после разрыва соединения с базой
PHP
1
$Classes -> db_close();
возвращает true
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
31.01.2022, 20:13
Ответы с готовыми решениями:

Проверка соединения с базой
$link = ibase_Connect(&quot;ИП:Путь&quot;, &quot;логин&quot;, &quot;пас&quot;) if ($link !=0 ) print(&quot;OK - connected!&quot;);...

проверка соединения с базой mysql
при загрузке программы нужно проверить подключение к mysql и если первый сервер не отвечает то...

Соединения с базой скбд
вот когда происходит конект у мене выбивает ошибку может кто та помощь убрать ее

Ошибка соединения с базой
Пытаюсь соединиться с БД MySQL находящейся на сервере, но вызывает ошибку! Типа неправильно введен...

9
Эксперт PHP
3851 / 3196 / 1343
Регистрация: 01.08.2012
Сообщений: 10,820
31.01.2022, 20:18 2
Цитата Сообщение от Ser8191 Посмотреть сообщение
возвращает true
А почему не должно? Закрытие соединения не означает, что свойство database должно превратиться в false/null.
0
0 / 0 / 0
Регистрация: 17.01.2017
Сообщений: 182
31.01.2022, 20:25  [ТС] 3
PHP
1
2
3
4
        public function db_close(){ 
            $this -> database -> close();   
$this -> database = false;
        }
Просто "обнулить" переменную?
0
Эксперт PHP
3851 / 3196 / 1343
Регистрация: 01.08.2012
Сообщений: 10,820
31.01.2022, 20:28 4
Ser8191, можно и обнулить, правда не понимаю, зачем.

И для обнуления лучше null подходит, чем false.
0
0 / 0 / 0
Регистрация: 17.01.2017
Сообщений: 182
31.01.2022, 20:50  [ТС] 5
Спасибо.

Добавлено через 21 минуту
можно и обнулить, правда не понимаю, зачем.
чтобы не выполнять другие функции, которые требуют бд, если нет соединения или закрыто соединение
0
0 / 0 / 0
Регистрация: 17.01.2017
Сообщений: 182
04.02.2022, 23:38  [ТС] 6
Ещё вопрос, нужно разрывать соединение с базой каждый раз после выполнения запроса?

Соединение
Запрос
Закрытие

Соединение
Запрос
.....
0
Эксперт PHP
3851 / 3196 / 1343
Регистрация: 01.08.2012
Сообщений: 10,820
05.02.2022, 01:51 7
Ser8191, нет, не нужно.
0
0 / 0 / 0
Регистрация: 17.01.2017
Сообщений: 182
05.02.2022, 14:23  [ТС] 8
А в какой момент его закрывать?
0
1261 / 959 / 225
Регистрация: 01.10.2018
Сообщений: 3,713
05.02.2022, 14:29 9
Цитата Сообщение от Ser8191 Посмотреть сообщение
А в какой момент его закрывать?
Включите логическое мышление

Некоторые вовсе самостоятельно не закрывают. Но я советую так делать только в случае использования постоянных соединений.
0
2432 / 2282 / 594
Регистрация: 27.05.2011
Сообщений: 7,801
09.02.2022, 17:05 10
Цитата Сообщение от Ser8191 Посмотреть сообщение
А в какой момент его закрывать?
Ну если у тебя воркер, где соедениние висит неделями. Можно его обрубать в моменты простоя.
0
09.02.2022, 17:05
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.02.2022, 17:05
Помогаю со студенческими работами здесь

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

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

Нет соединения с базой данных
Работаю с драйвером SQLITE. Есть главное окно MainWindow с которого вызывается Dialog. В этом...

Нет соединения с базой .ACCDB
Добрый день. Подключаю так: Пооставщик Provider=Microsoft.ACE.OLEDB.12.0 В источнике данных пишу...

Форма соединения с базой данных
я незнаю что делать напишите плз форуму сединения с базой данных и внесения в таблицу данных вот...

Кодировка соединения с базой данных
Всем добрый день! Соединение с базой идет следующей командой: $database_connection =...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru