Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: zbiór liczb w mysql
Forum PHP.pl > Forum > Bazy danych > MySQL
miccom
Witam.
Mam tabelę zaufani, i tabelę newsy.

  1. CREATE TABLE IF NOT EXISTS `zaufani` (
  2. `id_ufajacego` int(11) NOT NULL,
  3. `lista_zaufanych` varchar(300) COLLATE utf8_unicode_ci NOT NULL,
  4. KEY `id_ufajacego` (`id_ufajacego`,`lista_zaufanych`)
  5. ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
  6.  
  7. --
  8. -- Zrzut danych tabeli `zaufani`
  9. --
  10.  
  11. INSERT INTO `zaufani` (`id_ufajacego`, `lista_zaufanych`) VALUES
  12. (1, '1,97,5,32,90,98,20,0,118,22,114,23');


  1. CREATE TABLE IF NOT EXISTS `newsy` (
  2. `id` int(11) NOT NULL AUTO_INCREMENT,
  3. `date` datetime NOT NULL,
  4. `user` varchar(100) COLLATE utf8_unicode_ci NOT NULL,
  5. `msg` text COLLATE utf8_unicode_ci NOT NULL,
  6. `room` int(11) NOT NULL,
  7. `id_usera` int(11) NOT NULL,
  8. `nacja_autora` int(11) NOT NULL,
  9. PRIMARY KEY (`id`),
  10. KEY `user` (`user`,`id_usera`)
  11. ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=8 ;
  12.  
  13. --
  14. -- Zrzut danych tabeli `newsy`
  15. --
  16.  
  17. INSERT INTO `newsy` (`id`, `date`, `user`, `msg`, `room`, `id_usera`, `nacja_autora`) VALUES
  18. (89, '2012-09-27 17:32:56', 'ada', 'lecimy szwgier', 3, 10009, 2),
  19. (245, '2013-03-01 20:09:49', '1975', 'super, witaj mysza', 2, 31, 1),
  20. (11, '2012-09-26 09:47:25', 'bry1', 'Melduje się:)', 1, 10084, 2),
  21. (52, '2012-09-26 20:45:34', 'bry1', 'a co to za pokaz lotniczy-a mnie nie zaprosili', 3, 10084, 2),
  22. (53, '2012-09-26 20:47:28', 'bry', 'D-6 sie ma rozumieć', 3, 10084, 2),
  23. (80, '2012-09-27 16:15:56', 'bry', 'niech se siedzą, czują sie bezpieczniej,do czasu;)', 3, 10084, 2),
  24. (200, '2013-02-18 20:49:31', '123', 'witam', 3, 19, 2),
  25. (203, '2013-02-19 10:21:22', '123', 'fajnie że jesteś', 3, 19, 2)




Goście dodają sobie newsy, ale te newsy mogą oglądać tylko userzy, którzy są jako "zaufani" autora newsa.

Więc jeśli u autora newsa mój ID jest jako zaufany, to ja mogę przeglądać jego newsy.
Jak wyciągnąć z tabeli newsy, gdzie dla autorów newsów mój id jest jako zaufany?
Ma ktoś jakiś pomysł?
mmmmmmm
ZNOR-MA-LI-ZUJ
miccom
Cytat(mmmmmmm @ 6.08.2013, 20:47:19 ) *
ZNOR-MA-LI-ZUJ

dziękuję za pomoc.
Pomogłeś mi, chyba lepiej się nie dało ;/

Ma ktoś inne pomysły?
buliq
A pomyślałeś o tym żeby pierwsza tabela wyglądała inaczej?

Kod
CREATE TABLE IF NOT EXISTS `zaufani` (
  `id_ufajacego` int(11) NOT NULL,
  `id_zaufanego` int(11) COLLATE utf8_unicode_ci NOT NULL,
  KEY `id_ufajacego` (`id_ufajacego`,`id_zaufanego`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

--
-- Zrzut danych tabeli `zaufani`
--

INSERT INTO `zaufani` (`id_ufajacego`, `id_zaufanego`) VALUES
(1, '1'),
(1, '97'),
(1, '5'),
...
(1, '23');


Wtedy aby pobrać zaufanych wykonujesz zwykłego selecta
mmmmmmm
I to się nazywa normalizacja
miccom
Ech...uwsteczniłem mój kod...
Chcąc zminimalizować ilość zapytań do mysql chciałem listę zaufanych wrzucić do bazy danych jako tablica ;/
A kod o którym mówicie mam obecnie zaimplementowany.
Czasami nie warto udziwniać.
Dziękuję za pomoc, dodaję pomógłsmile.gif
Pozdrawiam.
miccom
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.