Avatar
kom72
Člen
Avatar
kom72:

Ahoj, vypisuji z DB fotografie takto:

}
$colname_kategorie_vypis = "-1";
if (isset($_GET['kategorie_id'])) {
  $colname_kategorie_vypis = $_GET['kategorie_id'];
}

mysql_select_db($database_pripojeni_MySQL, $pripojeni_MySQL);
$query_kategorie_vypis = sprintf("SELECT * FROM kategorie WHERE kategorie_id = %s", GetSQLValueString($colname_kategorie_vypis, "int"));
$kategorie_vypis = mysql_query($query_kategorie_vypis, $pripojeni_MySQL) or die(mysql_error());
$row_kategorie_vypis = mysql_fetch_assoc($kategorie_vypis);
$totalRows_kategorie_vypis = mysql_num_rows($kategorie_vypis);

if($colname_kategorie_vypis == "3") {

        $where = "";

} else {

        $where = " WHERE kategorie_id = " . GetSQLValueString($colname_kategorie_vypis, "int");

}

$query_kategorie_fotky = "SELECT * FROM fotografie" . $where . " ORDER BY datum_vlozeni DESC";
$kategorie_fotky = mysql_query($query_kategorie_fotky, $pripojeni_MySQL) or die('fotky' . mysql_error());
$row_kategorie_fotky = mysql_fetch_assoc($kategorie_fotky);
$totalRows_kategorie_fotky = mysql_num_rows($kategorie_fotky);
?>

html:

<img class="kategorie_vypis_fotky stin" src="fotky/<?php echo $row_kategorie_fotky['kategorie']; ?>/<?php echo $row_kategorie_fotky['fotka']; ?>_nahled.jpg" alt="">

živá ukázka:
http://www.kom72.cz/index.php?…

V DB mám dve tabulky: fotografie a kategorie. ID jednotlivych kategorií v tabulce kategorie = sloupci kategorie_id v tabulce fotografie, ktery urcuje, kde se fotka zobrazi. K tomu je jeste v teto tabulce sloupec kategorie, ktery urcuje, v ktere slozce je fotografie ulozena.
Potreboval bych mit moznost, fotografii priradit vice kategorií v kterych bude zobrazena.

Zrejme bych zvladnul toto:
zrusim ulozeni fotek ve slozkach a vsechny budou v jedne slozce dohromady. V DB, fotce priradim jeste dalsi treba 3 sloupce: kategorie_id2, kategorie_id3 atd. a tam zapisu v kterych kategoriích muze byt fotka jeste zobrazena.

Samozrejme to musi jit nejak elegantneji. Nasmeruje mne nekdo, jak na to? Jen upozornuji, ze PHP moc nerozumim. I ty zakladni prikazy mi trvaji dny, nez je jakz takz pochopim...

 
Odpovědět 12. března 12:15
Avatar
mayo505
Redaktor
Avatar
Odpovídá na kom72
mayo505:

Je to vzťah many-to-many a to sa dá vyriešiť treťou (pivotnou) tabuľkou, ktorá bude mať stĺpce iba kategoria_id a fotografia_id a tým ich pospája dokopy.

 
Nahoru Odpovědět  +1 12. března 12:51
Avatar
kom72
Člen
Avatar
kom72:

už se tu tím probírám. jak to ale pak vše vypíšu ,třeba v mém konkretnim pripade? Neni nekde nejaky odkaz v cestine, kde by se to probiralo?

 
Nahoru Odpovědět 12. března 14:24
Avatar
Odpovídá na kom72
Michal Žůrek (misaz):

zde v kategorii o databázích.

Nahoru Odpovědět 12. března 15:35
Nesnáším {}, proto se jim vyhýbám.
Avatar
kom72
Člen
Avatar
kom72:

pokud myslis tohle:
http://www.itnetwork.cz/…-a-vazba-m-n
tak vidim, ze je to premierovy clanek...

 
Nahoru Odpovědět 12. března 16:13
Avatar
Tonda Kozák
Člen
Avatar
Odpovídá na kom72
Tonda Kozák:

http://www.linuxsoft.cz/article.php?… + zbytek seriálu. Sice starší, ale ono se toho v SQL toho zásadního tak moc nezměnilo.

 
Nahoru Odpovědět 12. března 17:56
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 6 zpráv z 6.