PDA

Zobacz pełną wersję : Joomla i FireBird



marcellino
06-02-2007, 12:49
Witam

Dostałem propozycję stworzenia serwisu dla jednej firmy.
Obecną BD z jakiej korzysta ta firma to FireBird. Joomla oczywiście chodzi na SQL i tu zaczynają się schody i moje pytania.

1. Czy można napisać komponent do joomla który korzystałby z innej BD?

2. Jeśli tak to ...
Czy jest jakieś rozwiązanie kontrolujące upload plików
(średnia wielkość pliku 50MB), potrzebna funkcja paska postępu, nadpisywania plików, ewentualnie dociągania najlepiej w php lub java script. Na pewno odpada Aplet.

3. Jeśli można stworzyć komponent obsługujący inną BD,
to ideałem było by jednorazowe logowanie się użytkownika.

Które pliki mam wziąć pod lupę żeby logując się na stronie korzystać również i z komponentu obsługującego inna BD.?
Dla utrudnienia firma ma już BD klientów i ich hasła w FireBird
i tam będą dopisywane (powód - Program wewnętrzny działa na FireBir).

stone
06-02-2007, 20:47
Co do samego komponentu to może on korzystać z innego bazy danych, ale musisz w nim umieścić cały kod niezbędny to połączenia z bazą danych natomiast integracja użytkowników to już nie takie proste. Musiałbyś w jakiś sposób zintegrować przekazywanie danych pomiędzy bazami. Zacznij od pliku includes/database.php

Rybik
07-02-2007, 02:20
ja tam zawsze lubie sobie upraszczać życie :) przeciez MySQL jest darmowy i zainstalowanie go na serwerze przez firme bedzie mniejszym klopotem niz:
- przerobienie calkowicie klasy database Joomla
- uzeranie sie z dodatkami joomla ktore nie korzystaja z tej klasy i maja na sztywno wklepane polecenia sql

Na uwage zasluguje fakt, ze gdyby sprawa byla banalna, Joomla mialaby takie rzeczy w standardzie.
Dwa, to ze istnienie kilku srodowisk bazodanowych na serwerze to zaden problem tym bardziej, ze MySQL bedzie tylko pod Joomla.
Trzy: pliki i tak beda fizycznie na serwerze a nie binarnie w DB wiec wszelkie aplikacje zewnetrzne wzgledem Joomla beda mialy do nich dostep, niezaleznie od wlasnej platformy DB

Komponenty plikowni Joomla umozliwiaja nadpisywanie wlasnych plikow przez zalogowanego usera i da sie do nich dopisac FTP uploadera, np na podstawie:
http://php-manual.skryptoteka.pl/ref.ftp.html

nexus246
07-02-2007, 11:15
Ad. 1
Nie komponent a przeróbka database.php, w sumie to zerknij sobie na różnice mysql/firebird, myślę że przeróbka nie będzie specjalnie trudna.

Ad. 2
Ajax?

Ad. 3
I znowu - to nie jest komponent, tylko plik z kodem obsługującym BD.

Jeśli chodzi o autentykację usera z innej struktury niż tabelka joomla to trzeba wprowadzić drobne zmiany w joomla.php - do zrobienia.

Wszystkie powyższe wymagają znajomości w miarę dobrej PHP i sposobu działania joomli.

marcellino
07-02-2007, 15:54
Dzięki za sugestie "nexus" ... zabieram się do analizy.

A co do "rybki" trochę nie zrozumieliśmy się.
Ja oczywiście myślałem o dwóch BD.

Program jaki ta firma posiada organizuje pracę w firmie
i każda operacja jaka jest wykonywana na pliku (według zlecenia)
ma swoje odzwierciedlenie w BD, co oznacza w skrócie
śledzenie poszczególnych etapów prac.

Chęć identyfikacji - unifikacji userów Joomli
i programu wewnętrznego wynika z chęci uproszczenia frontendu
dla usera - po co dwa razy się logować.

Nie mam zamiaru przerabiać joomli na inną BD.

Rozwiązanie jakie wpadło mi teraz do głowy to zgranie ID userów w obu bazach.
krok 2. wklepać funkcję przed logowaniem która sprawdza najpierw BD FireBird i jeśli jest taki user i posiada takie samo ID w BD MySQL to go zalogować. A wywołując komponent zamówień przekazywać sami ID.
Jeśli będą dane rozbieżne to zalogować się nie da.

kor 3. zakładanie konta .... i tutaj chyba coś podobnego do punktu 2.

jimski
13-03-2007, 08:33
Witam,
pomimo iż jestem nowy się wtrącę - niestety Rybik nie masz zupełnie racji co do MySQL - jest darmowy ale TYLKO do użytku prywatnego - jeśli chodzi o użytek korporacyjny (a takim właśnie jest używanie bazy danych w jakiejkolwiek firmie) to koszt licencji oscyluje około 500$
być może wersja 1.5 joomli będzie obsługiwała FB - można spróbować na wersji beta :)

Graffi
21-05-2007, 18:05
ja tam nie chcę filozofować, ale mojej wiedzy jak aplikacja korzystająca z MySQLa jest GPL to korzystanie z MySQLa jest zawsze za free (chyba ze ktoś chce kupowac specjalnie to spoko... :) )

własnie, może ku woli ścisłości ktoś rozwieje moje spojrzenie na sprawę - ale argumentami a nie "mi się wydaje..."