Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][MYSQL]
-krispak-
post
Post #1





Goście







Witam

mam w bazie trzy tabele ktore sa ze soba powiazane

Tabela NEWS
id
tekstnewsa


Tabela KATEGORIANEWSA
idnewsa
idkategorii


Tabela KATEGORIA
id
nazwa

Mam w zwiazku z tym pytanie jak powinno wygladac zapytanie aby wyswietlalo mi nazwy kategorii a obok tego wyswietlalo wynik zliczajacy ile newsow nalezy do danej kategorii??
z gory dziekuje za pomoc
pozdrawiam
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
v1t4n
post
Post #2





Grupa: Zarejestrowani
Postów: 111
Pomógł: 16
Dołączył: 19.02.2005
Skąd: Dębica

Ostrzeżenie: (0%)
-----


Panowie! Uzywajcie formatowania BBCode! przeciez to nieczytelne jest!

Z MySQL jestem cienias jednak to takich rzeczy czesto robie kilka zapytan i wykorzystuje moja funkcje do tabeli relacyjnych:
  1. <?php
  2. function relation_id($table, $col, $id){
  3. $sa3="SELECT `".$col."` FROM `".PREFIX.$table."` WHERE `id` = ".$id." LIMIT 0,1";
  4. $sa4=mysql_query($sa3);
  5. while($row=mysql_fetch_array($sa4)) {
  6. return $row[0];
  7. }
  8. }
  9. ?>

Odwolanie jest bardzo proste:
  • $table - nazwa tabeli w jakiej szukamy
  • $col - nazwa kolumny z jakiej szukamy danych
  • $id - nr id w bazie

Zalozmy ze szukamy osoby w bazie w tabeli klienci gdzie mamy 3 kolumny: id (index), imie, nazwisko.
Chcąc wyciagnac imie osoby o id 69 wklepujemy w php:
  1. <?php
  2. relation_id('klienci', 'imie', 69);
  3. ?>


Uwaga
  • Funkcja zwraca wartosc - zeby wypluc wynik trzeba ja wyprintowac
  • W zapytaniu do SQL jest wpisany PREFIX - jezeli nie kozystasz z prefixu mozesz to wywalic, ale nie musisz. Przy wylaczonej obsludze raportowania bledow nic nie wyskoczy. Jezeli naromiast kozystasz z prefixu zadefiniuj go jako stala.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 14.10.2025 - 10:18