[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Как организовать подключения в БД
tony733
Всем доброго времени суток. Имею не много опыта в web-программировании, столкнулся с с такой проблемой.
Реализуемая система много и часто работает с БД(MySQL). В первом скрипте, на который натыкается пользователь, отрываю соединение с базой данных. Но при редиректе на другие сценарии оно теряется. Можно ли как-то открыть одно соединение с БД и "протаскивать" его по всем скриптам во время существования сессии текущего пользователя? Или я зря заморачиваюсь и это нормальная практика - на каждый скрипт открытие нового соединения:

mysql_connect(.....)...
mysql_query(...)...

header(....) /*редирект на другой скрипт*/

mysql_connect(.....)...
mysql_query(...)...

2. Некоторые мысли по этому поводу.
Организовано у меня все, вообще говоря, так. Есть скрипты, соответсвующие странице, на которой стоит текущий пользователь. Есть куча классов, которые реализуют функционал для этих страниц. И запросы к бд, собственно, вызываются именно из классов. Может быть, запихнуть в конструктор каждого класса соединение с бд а в деструктор разрыв соединения?

Жду ваших советов, спасибо ответившим.



Спустя 5 минут, 37 секунд (23.02.2012 - 12:26) inpost написал(а):
Правильно - это на каждой странице открывать соединение заново.
Есть альтернатива pconnect, но я бы не советовал на настоящих сайтах им пользоваться.

Спустя 18 минут, 43 секунды (23.02.2012 - 12:44) tony733 написал(а):
Спс. ну и тогда небольшое уточнение. Как лучше - на каждой странице или в каждом классе? (в конструкторе соединять а в деструкторе разъединять)?

Спустя 1 минута, 41 секунда (23.02.2012 - 12:46) johniek_comp написал(а):
код подключения вынеси в отдельный файл config.php
а потом в каждом файле пиши первой строчкой
include 'config.php';

Спустя 10 минут, 28 секунд (23.02.2012 - 12:57) inpost написал(а):
tony733
Коннект в начале страницы, где начинаются обращения к БД. И закрывать после последнего обращения к БД.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.