![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 29 Pomógł: 0 Dołączył: 16.12.2004 Ostrzeżenie: (0%) ![]() ![]() |
Mam na polibudzie zajecia z php i sql ale nie wiele tego wiec postanowilem sam sie doksztalcic. Zrobilem juz faq teraz robie bloga. Niusy do bloga laduje do tabeli blog1 a komentarze do blogkomen. Chce to wyswietlac tak ze nius a do niego ponizej komentarze i nastepny nius z komentarzami (jak wszedzie).
I dziala, ale powiedziano mi zeby robic to w ten sposob:
Tak wyglada kod ktory sam zrobilem:
Czy robie to dobrze? Czy mozna zrobic lepiej ? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 23 Pomógł: 0 Dołączył: 7.06.2004 Ostrzeżenie: (0%) ![]() ![]() |
Jest dobrze, czyli źle. Dobrze jest wtedy kiedy masz 2 blogi i 5 komentarzy. Źle gdy blogów będzie 5000 a komentarzy 100000, wtedy komputer klęknie a użytkownik zaśnie.
Co zrobić? Podzielic to na 2 skrypty. W pierwszym przeglądasz tylko blogi, po 20-30 na jednej stronie, z możliwością odwołania się do siebie po to by pokazać następną lub poprzednią porcję (w SELECT użyj klauzuli LIMIT z parametrem przekazywanym z wywołującego formularza). Drugi skrypt uruchamiasz po kliknięciu odnośnika wygenerowanego w pierwszym, poda on komentarze do wskazanego bloga (najlepiej w nowym oknie target=_blank). Jeśli przewidujesz że będzie tego dużo, to porcjonowanie także by się przydało. BTW, 'leftjoin' zalatuje mi Accessem, czy się mylę? (IMG:http://forum.php.pl/style_emoticons/default/cool.gif) |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 38 Pomógł: 0 Dołączył: 22.11.2003 Skąd: Sucha Beskidzka Ostrzeżenie: (0%) ![]() ![]() |
Cytat(oldek @ 2004-12-18 22:55:38) BTW, 'leftjoin' zalatuje mi Accessem, czy się mylę? (IMG:http://forum.php.pl/style_emoticons/default/cool.gif) Mylisz sie, LEFT JOIN jest standardem SQLa, a MySQL jest optymalizowany pod wykonywanie zlaczen (LEFT JOIN ROGHT JOIN, etc). Poza tym podzial na strony jest wskazany |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 29 Pomógł: 0 Dołączył: 16.12.2004 Ostrzeżenie: (0%) ![]() ![]() |
Czy pole w tabeli komentarze ktore okresla do ktorego nisua bloga odnosi sie komentarz powinno miec jakies okreslone wlasciwosci?
Czy wystarczy ze bedzie poprostu INTEGER np. (doktoregoniusa INT) (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) Nie wiem tez jak poprawnie sprawdzac czy pole jest puste czy nie (np. pole mail). Wartosc domyslna jest ustawiona. |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 38 Pomógł: 0 Dołączył: 22.11.2003 Skąd: Sucha Beskidzka Ostrzeżenie: (0%) ![]() ![]() |
Klucze powinny miec taka sama wielkosc, wiec jesli w tabeli blog masz bolg_id int(3) to w tabeli komentarzy powinienies tez miec blog_id int(3). Zlaczenia na takich samych wielkosciach pola sa szybsze (dlatego dla kluczy varchar warto ustawic zero-fill, aby dopelniac wartos w polu zerami - choc obsluga tego jest meczaca)
Sparwdzaj wartosc domyslna |
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 19:32 |