Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Разные запросы - Один вывод 
:(
    Опции темы
DioNiR
Дата 5.2.2009, 01:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 130
Регистрация: 30.12.2006

Репутация: нет
Всего: нет



Суть проблемы такова:
Есть 2 базы данных:
test1
test2
Строение таблиц у них устоены у каждой по своему.
Но в итоге я должен вывести один результат.

Не проблема сделать по отдельности. Допустим сделать класс запросов для таблицы test1 а так же test1.
Или те же функции.

Но проблема встаёт в другом, а если мне надо вывести сразу со всех баз информация? То получиться я буду инклудить один и тот же класс.
Что мы выдаст ошибку.

Вот меня интересует как сделать чтобы можно было это автоматизировать не зависимо сколько будет у меня баз(с разными по строению таблиц).

Думаю внятно обьяснил.
--------------------
Думали это конец? Ха, всё только начинается.
PM MAIL   Вверх
solenko
Дата 5.2.2009, 08:03 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1473
Регистрация: 15.1.2006
Где: Украина

Репутация: 34
Всего: 67



Цитата(DioNiR @  5.2.2009,  00:37 Найти цитируемый пост)
Думаю внятно обьяснил.

нет

Цитата(DioNiR @  5.2.2009,  00:37 Найти цитируемый пост)
Но проблема встаёт в другом, а если мне надо вывести сразу со всех баз информация? То получиться я буду инклудить один и тот же класс.Что мы выдаст ошибку.

С какой радости и какую ошибку?

Цитата(DioNiR @  5.2.2009,  00:37 Найти цитируемый пост)
Строение таблиц у них устоены у каждой по своему.Но в итоге я должен вывести один результат.

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


--------------------
Ла-ла-ла-ла
Заметьте, нет официального подтверждения, что это не просто четыре слога.
PM MAIL WWW ICQ Skype   Вверх
DioNiR
Дата 5.2.2009, 09:24 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 130
Регистрация: 30.12.2006

Репутация: нет
Всего: нет



Цитата(solenko @  5.2.2009,  06:03 Найти цитируемый пост)
С какой радости и какую ошибку?

Если в инклудоемом файле будут функции отсюда и ошибка.


Цитата(solenko @  5.2.2009,  06:03 Найти цитируемый пост)
слепливание ужа с ежом занятие недлагодарное. Пример конкретных таблиц и необходимого результата в студию.

Мне не нужны примеры запросов.

Мне нужна теоретическая реализация разных запросов под разые БД.
--------------------
Думали это конец? Ха, всё только начинается.
PM MAIL   Вверх
solenko
Дата 5.2.2009, 09:34 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1473
Регистрация: 15.1.2006
Где: Украина

Репутация: 34
Всего: 67



Цитата(DioNiR @  5.2.2009,  08:24 Найти цитируемый пост)
Мне нужна теоретическая реализация разных запросов под разые БД.

эти запросы ничем не отличаются от запросов к одной базе.
Цитата(DioNiR @  5.2.2009,  08:24 Найти цитируемый пост)
Если в инклудоемом файле будут функции отсюда и ошибка.

Пишите функции без ошибок ) Так какую все таки ошибку вы ожидаете?


--------------------
Ла-ла-ла-ла
Заметьте, нет официального подтверждения, что это не просто четыре слога.
PM MAIL WWW ICQ Skype   Вверх
lelik133
Дата 5.2.2009, 11:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Awaiting Authorisation
Сообщений: 517
Регистрация: 5.2.2003
Где: Москва

Репутация: 5
Всего: 14



видимо DioNiR имеет ввиду что включив один и тот же класс дважды получит ошибку.
интересно а как у тебя устроен этот класс? почему не сделать два разных класса.
или что мешает сделать методы с разными именами для разных баз
base1query1()
base1query2()
base1query3()

base2query1()
base2query2()
base2query3()

или если методы все таки одни и те же, тогда они должны принимать параметр базы
query1(dbname)
тогда собственно тоже нет проблемы...

в общем  DioNiR  ничего толком не объяснил все сумбурно, так это чистая телепатия
PM ICQ   Вверх
DioNiR
Дата 5.2.2009, 21:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 130
Регистрация: 30.12.2006

Репутация: нет
Всего: нет



Цитата(lelik133 @ 5.2.2009,  09:23)
видимо DioNiR имеет ввиду что включив один и тот же класс дважды получит ошибку.
интересно а как у тебя устроен этот класс? почему не сделать два разных класса.
или что мешает сделать методы с разными именами для разных баз
base1query1()
base1query2()
base1query3()

base2query1()
base2query2()
base2query3()

или если методы все таки одни и те же, тогда они должны принимать параметр базы
query1(dbname)
тогда собственно тоже нет проблемы...

в общем  DioNiR  ничего толком не объяснил все сумбурно, так это чистая телепатия

Ты правельно понял. Но я хочу всё автоматизировать.

Можно сказать так. У каждого пака БД есть своё имя.
Поэтому мне надо сделать так чтобы было достаточно заинклудить файл и он уже работал. Не меняя ядро.

если сделать как ты написал:
Код
base1query1()
base1query2()
base1query3()

base2query1()
base2query2()

то получиться что данные статичны.

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

Я знаю лиш название сборки, и какой запрос нужен.
А сколько их это уже динамичные данные.
--------------------
Думали это конец? Ха, всё только начинается.
PM MAIL   Вверх
solenko
Дата 5.2.2009, 22:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1473
Регистрация: 15.1.2006
Где: Украина

Репутация: 34
Всего: 67



DioNiR, паттерн Registry вам в руки )
привер:

Код

class DB {
  private static $instances = array();
  private function __construct($db_name) {
    $instances[$db_name] = new MySQLConnection($db_name);
  }
  public static getInstance($db_name) {
    if (!array_key_exists($db_name, self::$instances)) {
       self::$instances[$db_name] = new DB($db_name);
    }
    return self::$instances[$db_name];
  }
}




--------------------
Ла-ла-ла-ла
Заметьте, нет официального подтверждения, что это не просто четыре слога.
PM MAIL WWW ICQ Skype   Вверх
Sentox
Дата 5.2.2009, 22:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


как то так
**


Профиль
Группа: Участник
Сообщений: 392
Регистрация: 27.1.2009
Где: Зимбабве

Репутация: 7
Всего: 7



В худшем случае для этого существует наследование и перезагрузка методов.

PM MAIL   Вверх
DioNiR
Дата 5.2.2009, 23:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 130
Регистрация: 30.12.2006

Репутация: нет
Всего: нет



Цитата(Sentox @  5.2.2009,  20:40 Найти цитируемый пост)
В худшем случае для этого существует наследование и перезагрузка методов.

Тут по подробней?
--------------------
Думали это конец? Ха, всё только начинается.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0490 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.