[ alfa-pro @ 06.09.2010. 11:01 ] @
Zdravo svima. Imam par pitanja za iskusnije php programere

Radim simple galeriju koja sadrzi dve tabele u MySQL-u.

Tabele su:

Albums : id, name, imagesBG, description, date
Images : albumID, filename, title, date

Galerija treba da bude najosnovnija primer: Napravi album, Uplouduj slike u odredjeni album, prikazi slike, prikazi albume

Ja sam uradi sve samo jos jedno sto me je nateralo da pitam vas je to kako da kada neko klikne na album ELITESECURITY prikaze sve slike koje pripadaju albumu ELITESECURITY..???

Ja sam pokusavao da izlistam naredbom SELECT i While petljom ali samo slike. Izlistam i albume ali kako da kada ih linkujem i kojim linkom da ih linkujem da izlista odredjene slike.

Pokusao sam da spojim tabele i uspelo mi je da prikazem imena slike koje pripadaju odredjenom albumu
Code:
$query = "SELECT album.id, album.name, album.image FROM  album,images
                          WHERE album.id= '2' and images.albumid = album.id ";


JOIN ne razumem bas najbolje pa sam zato spajao.

Vljda me razumete u cemu je problem.

Kako da spojim te tabele za ovu svrhu i kako da linkujem da kada se klikne na neki album izlista odredjene slike.

Sve svam uradio samo jos to mi je ostalo mozgam i googlam ali ne ide u glavu...

Hvala vam unapred...

[ Goran Rakić @ 06.09.2010. 11:34 ] @

Nauči SQL ako to koristiš za pristup bazi podataka, pitanje nema veze sa PHP-om. Evo ovde: http://lmgtfy.com/?q=Database+JOIN+SQL

Ako ti ne trebaju podaci iz tabele Albums, može podupitom. Ako ti trebaju i description, date može sa dva upita - prvo album, pa onda slike. JOIN ovde nije pogodan.
Code (sql):
SELECT * FROM images WHERE albumID=(SELECT id FROM album WHERE name="ELITESECURITY")


Razmisli i šta ako je ime albuma "Letovanje 2010 #!$!JKSF", i pazi da ne spojiš unos korisnika u upit bez mysqli_real_escape_string().
[ alfa-pro @ 07.09.2010. 02:07 ] @
sredio sam na ovakav nacin i radi
Code:
    if( empty($cid) && empty($pid) )
    {
        $number_of_categories_in_row = 4;

        $result = mysql_query( "SELECT c.category_id,c.category_name,COUNT(photo_id)
                        FROM gallery_category as c
                        LEFT JOIN gallery_photos as p ON p.photo_category = c.category_id
                        GROUP BY c.category_id" );
        while( $row = mysql_fetch_array( $result ) )
        {
            $result_array[] = "<a href='viewgallery.php?cid=".$row[0]."'>".$row[1]."</a> "."(".$row[2].")";
        }
        mysql_free_result( $result );    

        $result_final = "<tr>\n";

        foreach($result_array as $category_link)
        {
            if($counter == $number_of_categories_in_row)
            {    
                $counter = 1;
                $result_final .= "\n</tr>\n<tr>\n";
            }
            else
            $counter++;

            $result_final .= "\t<td>".$category_link."</td>\n";
        }

        if($counter)
        {
            if($number_of_categories_in_row-$counter)
            $result_final .= "\t<td colspan='".($number_of_categories_in_row-$counter)."'>&nbsp;</td>\n";

            $result_final .= "</tr>";
        }
    }