![]() |
![]() ![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 13 Pomógł: 5 Dołączył: 4.08.2005 Ostrzeżenie: (0%) ![]() ![]() |
Czy istnieje mozliwosc przechowywania Tablic w Bazie danych?
Powód edycji: Przeniosłem na Przedszkole /~strife/
|
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 1 387 Pomógł: 273 Dołączył: 18.02.2008 Ostrzeżenie: (0%) ![]() ![]() |
Tak. Najprościej - przepuścić przez serialize() i zapisać jako tekst. Po odebraniu przepuścić przez unserialize() uzyskując na powrót tablicę
![]() http://pl.php.net/manual/pl/function.serialize.php http://pl.php.net/manual/pl/function.unserialize.php -------------------- XMPP: l0ud@chrome.pl
|
|
|
![]()
Post
#3
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
to nie ma nic wspolnego z programowaniem obiektowym...
tak, serializujesz tablice i zapisujesz do bazy -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#4
|
|
Grupa: Przyjaciele php.pl Postów: 7 494 Pomógł: 302 Dołączył: 31.03.2004 Ostrzeżenie: (0%) ![]() ![]() |
Masz ma myśli włożenie tablicy do jednego pola? Tak, jest taka możliwość.
Możesz taką tablicę poddać serializacji do stringa i zapisać w polu bazy danych. serialize() a po odczytaniu deserialize() Ale odradzam to, postępowanie takie to czysta głupota. |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 13 Pomógł: 5 Dołączył: 4.08.2005 Ostrzeżenie: (0%) ![]() ![]() |
Dlaczego czysta głupota?
|
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 999 Pomógł: 30 Dołączył: 14.01.2007 Skąd: wiesz ? Ostrzeżenie: (0%) ![]() ![]() |
Z tego samego powodu dla którego pisze się kilka klas obsługujących
użytkownika grupy użytkowników i ich uprawnienia a nie wali się wszystko do jednej. Anty-wzorce można też odnieść do projektowania baz danych. |
|
|
![]()
Post
#7
|
|
Grupa: Przyjaciele php.pl Postów: 7 494 Pomógł: 302 Dołączył: 31.03.2004 Ostrzeżenie: (0%) ![]() ![]() |
Dlaczego czysta głupota? Ponieważ w ten sposób pozbywasz się 90% możliwości bazy danych.Przeanalizuj taką sytuację: masz tabelę Products, która zawiera pole tags, gdzie zapisujesz wszystkie tagi w zserializowanej tablicy. Masz wtedy w tym polu coś takiego: Cytat a:2:{i:0;s:5:"pliki";i:1;s:8:"nowości";} Wyszukaj teraz proszę szybko i wygodnie wszystkie produkty, posiadające tag nowości. To bez sensu. W bazach danych w jedno pole zapisuje się jedną wartość. Jeśi chcesz więcej tworzysz relacje. |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 13 Pomógł: 5 Dołączył: 4.08.2005 Ostrzeżenie: (0%) ![]() ![]() |
ale tutaj to wybieram chyba mniejsze zło - bo chce napisac skrypt który pozwoli na stronie dynamicznie tworzyc tabelki - wybiera sie ile ma miec pol, ile wierszy... no i pomyślałem zeby przechowywać to z bazie przy pomocy tablic... chyba ze macie inna propozycje
Ten post edytował grabos 26.06.2008, 11:42:03 |
|
|
![]()
Post
#9
|
|
Grupa: Przyjaciele php.pl Postów: 7 494 Pomógł: 302 Dołączył: 31.03.2004 Ostrzeżenie: (0%) ![]() ![]() |
Napisz więcej o swoim pomyśle bo chyba idziesz na około.
Dynamiczne rzeczy również zapisuje się tak jak powonno a nie jak nie powinno :-) |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 13 Pomógł: 5 Dołączył: 4.08.2005 Ostrzeżenie: (0%) ![]() ![]() |
no wiec tak - w panelu Administracji chce zamieścić skrypt, który do danej podstrony z tekstem będzie dołączał tabelki - np z wynikami meczy... ale to moze być np jeszcze jakis grafik rozkładu zajeć... wiec nie wiadomo ile dokładnie bedzie ona miała kolumn, i ile wierszy... skrypt ma tworzyc Tablice - której kazde pole bedzie odpowiadało kolejno za kazde pole, które później będę mógł swobodnie edytować
|
|
|
![]()
Post
#11
|
|
![]() Grupa: Zarejestrowani Postów: 999 Pomógł: 30 Dołączył: 14.01.2007 Skąd: wiesz ? Ostrzeżenie: (0%) ![]() ![]() |
Grałeś kiedyś w statki ?
Przechowuj w bazie ilość wierszy i kolumn. W drugiej tabeli zawartość każdego pola identyfikując je przez row, col i po sprawie. Będzie to o wiele lepszy pomysł bo rozwojowy i przyjemniejszy ( nie mówię że łatwiejszy ) w implementacji, ale na pewno łatwiejszy w modyfikacji. Ten post edytował orglee 26.06.2008, 11:54:17 |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 13 Pomógł: 5 Dołączył: 4.08.2005 Ostrzeżenie: (0%) ![]() ![]() |
no o takim sposobie tez pomyslałem... - no i chyba tak zorobie
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 00:41 |