Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Lista i "podlista"

[es] :: MySQL :: Lista i "podlista"

[ Pregleda: 2299 | Odgovora: 9 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

zlatko
Zlatko Mićić
Užice

Član broj: 907
Poruke: 100
79.101.213.*

Sajt: www.ue.co.rs


Profil

icon Lista i "podlista"18.11.2009. u 12:06 - pre 175 meseci
Treba mi mala pomoc

Imam dve mysql tabele
tabela content koja izmedju ostalih ima redove id i title
i tabela files koma ima redove filename i content

Hocu u php-u da napravim listu title-ova iz content tabele, a da se ispod svakog title-a izlistavaju filename-ovi iz files tabele ako im je isti content broj sa id brojem title-a
Kako to da uradim?
SlaveNewWorld
 
Odgovor na temu

Predrag Supurovic
Pedja YT9TP
Užice

Član broj: 157129
Poruke: 6279

Sajt: pedja.supurovic.net


+1570 Profil

icon Re: Lista i "podlista"18.11.2009. u 12:57 - pre 175 meseci
Najbolje je da nadjes neku knjigu o bazama podataka za pocetnike. Ovo je banalan problem.


[Ovu poruku je menjao Gojko Vujovic dana 18.11.2009. u 22:15 GMT+1]
 
Odgovor na temu

stankons
Stanko Milošev
ise Gmbh, Deutschland
Bonn

Član broj: 99408
Poruke: 231
*.trinet.si.

ICQ: 147767352
Sajt: www.milosev.com


Profil

icon Re: Lista i "podlista"18.11.2009. u 14:37 - pre 175 meseci
To se zove master - detail veza.

Mater:

Code:

select * from content


Detail:

Code:

select * from files where content=:id


Gde je :id parametar koji preko PHP - a prosleđuješ iz tabele content.

Ili

Code:

select * 
from content 
left join files on content.id=files.content


Ovim poslednjim upitom dobijaš sve zapise iz tabele content, i zapise iz tabele files, pod uslovom koji si naveo, gde će zapisi iz tabele content da se ponavljaju onoliko puta koliko ima zapisa u tabeli files.

Što se tiče prikaza, to je pitanje za PHP...
 
Odgovor na temu

zlatko
Zlatko Mićić
Užice

Član broj: 907
Poruke: 100
79.101.213.*

Sajt: www.ue.co.rs


Profil

icon Re: Lista i "podlista"18.11.2009. u 14:38 - pre 175 meseci
Hvala Stanko

pokushao sam da spojim tabele sa LEFT JOIN ali kao rezultat dobijam
title1 - filename1
title1 - filename2
title1 - filename3
title2 - filename4
title2 - filename5
...

meni treba
title1
- filename1
- filename2
- filename3
title2
- filename4
- filename5


SlaveNewWorld
 
Odgovor na temu

Milos911
Serbia

Član broj: 219127
Poruke: 1230
*.telenor.co.yu.



+303 Profil

icon Re: Lista i "podlista"18.11.2009. u 16:40 - pre 175 meseci
Iz uzica si kao i ja pa moram da ti pomognem :):

Code:


$query1 = mysql_query("SELECT * FROM prva tabela");
while ($nesto1 = mysql_fetch_array($query1))
      {
       $id=$nesto1[0];
       $ime=$nesto1[2];
       echo $ime;
       
       $query2 = mysql_query("SELECT * FROM druga tabela WHERE id = '$id'");
       while ($nesto2 = mysql_fetch_array($query2))
               {
               echo $nesto[1];
               };
      };


Evo. Ovo je verovatno sporiji nacin od ovog sa left join ali je laksi za shvatanje. Imena varijabli su za 10 ali potrudi se i promeniu ona koja tebi odgovaraju. I to je to.

[Ovu poruku je menjao Gojko Vujovic dana 18.11.2009. u 22:16 GMT+1]
 
Odgovor na temu

Tudfa
Jovicevic Vladimir

Član broj: 152699
Poruke: 384
*.dynamic.sbb.rs.



+3 Profil

icon Re: Lista i "podlista"18.11.2009. u 17:29 - pre 175 meseci
Citat:
zlatko: Hvala Stanko

pokushao sam da spojim tabele sa LEFT JOIN ali kao rezultat dobijam
title1 - filename1
title1 - filename2
title1 - filename3
title2 - filename4
title2 - filename5

Ovakav rezultat i treba da ti vrati taj JOIN...

@Milos911
Nije bas najbolja ideja da se rade svi ti SELECT upiti pored zivog JOIN-a (sta da mora da uradi 10000 upita ?), pa bi zato bila bolja ova logika:

- Izvrsis jedan upit sa tim LEFT JOIN-om koji ti je Stanko predlozio i dobijes ovo gore sto sam citirao i onda:

Code:

$arr_results = array();//ovo ce biti multidimenzionalni niz za cuvanje rezultata

while ($row = mysql_fetch_array($result, MYSQL_ASSOC))
{
    $arr_results[$row['title']][]=$row['filename'];
//elementi ovog niza su drugi nizovi. 
//kljucevi tih drugih nizova ce biti imena title-ova, a vrednosti unutar nizova ce biti stringovi koji ce predstavljati filename-ove
}

//i samo uradis ispis
foreach($arr_results as $title=>$filenames)
{
    echo $title.'<br>';
    
    foreach($filenames as $filename)
    {
        echo '-'.$filename.'<br>';
    }    
}


Inace, ovo je vise za PHP forum, al' ajd.

[Ovu poruku je menjao Tudfa dana 18.11.2009. u 18:40 GMT+1]
 
Odgovor na temu

zlatko
Zlatko Mićić
Užice

Član broj: 907
Poruke: 100
79.101.213.*

Sajt: www.ue.co.rs


Profil

icon Re: Lista i "podlista"18.11.2009. u 18:05 - pre 175 meseci
Hvala puno obojici

Odgovara mi ovaj Miloshev predlog poshto nema mnogo upita. Svakako cu probati i taj tvoj.

Hvala josh jednom.
SlaveNewWorld
 
Odgovor na temu

Milos911
Serbia

Član broj: 219127
Poruke: 1230
*.telenor.rs.



+303 Profil

icon Re: Lista i "podlista"19.11.2009. u 02:54 - pre 175 meseci
@tudfa pa da, rekoh da je onaj nacin sporiji, ali je mnogo laksi za shvatanje :) Ako pise neku malu skripticu razlika se nece primecivati, ali ako kao sto ti kazes bude imao gomilu upita ovaj nacin ne dolazi u obzir. Jer em je spor, em jede resurse.

@zlatko ako imas mnogo upita bolje ti je da uradis ono sto tudfa predlaze. Ja sam onaj primer napisao cisto da vidis kako bi mogao da uradis, jer onaj prvi primer nisi dobro razumeo. Znaci ja znam da je ovo moje lakse, ali nije bolje...
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.31.24.217.adsl2.beograd.com.

Sajt: mysql.rs


+2377 Profil

icon Re: Lista i "podlista"24.11.2009. u 07:05 - pre 175 meseci
zlatko, nema veze da li ima "mnogo" ili "malo" upita ... (u stvari je pitanje o broju slogova koji ce napraviti vise ili manje upita) .. treba da naucis kako se radi pravilno, a to je u ovom slucaju sa join (kako je Tudfa napisao) + ti je covek pokazao kako to da uradis koristeci php-ove mogucnosti da indexira niz stringom...
 
Odgovor na temu

zlatko
Zlatko Mićić
Užice

Član broj: 907
Poruke: 100
*.adslplus.ch.

Sajt: www.ue.co.rs


Profil

icon Re: Lista i "podlista"12.04.2010. u 16:58 - pre 170 meseci
Opet mi treba pomoć oko ovoga. :)

U tabelu "files" sam dodao red "date". Šta da izmenim na funkciji koju je Tudfa dao da bi mi rezultat bio:

title1
- filename1 - date1
- filename2 - date2
- filename3 - date3
title2
- filename4 - date4
- filename5 - date5
SlaveNewWorld
 
Odgovor na temu

[es] :: MySQL :: Lista i "podlista"

[ Pregleda: 2299 | Odgovora: 9 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.