:: Не фоксом единым
PHP - подключение к БД
Sawradym

Сообщений: 2244
Откуда: Винница
Дата регистрации: 15.05.2007
Экспериментирую с web-интерфейсом к оракловской БД, потому возник чисто мировоззренческий вопрос.
В фоксе в начале программы создаешь единственный шаред коннекшн и используешь его везде.
Ожидалось что и здесь должно быть как-то похоже, ну т.е. одна сессия - одно соединение.
Но не тут то было. Экспериментировал и так и сяк, результат отрицательный.

Неужели на каждой страничке нужно дергать oci_connect()? Боюсь что это задрочит оракловый сервер до полусмерти.
Возможно есть какой-то не ведомый мне способ, или может существует какая-то более другая технология специально для
этих целей, или не париться, потому что в PHP так и задумано изначально?
Ratings: 0 negative/0 positive
Re: PHP - подключение к БД
Taran

Сообщений: 13624
Откуда: Красноярск
Дата регистрации: 16.01.2008
Страница отдалась - сессия закончилась, начинай сначала.
Ни разу не видел у хостеров оракл.
Ну если только свой сервант.

++
Не только php.
На net также.



Исправлено 1 раз(а). Последнее : Taran, 21.03.21 16:21
Ratings: 0 negative/0 positive
Re: PHP - подключение к БД
Sawradym

Сообщений: 2244
Откуда: Винница
Дата регистрации: 15.05.2007
Taran
Страница отдалась - сессия закончилась, начинай сначала.

Может мы о разных сессиях говорим? На профильном форуме я тоже понимания не нахожу, скорее всего я как-то не правильно формулирую свой вопрос.
В моем представлении сессия началась, когда ввел валидные логин и пароль и закончилась после нажатия logout, либо после закрытия браузера.
Ну еще сессия може "прокиснуть" от бездействия в течении определенного времени. Прочитал вот это www.php.net. Вроде все сходится, но сомнения остаются.

А может апач сам разруливает эту ситуацию? Ну, в смысле отдав страницу апач не сразу закрывает соединение с БД, а держит какое-то время, и если в течение этого времени следующая страничка с теми же реквизитами сессии опять коннектится к БД , то получает то же соединение. Смущает то, что все это время нужно хранить реальные логин и пароль. Как-то это все не логично по моему.

Taran
Ни разу не видел у хостеров оракл.
Ну если только свой сервант.

Оракловые сервера свои и web-сервер тоже сам устанавливал, так как oci8 не нашел ни у одного хостера, пришлось делать самому. Оказалось все не так страшно, короче, справился с помощью гугла.



Исправлено 1 раз(а). Последнее : Sawradym, 21.03.21 23:04
Ratings: 0 negative/0 positive
Re: PHP - подключение к БД
Taran

Сообщений: 13624
Откуда: Красноярск
Дата регистрации: 16.01.2008
Ну ссылку то на сессию надо где-то хранить. А скипт загрузки одной страницы закончился и все, ты вышел из программы.
Как собственно и на фоксе, если работать через com-сервер (multi thead).

Хранить логин/пароль не надо.
Авторизовался, получил Куку и запомнил. При загрузке следующей страницы будет использована она.
Ratings: 0 negative/0 positive
Re: PHP - подключение к БД
Igor Korolyov

Сообщений: 34580
Дата регистрации: 28.05.2002
В веб-приложениях обычно работают с пулом соединений, пулом управляет инфраструктура (+ свои настройки, типа сколько живых соединений держать, сколько времени ждать прежде чем закрывать неактивные и т.п.) При этом обычно НЕ работают с разными логинами/паролями к СУБД.
Про ПХП и оракловскую библиотеку oci ничего не скажу - не в курсе. Для дотнетовского бэка пул соединений работает.

Терминологически сессия это именно группа запросов от авторизации пользователя до его выхода из системы. Одиночный запрос - ну это и есть запрос. Сессия в общем то штука необязательная. Запрос может быть как запросом страницы (html), так и запросом набора данных (xhr) сделанным скриптом на странице.
Для spa приложений вместо классической сессии часто применяют токены авторизации посылаемые в каждом xhr запросе - просто потому что собственно http запрос для таких приложений может быть вообще всего один, да и тот может обслужиться из кэша браузера, и никак не затронуть веб-сервер


------------------
WBR, Igor
Ratings: 0 negative/0 positive
Re: PHP - подключение к БД
Sawradym

Сообщений: 2244
Откуда: Винница
Дата регистрации: 15.05.2007
Наконец то сообразил взглянуть на ситуацию со стороны оракла и увидел что при каждом запуске php скрипта, БЕЗ использования механизма сессий, отрабатывает и logon и logoff на оракловом сервере. А вот если сделать session_start(), то logon и logoff уже не ходят парами. Это обнадеживает.
Ratings: 0 negative/0 positive
Re: PHP - подключение к БД
Vedmak
Автор

Сообщений: 5967
Откуда: CiTY
Дата регистрации: 30.10.2003
посмотри коннект на БД с точки зрения PHP-сервера который исполняет скрипты получаемые от web-сервера который клиентские броузеры раздергивают своими хотелками. )


------------------
Говорить стоит лишь для тех, кто слушает.




Исправлено 1 раз(а). Последнее : Vedmak, 16.04.21 20:31
Ratings: 0 negative/0 positive
Re: PHP - подключение к БД
Sawradym

Сообщений: 2244
Откуда: Винница
Дата регистрации: 15.05.2007
Я как-то ПХП и ВЕБ-сервер рассматриваю как единое целое и намек твой для меня не понятен. Разверни плиз что ты имел ввиду.
Склоняюсь к тому, что это будет SPA приложение. С фреймворком пока не определился, потому любые советы приветствуются.
На данный момент мои эксперименты немного сумбурные. Покрутил DataTable с ajax-ом. Понравилось, так что азарт пока присутствует.
Ratings: 0 negative/0 positive
Re: PHP - подключение к БД
ВладимирС

Сообщений: 1693
Дата регистрации: 03.11.2005
Я в PHP не силен, но интернет сразу дает инфу:
Работа с соединениями OCI8 и Connection Pooling
Может пригодится.
Ratings: 0 negative/0 positive
Re: PHP - подключение к БД
Sawradym

Сообщений: 2244
Откуда: Винница
Дата регистрации: 15.05.2007
Спасибо. Именно эту чтраничку зачитал до дыр.
С подключением, вроде бы, уже разобрался. Уже шагаю дальше.
Хотя нет, остался один вопросик. В фоксе, в connectionstring есть возилжность указать Application Name. Как здесь это сделать, пока не придумал. Хотя в принципе это и не критично.
Ratings: 0 negative/0 positive
Re: PHP - подключение к БД
Зингер

Сообщений: 541
Откуда: Белгород
Дата регистрации: 02.12.2008
Sawradym
Спасибо. Именно эту чтраничку зачитал до дыр. С подключением, вроде бы, уже разобрался. Уже шагаю дальше.
Хотя нет, остался один вопросик. В фоксе, в connectionstring есть возилжность указать Application Name. Как здесь это сделать, пока не придумал. Хотя в принципе это и не критично.

Лучше всего создать класс и обращаться к нему. Вот мой пример pdo:
//Класс для соединения с БД (необходимо указать свойства private)
class connected_db_class {
public $pdo_object = null;
private $host_value = null;
private $db_name = null;
private $user = null;
private $pass = null;
function __construct() {
if (is_null($this->host_value) or is_null($this->db_name) or is_null($this->user) or is_null($this->pass)) {
$this->pdo_object = NULL;
} else {
$dsn = 'mysql:host=' . $this->host_value . ';dbname=' . $this->db_name;
try {
$this->pdo_object = new \PDO($dsn, $this->user, $this->pass);
} catch (\PDOException $exc) {
$this->pdo_object = NULL;
}
}
}
}
Ratings: 0 negative/0 positive
Re: PHP - подключение к БД
Vedmak
Автор

Сообщений: 5967
Откуда: CiTY
Дата регистрации: 30.10.2003
)


------------------
Говорить стоит лишь для тех, кто слушает.
Ratings: 0 negative/0 positive


Извините, только зарегистрированные пользователи могут оставлять сообщения в этом форуме.

On-line: 11 (Гостей: 11)

© 2000-2024 Fox Club 
Яндекс.Метрика