Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MYSQL]Jak zaprojektować taką bazę
Forum PHP.pl > Forum > Przedszkole
scotii1
Witam!.
Mam problem z doborem odpowiedniej struktury bazy ... generalnie projekt dotyczy książki telefonicznej i nie wiem jak do tego stworzyć bazę.

w bazie wiadomo będą numery telefonów imiona nazwiska itp ale problem tkwi w tym że:

- w bazie ma być klika numerów telefonów dla jednego użytkownika
- każdy posiadacz kata będzie mógł dodawać do "swojej" książki własne osoby jak i osoby będące już w głównej książce.
- będzie mógł ustawiać wyświetlanie tylko kilku osób, np 14 z pośród 100 - zarówno z ogólnego zbioru jak i ze swojego.

za bardzo nie wiem jak się zabrać, jakby ta struktura miała dokładnie wyglądać, na początku miałem bazę z

id | imie | nazwisko później w drugiej bazie było: id | id(to z db1) |tel1 |tel2 |tel3 |tel4| tel5 ... ale jak to teraz rozwiązać żeby można było personalizować wyświetlane kontakty
myślałem żeby stworzyć bazę w stylu id_zalogowanego | wybrane_numery(tutaj wpisywane np po przecinku...)

chodzi mi też o wydajność takiej bazy bo może ona mieć np 10000 osób i co wtedy ...
Darti
10k osob to mała baza ...

Ja bym zrobił tak:

tabela abonent (idabon,imie, nazwisko) - lokalni abonenci
tabela numer_tel(idnum, numer) - lokalne numery telefonow
tabela abonent_do_numer(idabon,idnum) - numery lokalne w posiadaniu lokalnych abonentow
tabela ksiazka_osobista(idko, idabon, imie_kontaktu, nazwisko_kontaktu,num_tel_kontaktu, num_lokalny, idnum) - ksiazka osobista lokalnego abonenta, (num_lokalny-pole enum 0,1 , idnum - jak lokalny to id numeru lokalnego)
tabela wpisy_wyswietlane(idabon, idko) - które wpisy z książki wyświetlac

A ksiazke globalna tworzysz na podstawie pierwszych 3 tabel
scotii1
hmm ... ok, ponieważ całość ma być sprzężona z telefonia VoIP - tj. połączenia wykonane które nie są w książce maja dodawać się również do tymczasowej książki.
założenia całości są mniej więcej takie:
- globalna książka telefoniczna gdzie mogą być numery które generalnie nie znajdują się w książkach osobistych.
- z tych książek będą generowane konkretne pliki XML pobierane przez telefony.
tak sobie myślę że baza by mogła wyglądać w ten sposób (sugerując się poradą Dartiego):


db_abonenci
#########################
# id_abonenta # imie # nazwisko #
#########################
# 1 # Jan # nowak #
#########################
# 2 # Anna # kowalski #
#########################
# 3 # Ewa # jolalna #
#########################

db_numery
######################
# id_num # telefon # typ #
######################
# 1 # 999988 # stacj #
######################
# 2 # 1111111 # stacj #
######################
# 3 # 222222 # kom #
######################
# 4 # 555 # - #
######################


db_ksiazka
########################
# id # id_abonenta # id_num #
########################
# 1 # 1 # 1 #
########################
# 2 # 2 # 3 #
########################
# 3 # 1 # 2 #
########################
# 4 # - # 4 #
########################



pozycja numer 4 oznacza ze została wygenerowana automatycznie podczas dzwonienia na dany numer, osoba która się zaloguje na swoje konto będzie miała możliwość edycji tej wartości i nadania jej imienia nazwiska typu itd ...
Darti
Na czym robicie tego VoIP'a ? Na Asterisku, Cisco, innym ? Wiekszosc systemow ma juz zaimplementowane rozwiazania - ewentualnie wystarczy troche zmodyfikowac
scotii1
na Asterisku + FreePBX jako nakładka .. ale nie znalazłem do niego żadnego modułu książki telefonicznej. ;/

książka ma być w części recordings i numery które są w książce mają być porównywane z częścią call Monitor
i jeżeli tam jest jakiś nieznany numer to ma być on dopisany do książki jako taki no_name do edycji
Darti
http://voip-manager.net/asterisk-phonebook.php - dedykowana ksiazka
http://www.edugeek.net/forums/netbooks-pda...ook-script.html - kilka skryptow

i w ogóle do Asteriska to Panie ... cała masa softu (more important - za free) smile.gif
http://www.google.pl/search?hl=pl&q=as...mp;aq=f&oq=

p.s.
A tą stronę to znasz ? : http://www.voip-info.org/
scotii1
Cytat
to niestety jest płatne

Cytat
tutaj czekam od dwóch dni ja aktywacje konta .. dzisiaj z rana zarejestrowałem się ponownie...

no i w sumie nic wiecej sam nie znalazlem jeszcze tylko coś odnośnie modułu customerdb ktory moglbym wykorzystac do tej ksiazki... jeszcze będe się rozgłądał.

mimo wszystko dziękuje ;]


// poszedł punkcik smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.