System newsów - selekcja POMOCY !

Tematy, które tyczą się webmasterstwa, a nie pasują do konkretnych działów.
Devilish666
Posty: 2
Rejestracja: pn mar 21, 2005 3:54 am

System newsów - selekcja POMOCY !

Post autor: Devilish666 »

Witam, na wstępie chciałem przeprosić, jeśli umieściłem temat w złym dziale, ale nie wiedziałem gdzie mam go wrzucić 8)

Do rzeczy:
Potrzebuję zrobić tak, żeby newsy wrzucane na stronę były selektywowane przez usera, a tak bardziej po ludzku:
Chodzi mi o to, żeby każdy użytkownik mógł sobie wybrać jakie newsy będą mu się wyświetlać (np. przy pomocy guzika na stronie, tudzież wyboru opcji przy rejestracji), dokładniej chodzi o to, żeby oddzielić newsy muzyczne od tych filmowych, jeśli kogoś interesuje film, to zaznacza sobie, że chce widzieć tylko newsy o filmach i na odwrót - domyslnie wyświetlały by się wszystkie newsy - da się to jakoś zrobić ?


Błagam o pomoc, bardzo mi jest to potrzebne, a nie mam pojęcia jak to ugryźć.

Pozdrawiam!
Stig
Administrator
Posty: 938
Rejestracja: pn paź 04, 2004 10:52 am

Re: System newsów - selekcja POMOCY !

Post autor: Stig »

Da się to zrobić, prawie wszystko się da :) . Szkoda, że nie napisałeś w jakim języku masz skrypt (PHP, ASP itp.), ale podejrzewam, że PHP. Nie napisałeś też z jakiej bazy korzystasz (MySQL, PostgreSQL, Oracle, mSQL itp.), a może działasz na SQLite, albo na plikach. W związku z czym mój opis będzie dość ogólny.

Zakładając, że używasz bazy danych SQL. Wystarczy, że do tabeli z news'ami dorzucisz kolumnę np. 'dziedzina', która będzie przechowywała dane z jakiej dziedziny jest news. Możesz wpisywać tam konkretne wartości np. 'muzyka', 'film', albo stworzyć ralecję z tabelą, w której przetrzymywane będą te wartości (to drugie rozwiązanie jest oczywiście lepsze). Teraz część druga skryptu, gdy chcesz, żeby:
a) news'y z danej dziedziny pojawiały się po kliknięciu na link (takie rozwiązanie jest chociażby na http://www.autoklub.pl) - wtedy wystarczy, że do linku dorzucisz jakąś zmienną np. 'dziedzina' o odpowiednich wartościach. Do zapytania pobierającego dane z bazy (SELECT) dorzucisz opcję warunkową (WHERE) z warunkiem np. dziedzina='$_GET['dziedzina']', czyli np.
[sql]select * from news where dziedzina='$_GET['dziedzina']'[/sql]
b) news'y z danej dziedziny pojawiałyby się ze względu na dane użytkownika - trochę więcej roboty: do tabeli z użytkownikami dorzucasz kolumnę 'dziedzina' (i dalej analogicznie jak z tabelą z news'ami). Następnie do przekazania danych z bazy będziesz musiał zastosować zapytanie z dwiema tabelami. Wyglądałoby to mniejwięcej tak (w przykładzie z tabeli 'news' pobierane są wartości 'tytul' i 'tresc'):
[sql]select news.tytul, news.tresc from news, users where news.dziedzina=users.dziedzina[/sql]Oczywiście niezbędny byłby warunek identyfikujący konkretnego usera.

To na tyle, opisałem to w wielkim skrócie, ale mam nadzieję, że choć trochę Ci to rozjaśniłem...

PS. Post raczej do działu "Technologie WWW - cz. 2"...
ODPOWIEDZ